Vrystelling van Snuffleupagus 0.5.1, 'n module om kwesbaarhede in PHP-toepassings te blokkeer

Na 'n jaar van ontwikkeling gepubliseer projek vrystelling Snuffleupagus 0.5.1, wat 'n module vir die PHP7-tolk verskaf om die sekuriteit van die omgewing te verbeter en algemene foute te blokkeer wat lei tot kwesbaarhede in die gebruik van PHP-toepassings. Die module laat jou ook toe om te skep virtuele kolle om spesifieke probleme uit te skakel sonder om die bronkode van die kwesbare toepassing te verander, wat gerieflik is vir gebruik in massa-gasheerstelsels waar dit onmoontlik is om alle gebruikerstoepassings op datum te hou. Die oorhoofse koste van die module word op minimaal geskat. Die module is in C geskryf, is verbind in die vorm van 'n gedeelde biblioteek (“extension=snuffleupagus.so” in php.ini) en versprei deur gelisensieer onder LGPL 3.0.

Snuffleupagus verskaf 'n reëlstelsel wat jou toelaat om standaard sjablone te gebruik om sekuriteit te verbeter, of om jou eie reëls te skep om insetdata en funksieparameters te beheer. Byvoorbeeld, die reël “sp.disable_function.function(“system”).param(“command”).value_r(“[$|;&`\\n]”).drop();” laat jou toe om die gebruik van spesiale karakters in system() funksie argumente te beperk sonder om die toepassing te verander. Ingeboude metodes word verskaf om klasse van kwesbaarhede soos probleme, verwante met data serialisering, onveilig gebruik van die PHP-pos()-funksie, lekkasie van koekie-inhoud tydens XSS-aanvalle, probleme as gevolg van die laai van lêers met uitvoerbare kode (byvoorbeeld in die formaat phar), swak gehalte ewekansige getal generering en vervanging verkeerde XML-konstrukte.

PHP-sekuriteitverbeteringsmodusse verskaf deur Snuffleupagus:

  • Aktiveer outomaties "veilige" en "samesite" (CSRF-beskerming) vlae vir koekies, enkripsie Koekie;
  • Ingeboude stel reëls om spore van aanvalle en kompromie van toepassings te identifiseer;
  • Gedwonge globale aktivering van die "streng"(blokkeer byvoorbeeld 'n poging om 'n string te spesifiseer wanneer 'n heelgetalwaarde as 'n argument verwag word) en beskerming teen tipe manipulasie;
  • Verstek blokkering protokol omhulsels (byvoorbeeld, verbied "phar://") met hul eksplisiete witlys;
  • Verbod op die uitvoer van lêers wat skryfbaar is;
  • Swart en wit lyste vir eval;
  • Vereis om TLS-sertifikaatkontrolering te aktiveer tydens gebruik
    krul;
  • Voeg HMAC by geserialiseerde voorwerpe om te verseker dat deserialisering die data wat deur die oorspronklike toepassing gestoor is, herwin;
  • Versoek aantekenmodus;
  • Blokkering van laai van eksterne lêers in libxml via skakels in XML-dokumente;
  • Vermoë om eksterne hanteerders te koppel (upload_validation) om opgelaaide lêers na te gaan en te skandeer;

Onder veranderinge in die nuwe weergawe: Verbeterde ondersteuning vir PHP 7.4 en geïmplementeerde verenigbaarheid met die PHP 8-tak wat tans in ontwikkeling is. Die vermoë bygevoeg om gebeurtenisse via syslog aan te teken (die sp.log_media-riglyne word voorgestel vir insluiting, wat php- of syslog-waardes kan neem). Die verstek stel reëls is opgedateer om nuwe reëls vir onlangs geïdentifiseerde kwesbaarhede en aanvalstegnieke teen webtoepassings in te sluit. Verbeterde ondersteuning vir macOS en uitgebreide gebruik van die deurlopende integrasieplatform gebaseer op GitLab.

Bron: opennet.ru

Voeg 'n opmerking