Izdanje Snuffleupagus 0.5.1, modula za blokiranje ranjivosti u PHP aplikacijama

Nakon godinu dana razvoja objavljen izdanje projekta burmut 0.5.1, koji pruža modul za PHP7 interpreter za poboljšanje sigurnosti okruženja i blokiranje uobičajenih pogrešaka koje dovode do ranjivosti u pokretanju PHP aplikacija. Modul također omogućuje stvaranje virtualne zakrpe za uklanjanje specifičnih problema bez mijenjanja izvornog koda ranjive aplikacije, što je zgodno za korištenje u sustavima masovnog hostinga gdje je nemoguće sve korisničke aplikacije održavati ažurnima. Procjenjuje se da su režijski troškovi modula minimalni. Modul je napisan u C-u, povezan je u obliku zajedničke biblioteke ("extension=snuffleupagus.so" u php.ini) i distribuira licenciran pod LGPL 3.0.

Snuffleupagus pruža sustav pravila koji vam omogućuje korištenje standardnih predložaka za poboljšanje sigurnosti ili stvaranje vlastitih pravila za kontrolu ulaznih podataka i parametara funkcije. Na primjer, pravilo “sp.disable_function.function(“system”).param(“command”).value_r(“[$|;&`\\n]”).drop();” omogućuje vam da ograničite upotrebu posebnih znakova u argumentima funkcije system() bez mijenjanja aplikacije. Daju se ugrađene metode za blokiranje klasa ranjivosti kao što su problemi, povezane sa serijalizacijom podataka, nesiguran korištenje PHP mail() funkcije, curenje sadržaja kolačića tijekom XSS napada, problemi zbog učitavanja datoteka s izvršnim kodom (na primjer, u formatu phar), generiranje slučajnih brojeva loše kvalitete i zamjena netočne XML konstrukcije.

Načini unapređenja sigurnosti PHP-a koje pruža Snuffleupagus:

  • Automatski omogući zastavice "sigurno" i "samesite" (CSRF zaštita) za kolačiće, šifriranje Kolačić;
  • Ugrađen skup pravila za prepoznavanje tragova napada i ugrožavanja aplikacija;
  • Prisilna globalna aktivacija "strog" (na primjer, blokira pokušaj navođenja niza kada se očekuje cjelobrojna vrijednost kao argument) i zaštita od tipska manipulacija;
  • Zadano blokiranje omotači protokola (na primjer, zabrana "phar://") s njihovim izričitim popisom dopuštenih;
  • Zabrana izvršavanja datoteka u koje se može pisati;
  • Crne i bijele liste za ocjenjivanje;
  • Potrebno za omogućavanje provjere TLS certifikata prilikom korištenja
    kovrča;
  • Dodavanje HMAC serijaliziranim objektima kako bi se osiguralo da deserijalizacija dohvaća podatke koje je pohranila izvorna aplikacija;
  • Način zapisivanja zahtjeva;
  • Blokiranje učitavanja vanjskih datoteka u libxml putem poveznica u XML dokumentima;
  • Mogućnost povezivanja vanjskih rukovatelja (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 s ogrankom PHP 8 koji je trenutno u razvoju.Dodana je mogućnost bilježenja događaja putem syslog-a (predložena je direktiva sp.log_media za uključivanje, 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 temeljene na GitLabu.

Izvor: opennet.ru

Dodajte komentar