Vydanie Snuffleupagus 0.5.1, modulu na blokovanie zraniteľností v aplikáciách PHP

Po roku vývoja zverejnená vydanie projektu Snuffleupagus 0.5.1, ktorý poskytuje modul pre interpret PHP7 na zlepšenie bezpečnosti prostredia a blokovanie bežných chýb, ktoré vedú k zraniteľnostiam pri spúšťaní PHP aplikácií. Modul umožňuje aj tvorbu virtuálne záplaty na odstránenie špecifických problémov bez zmeny zdrojového kódu zraniteľnej aplikácie, čo je vhodné pre použitie v masových hostingových systémoch, kde nie je možné udržiavať všetky používateľské aplikácie aktuálne. Režijné náklady modulu sa odhadujú ako minimálne. Modul je napísaný v jazyku C, je pripojený vo forme zdieľanej knižnice („extension=snuffleupagus.so“ v php.ini) a distribuovaný licencované podľa LGPL 3.0.

Snuffleupagus poskytuje systém pravidiel, ktorý vám umožňuje používať štandardné šablóny na zlepšenie zabezpečenia alebo vytvárať vlastné pravidlá na riadenie vstupných údajov a parametrov funkcií. Napríklad pravidlo „sp.disable_function.function(“system”).param(“command”).value_r(“[$|;&`\\n]”).drop();” umožňuje obmedziť používanie špeciálnych znakov v argumentoch funkcie system() bez zmeny aplikácie. Poskytujú sa vstavané metódy na blokovanie tried zraniteľností, ako sú problémy, súvisiace so serializáciou dát, nebezpečné používanie funkcie PHP mail(), únik obsahu cookies počas XSS útokov, problémy spôsobené načítaním súborov so spustiteľným kódom (napríklad vo formáte phar), nekvalitné generovanie náhodných čísel a substitúcia nesprávne konštrukcie XML.

Režimy vylepšenia zabezpečenia PHP, ktoré poskytuje Snuffleupagus:

  • Automaticky povoliť príznaky „secure“ a „samesite“ (ochrana CSRF) pre súbory cookie, šifrovanie cookie;
  • Zabudovaný súbor pravidiel na identifikáciu stôp po útokoch a kompromitácii aplikácií;
  • Nútená globálna aktivácia „prísny" (napríklad blokuje pokus zadať reťazec pri očakávaní celočíselnej hodnoty ako argumentu) a ochranu proti manipulácia s typom;
  • Predvolené blokovanie obaly protokolov (napríklad zákaz "phar://") s ich explicitným pridaním na bielu listinu;
  • Zákaz spúšťania súborov, do ktorých je možné zapisovať;
  • Čiernobiele zoznamy pre hodnotenie;
  • Vyžaduje sa na povolenie kontroly certifikátu TLS pri používaní
    zvlnenie;
  • Pridanie HMAC do serializovaných objektov, aby sa zabezpečilo, že deserializácia získa údaje uložené v pôvodnej aplikácii;
  • Vyžiadať režim protokolovania;
  • Blokovanie načítania externých súborov v libxml prostredníctvom odkazov v dokumentoch XML;
  • Schopnosť pripojiť externé obslužné programy (upload_validation) na kontrolu a skenovanie nahraných súborov;

medzi zmeny v novom vydaní: Vylepšená podpora pre PHP 7.4 a implementovaná kompatibilita s momentálne vyvíjanou vetvou PHP 8. Pridaná možnosť logovania udalostí cez syslog (na zahrnutie je navrhnutá direktíva sp.log_media, ktorá môže nadobudnúť hodnoty php alebo syslog). Predvolená sada pravidiel bola aktualizovaná tak, aby zahŕňala nové pravidlá pre nedávno identifikované zraniteľnosti a techniky útoku na webové aplikácie. Vylepšená podpora pre macOS a rozšírené používanie kontinuálnej integračnej platformy založenej na GitLab.

Zdroj: opennet.ru

Pridať komentár