Jos haluan ohjelmoida oman web -palvelimen, niin mietitäänpä, mitä joku krakkeri voisi yrittää varastaakseen tietoja:
Olennaisin on ehkä tämä:
hyökkääjä yrittänee ensiksi jotain tämäntapaista:
http://www.minunpalvelin.fi/../../../../../../etc/passwd
Silloin, kun kyse EI ole hyökkäysyrityksestä, onko tämä laillinen pyyntö vai ei:
http://www.minunpalvelin.fi/images/../index.html
Eli onko syytä hylätä kaikki pyynnöt, joissa merkkijonon osana on "/../", vai onko tuon sisällyttäminen pyyntöön joissain tapauksissa mahdollista muusta syystä kuin että kyse on yrityksestä murtaa palvelimen tietoturva ?
Entä, jos tuo on hoidettu?
Voiko myös tämä merkkjono johtaa onnistuneeseen hyökkäykseen, jos sitä ei ole erikseen estetty:
http://www.minunpalvelin.fi/../etc/passwd
tuo . on www-url-encoded -koodauksella sama kuin "."
Entä onko muita tapoja, joilla hyökkääjä voisi yrittää murtautua johonkin sellaiseen hakemistoon, jota EI ole tarkoitettu julkiseksi?
esim:
http://www.minunpalvelin.fi/C|/windows/system32/secretfile.dat
Win95:ssa oli komentorivikomento TRUENAME.
Sen lähin vastine Windows API:ssa on GetFullPathName,
itseasiassa GetFullPathNameA ja GetFullPathNameW.
Valitettavasti tuo funktio ei huoli parametriksi suhteellista kotihakemistoa, vaan se käyttää suhteellisena kotihakemistona oletushakemistoa (GetCurrentDirectory ja SetCurrentDirectory).
Eli:
1) mitkä kaikki ovat sellaisia koodauksia, joilla voisi yrittää saada aikaiseksi saman kuin suoraan "/../" ?
2) onko muita vaarallisia merkkijonoja, miten esim "/.../" tai "/..../" ?
entä "/test../" - miten näihin pitäisi suhtautua?
Vai kannattaako hylätä kaikki "/..mitätahansa" -tyyppiset merkkijonot ?
Wikipediassa oli ohje:
muunna ensin vaikkapa "index.html" muotoon "C:\PUBLIC_HTML\index.html"
Varmista sitten, että muunnettu (ja josta on poistettu mikä tahansa "/../" -esiintymä) aina alkaa "C:\PUBLIC_HTML\".
Windowsissa tuo GetFullPathName olisi hyvä tapa muuntaa jono siten, että mikä tahansa "/../" -osa ratkaistaan auki, mutta huonona puolena on sen riippuvuus sen hetkisestä oletushakemistosta.
Toinen vaihtoehto olisi kirjoittaa tuo muunnin itse.
Mutta JOS sen kirjoittaa itse, ongelmana on se, että riittääkö varoa tuota "/../" vai onko muitakin vaarallisia merkkijonoja, jos niin mitä ?
Web -palvelimen tietoturva / directory climbing
Web_palvelimen_koodaus
2
119
Vastaukset
- Kooditin_
Yksityiset tiedostot sijoitetaan tietysti eri hakemistoon, jonne ei ole päästy julkisesta verkosta.
Jos olisi hakemistoja
/dir-1
/dir-2
/public
/dir-3
/etc
niistä vain /public olisi julkisesti käytettävissä. Julkinen osoite sille olis muotoa http://esimerkki.fi/ - Kooditon_
Onkos /public hakemiston alihakemistot yksityisiä vai vaatiiko kokonaan oman juurihakemiston? Eli käykö /public/yksityinen/ vai täytyykö hakemiston olla /dir-1/ ?
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nainen kokki autossa kammottavan kuoleman sähköauto-Teslan syttyessä tuleen.
https://www.is.fi/autot/art-2000011652873.html Näin vaarallisia sähköautopalot voivat olla.845157Persuja ei aluevaltuustoissa näy
Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.253480Päivän Riikka: Uudenkaupungin autotehdas hiljeni
Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j382828Riikka vie Suomen kohta ykköseksi työttömyyskisassa
Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin91972Kerro kaivattusi nimi tai nimikirjaimet
🌠 Tähdenlento! Kirjoittamalla kaivattusi nimen tai nimikirjaimet tähän, saattaa toiveesi toteutua.581820- 471586
Alkuvuodesta poistuu työttömyyskorvaus kaikilta joilla on säästössä rahaa
Tippuu korvaukselta iso määrä työttömiä.2631476- 941382
Tämmönen höpsö
Höpönassu mä olen. En mikään erikoinen…hölötän välillä ihan levottomia. Tykkäisit varmasti jos olisin siellä sun vieress441356Hiljaisuus
Tarkoittaa välinpitämättömyyttä, henkistä väkivaltaa ja kiusaamista. Olet valinnut hiljaisuuden.731078