Ang Snuffleupagus nga proyekto nag-develop ug PHP module para sa pagbabag sa mga kahuyangan

Sa mga utlanan sa proyekto snuffleupagus molambo usa ka module alang sa pagkonektar sa PHP7 interpreter, gidisenyo aron mapausbaw ang seguridad sa palibot ug babagan ang kasagarang mga sayop nga mosangpot sa mga kahuyang sa pagpadagan sa mga aplikasyon sa PHP. Gitugotan ka usab sa module nga maghimo mga virtual nga patch aron ayohon ang mga piho nga mga problema nga wala usba ang gigikanan nga code sa mahuyang nga aplikasyon, nga kombenyente alang sa paggamit sa mga sistema sa pag-host sa masa diin imposible nga ipadayon ang tanan nga mga aplikasyon sa tiggamit hangtod karon. Ang module gisulat sa C, konektado sa porma sa usa ka shared library (β€œextension=snuffleupagus.so” sa php.ini) ug giapod-apod sa lisensyado ubos sa LGPL 3.0.

Naghatag ang Snuffleupagus og sistema sa mga lagda nga nagtugot kanimo sa paggamit sa mga sumbanan nga templates aron mapauswag ang seguridad, o paghimo sa imong kaugalingon nga mga lagda aron makontrol ang data sa input ug mga parameter sa function. Pananglitan, ang lagda nga "sp.disable_function.function("system").param("command").value_r("[$|;&`\\n]").drop();" nagtugot kanimo nga limitahan ang paggamit sa mga espesyal nga karakter sa mga argumento sa function sa system() nga dili usbon ang aplikasyon. Sa samang paagi, makahimo ka virtual nga mga patch aron babagan ang nahibal-an nga mga kahuyangan.

Paghukom sa mga pagsulay nga gihimo sa mga developers, Snuffleupagus halos dili pagkunhod sa performance. Aron masiguro ang kaugalingon nga seguridad (posible nga mga kahuyangan sa layer sa seguridad mahimong magsilbing usa ka dugang nga vector alang sa mga pag-atake), ang proyekto naggamit sa bug-os nga pagsulay sa matag commit sa lain-laing mga distribusyon, naggamit sa static nga mga sistema sa pagtuki, ug ang code giporma ug gidokumento aron mapasimple ang pag-awdit.

Ang mga built-in nga pamaagi gihatag aron babagan ang mga klase sa mga kahuyangan sama sa mga isyu, may kalabutan uban ang data serialization, dili luwas paggamit sa PHP mail() function, leakage sa Cookie contents atol sa XSS attacks, mga problema tungod sa loading files nga adunay executable code (pananglitan, sa format phar), dili maayo nga kalidad nga random number generation ug pagpuli sayop nga XML constructs.

Gisuportahan ang mosunod nga mga mode aron mapalambo ang seguridad sa PHP:

  • Awtomatikong i-enable ang mga flag nga "secure" ug "samesite" (CSRF protection) para sa Cookies, encrypt Cookie;
  • Gitukod-sa hugpong sa mga lagda aron mahibal-an ang mga pagsubay sa mga pag-atake ug pagkompromiso sa mga aplikasyon;
  • Pinugos nga global nga pagpaaktibo sa "higpit" (pananglitan, gibabagan ang usa ka pagsulay sa pagtino sa usa ka hilo kung nagpaabut sa usa ka integer nga kantidad ingon usa ka argumento) ug proteksyon batok sa pagmaniobra sa tipo;
  • Default nga pag-block protocol wrapper (pananglitan, pagdili sa "phar://") uban sa ilang klaro nga whitelisting;
  • Pagdili sa pagpatuman sa mga file nga masulat;
  • Itom ug puti nga mga lista alang sa eval;
  • Gikinahanglan aron mahimo ang pagsusi sa sertipiko sa TLS kung gamiton
    kulot;

  • Pagdugang sa HMAC sa mga serialized nga mga butang aron masiguro nga makuha sa deserialization ang datos nga gitipigan sa orihinal nga aplikasyon;
  • Paghangyo sa logging mode;
  • Pag-ali sa pagkarga sa mga eksternal nga file sa libxml pinaagi sa mga link sa XML nga mga dokumento;
  • Abilidad sa pagkonektar sa mga eksternal nga tigdumala (upload_validation) aron masusi ug ma-scan ang gi-upload nga mga file;

Ang proyekto gimugna ug gigamit sa pagpanalipod sa mga tiggamit sa imprastraktura sa usa sa dako nga French hosting operators. Kini namatikdannga ang yano nga pagkonektar sa Snuffleupagus makapanalipod batok sa daghang mga peligro nga mga kahuyangan nga giila karong tuiga sa Drupal, WordPress ug phpBB. Ang mga kahuyangan sa Magento ug Horde mahimong ma-block pinaagi sa pagpagana sa mode
"sp.readonly_exec.enable()".

Source: opennet.ru

Idugang sa usa ka comment