Izdanje Snuffleupagus 0.5.1, modula za blokiranje ranjivosti u PHP aplikacijama

Nakon godinu dana razvoja objavljeno izdanje projekta Snuffleupagus 0.5.1, koji obezbeđuje modul za PHP7 interpreter za poboljšanje bezbednosti okruženja i blokiranje uobičajenih grešaka koje dovode do ranjivosti u pokretanju PHP aplikacija. Modul vam takođe omogućava da kreirate virtuelne zakrpe kako bi se eliminisali specifični problemi bez promjene izvornog koda ranjive aplikacije, što je zgodno za korištenje u masovnim hosting sistemima gdje je nemoguće održavati sve korisničke aplikacije ažurnim. Procjenjuje se da su režijski troškovi modula minimalni. Modul je napisan u C, povezan je u obliku zajedničke biblioteke (“extension=snuffleupagus.so” u php.ini) i distribuira licenciran prema LGPL 3.0.

Snuffleupagus pruža sistem pravila koji vam omogućava da koristite standardne šablone za poboljšanje sigurnosti ili kreirate vlastita pravila za kontrolu ulaznih podataka i parametara funkcija. Na primjer, pravilo "sp.disable_function.function("system").param("command").value_r("[$|;&`\\n]").drop();" omogućava vam da ograničite upotrebu specijalnih znakova u argumentima funkcije system() bez promjene aplikacije. Obezbeđene su ugrađene metode za blokiranje klasa ranjivosti kao što su problemi, povezane sa serijalizacijom podataka, nesigurno upotreba PHP mail() funkcije, curenje sadržaja kolačića tokom XSS napada, problemi zbog učitavanja datoteka sa izvršnim kodom (na primjer, u formatu phar), generiranje slučajnih brojeva lošeg kvaliteta i zamjena netačne XML konstrukcije.

PHP načini poboljšanja sigurnosti koje pruža Snuffleupagus:

  • Automatski omogući "sigurno" i "samesite" (CSRF zaštita) zastavice za kolačiće, šifriranje Cookie;
  • Ugrađeni skup pravila za identifikaciju tragova napada i kompromitovanja aplikacija;
  • Prisilno globalno aktiviranje "striktno" (na primjer, blokira pokušaj da se navede niz kada se očekuje cjelobrojna vrijednost kao argument) i zaštita od vrsta manipulacije;
  • Zadano blokiranje omoti protokola (na primjer, zabrana "phar://") sa njihovim eksplicitnim stavljanjem na bijelu listu;
  • Zabrana izvršavanja datoteka u koje se može pisati;
  • Crne i bijele liste za evaluaciju;
  • Potrebno za omogućavanje provjere TLS certifikata prilikom korištenja
    curl;
  • Dodavanje HMAC-a serijaliziranim objektima kako bi se osiguralo da deserijalizacija dohvaća podatke pohranjene u originalnoj aplikaciji;
  • Način evidentiranja upita;
  • Blokiranje učitavanja eksternih fajlova u libxml preko linkova u XML dokumentima;
  • Mogućnost povezivanja eksternih rukovaoca (upload_validation) za provjeru i skeniranje učitanih datoteka;

među promjene u novom izdanju: Poboljšana podrška za PHP 7.4 i implementirana kompatibilnost sa granom PHP 8 koja je trenutno u razvoju. Dodata mogućnost evidentiranja događaja putem syslog-a (za uključivanje je predložena direktiva sp.log_media, koja može uzeti php ili syslog vrijednosti). Zadani skup pravila je ažuriran kako bi uključio nova pravila za nedavno identificirane ranjivosti i tehnike napada na web aplikacije. Poboljšana podrška za macOS i proširena upotreba platforme za kontinuiranu integraciju zasnovanu na GitLabu.

izvor: opennet.ru

Dodajte komentar