Egy év fejlesztés után a projekt kiadása , amely egy PHP7 értelmező modulja, amely növeli a környezet biztonságát és blokkolja a tipikus hibákat, amelyek sebezhetőségek megjelenéséhez vezethetnek a futó PHP alkalmazásokban. A modul lehetővé teszi alkotását konkrét problémák megoldására az érintett alkalmazások forráskódjának módosítása nélkül, amely kényelmes a nagy tömegű tárhelyszolgáltatásokban, ahol lehetetlen fenntartani az összes felhasználói alkalmazást aktuális állapotban. A modul működésének költségei minimálisra becsülhetők. A modul C nyelven íródott, megosztott könyvtár formájában kapcsolódik ("extension=snuffleupagus.so" a php.ini fájlban) és LGPL 3.0 licenc alatt érhető el.
A Snuffleupagus szabályrendszert biztosít, amely lehetővé teszi mind a tipikus sablonok használatát a védelmi szint növelésére, mind saját szabályok létrehozását a bemeneti adatok és függvényparaméterek ellenőrzésére. Például a "sp.disable_function.function(\"system\").param(\"command\").value_r(\"[$|;&`\\n]\").drop();" szabály lehetővé teszi, hogy az alkalmazások módosítása nélkül korlátozzuk a speciális karakterek használatát a system() függvény argumentumaiban. Beépített módszerek állnak rendelkezésre az olyan sebezhetőségek blokkolására, mint adatok sorosítási problémái, mail() PHP-függvény használata, a Cookie-k tartalmának szivárgása XSS támadások során, problémák a fájlok végrehajtható kódtartalmának feltöltése során (például .phar formátumban), a véletlen számok nem megfelelő generálása és ), nem megfelelő XML konstrukciók behelyettesítése. Automatikus "secure" és "samesite" zászlók bekapcsolása (CSRF elleni védelem) a Cookie-khoz,
Cookie-k titkosítása;
- Beépített szabályok készlete támadások nyomainak és alkalmazások kompromittálásának észlelésére; " üzemmód bekapcsolása (pl. blokkolja a megjelenítő az argumentum várt egész szám értéke helyett láncot) és védelem a
- típusok manipulálása
- alapértelmezett blokkolásprotokollok burkolatai ;
- Fájlok végrehajtásának tilalma, amelyeket írásra elérhető; TLS tanúsítványok kötelező ellenőrzésének aktiválása a
- curl használata során;
- Чёрные и белые списки для eval;
- Включение обязательно проверки сертификатов TLS при использовании
curl; - HMAC hozzáadása a sorosított objektumokhoz a deszerializálás során az eredeti alkalmazás által tárolt adatok garantálására;
- Kérések naplózási módja;
- Külső fájlok betöltésének blokkolása libxml-ben XML-dokumentumokban található hivatkozások alapján;
- Lehetőség külső feldolgozók (upload_validation) csatlakoztatására a feltöltött fájlok ellenőrzésére és átvizsgálására;
A változtatások között Az új kiadásban: Javított PHP 7.4 támogatás és kompatibilitás a fejlesztés alatt álló PHP 8 ággal. Lehetővé vált az események syslog-on keresztüli naplózása (a bekapcsoláshoz javasolt sp.log_media direktíva, amely php vagy syslog értékeket fogadhat el). Frissítettük az alapértelmezett szabálykészletet, amely új szabályokat tartalmaz a nemrégiben felfedezett sebezhetőségek és a webalkalmazások ellen irányuló támadási technikák észlelésére. Javított macOS támogatás és kiterjesztett folyamatos integrációs platform alkalmazása GitLab alapú rendszerben.
Forrás: opennet.ru
