A Snuffleupagus 0.5.1 kiadása, egy modul a PHP alkalmazások sebezhetőségeinek blokkolására

Egy év fejlesztés után közzétett projekt kiadás Snuffleupagus 0.5.1, amely egy modult biztosít a PHP7 értelmezőhöz, amely javítja a környezet biztonságát és blokkolja a gyakori hibákat, amelyek sebezhetőséghez vezetnek a PHP alkalmazások futtatásakor. A modul lehetővé teszi a létrehozást is virtuális javítások speciális problémák kiküszöbölése a sérülékeny alkalmazás forráskódjának megváltoztatása nélkül, amely kényelmesen használható tömeges hosting rendszerekben, ahol lehetetlen minden felhasználói alkalmazást naprakészen tartani. A modul rezsiköltsége a becslések szerint minimális. A modul C nyelven íródott, megosztott könyvtár formájában csatlakozik ("extension=snuffleupagus.so" a php.ini-ben) és forgalmazza LGPL 3.0 licenccel.

A Snuffleupagus olyan szabályrendszert biztosít, amely lehetővé teszi szabványos sablonok használatát a biztonság javítása érdekében, vagy saját szabályok létrehozását a bemeneti adatok és a funkcióparaméterek vezérléséhez. Például az "sp.disable_function.function("rendszer").param("command").value_r("[$|;&`\\n]").drop();" lehetővé teszi, hogy korlátozza a speciális karakterek használatát a system() függvény argumentumaiban az alkalmazás megváltoztatása nélkül. Beépített módszerek állnak rendelkezésre a sebezhetőségi osztályok blokkolására, mint például a problémák, összefüggő adatsorosítással, nem biztonságos PHP mail() függvény használata, Cookie-tartalom kiszivárgása XSS-támadások során, problémák futtatható kóddal (például formátumban) phar), rossz minőségű véletlenszám generálás és helyettesítés helytelen XML konstrukciók.

A Snuffleupagus által biztosított PHP biztonsági fejlesztési módok:

  • Automatikusan engedélyezze a „biztonságos” és „samesite” (CSRF-védelem) jelzőket a cookie-k számára, Titkosítás Aprósütemény;
  • Beépített szabálykészlet a támadások nyomainak és az alkalmazások kompromittálásának azonosítására;
  • Kényszerített globális aktiválása a "szigorú" (például blokkolja a karakterlánc megadására irányuló kísérletet, amikor egész értéket vár argumentumként) és védelmet típusú manipuláció;
  • Alapértelmezés szerint blokkolva protokoll burkolók (például a "phar://" kitiltása) kifejezett engedélyezési listájukkal;
  • Írható fájlok végrehajtásának tilalma;
  • Fekete-fehér listák az eval számára;
  • Szükséges a TLS-tanúsítvány-ellenőrzés engedélyezéséhez használat közben
    becsavar;
  • HMAC hozzáadása a szerializált objektumokhoz annak biztosítására, hogy a deszerializálás lekérje az eredeti alkalmazás által tárolt adatokat;
  • Kérjen naplózási módot;
  • Külső fájlok betöltésének blokkolása a libxml-ben az XML dokumentumokban lévő hivatkozásokon keresztül;
  • Külső kezelők csatlakoztatásának képessége (upload_validation) a feltöltött fájlok ellenőrzéséhez és vizsgálatához;

Között változtatások az új kiadásban: Továbbfejlesztett támogatás a PHP 7.4-hez és megvalósított kompatibilitás a jelenleg fejlesztés alatt álló PHP 8 ággal. Hozzáadva az események syslogon keresztüli naplózásának lehetőségét (az sp.log_media direktíva szerepeltetése javasolt, amely php vagy syslog értékeket vehet fel). Az alapértelmezett szabálykészlet frissült, és új szabályokat tartalmaz a nemrég azonosított sebezhetőségekre és a webalkalmazások elleni támadási technikákra vonatkozóan. Továbbfejlesztett támogatás a macOS számára és a GitLab alapú folyamatos integrációs platform kiterjesztett használata.

Forrás: opennet.ru

Hozzászólás