Ko te kaupapa Snuffleupagus kei te whakawhanake i tetahi waahanga PHP hei aukati i nga whakaraeraetanga

Kei nga rohe o te kaupapa snuffleupagus ka whanake he kōwae mo te hono ki te kaiwhakamaori PHP7, i hangaia hei whakapai ake i te haumarutanga o te taiao me te aukati i nga hapa noa e arai ana ki nga whakaraeraetanga ki te whakahaere i nga tono PHP. Ka taea hoki e te kōwae te hanga i nga papanga mariko hei whakatika i nga raruraru motuhake me te kore e whakarereke i te waehere puna o te tono whakaraerae, he pai mo te whakamahi i roto i nga punaha manaaki papatipu kaore e taea te pupuri i nga tono kaiwhakamahi katoa ki te waa. Kua tuhia te kōwae ki te C, e hono ana ki te ahua o te whare pukapuka tiri (“extension=snuffleupagus.so” i php.ini) me tohaina e kua raihanatia i raro i te LGPL 3.0.

Ka whakaratohia e Snuffleupagus he punaha ture ka taea e koe te whakamahi i nga tauira paerewa hei whakapai ake i te haumarutanga, te hanga ranei i au ake ture hei whakahaere i nga raraunga whakauru me nga tawhā mahi. Hei tauira, ko te ture “sp.disable_function.function(“system”).param(“command”).value_r(“[$|;&`\\n]”).drop();” ka taea e koe te whakawhāiti i te whakamahinga o nga tohu motuhake i roto i nga tautohe mahi a te punaha() me te kore e whakarereke i te tono. Waihoki, ka taea e koe te hanga papaki mariko ki te aukati i nga whakaraeraetanga e mohiotia ana.

Ma te whakatau i nga whakamatautau i whakahaerehia e nga kaiwhakawhanake, ka iti te whakaiti a Snuffleupagus i nga mahi. Hei whakarite i tana ake haumarutanga (ka taea e nga whakaraeraetanga kei roto i te paparanga haumaru te mahi hei vector taapiri mo nga whakaeke), ka whakamahia e te kaupapa nga whakamatautau tino o ia mahi i roto i nga tohatoha rereke, ka whakamahi i nga punaha tātari pateko, ka whakahōputuhia, ka tuhia hoki te waehere hei whakamaarama i te arotakenga.

Ka whakaratohia nga tikanga whakauru ki te aukati i nga karaehe whakaraerae penei i nga take, pātahi me te raupapa raraunga, kore haumaru te whakamahi i te mahi PHP mēra(), te rerenga o nga ihirangi Pihikete i te wa e whakaekea ana te XSS, nga raru na te utaina o nga konae me te waehere ka taea te kawe (hei tauira, i te whakatakotoranga. phar), he iti te kounga o te whakaputa tau matapōkere me te whakakapinga he hanga XML.

Ka tautokohia nga momo e whai ake nei hei whakarei ake i te haumarutanga PHP:

  • Whakahohe aunoatia nga haki "haumaru" me te "paanga kotahi" (te tiaki CSRF) mo nga Pihikete, whakamunatanga Pihikete;
  • He huinga ture i roto hei tautuhi i nga tohu o nga whakaeke me te whakararu i nga tono;
  • Whakahohehia te ao o te "tino" (hei tauira, ka aukati i te ngana ki te tautuhi i tetahi aho ina e tatari ana he uara tauoti hei tohenga) me te whakamarumaru ki momo raweke;
  • Ārai taunoa takai kawa (hei tauira, te aukati i te "phar://") me o raatau rarangi ma;
  • Te aukati i te whakahaere i nga konae ka taea te tuhi;
  • Nga rarangi pango me te ma mo te eval;
  • E hiahiatia ana kia taea te tirotiro Tiwhikete TLS ina whakamahi ana
    korikori;

  • Te taapiri i te HMAC ki nga mea raupapa kia mohio ai ka tangohia e te deserialization nga raraunga kua rongoahia e te tono taketake;
  • Tono aratau takiuru;
  • Te aukati i te utaina o nga konae o waho ki te libxml ma nga hononga ki nga tuhinga XML;
  • Te kaha ki te hono i nga kaihautu o waho (upload_validation) ki te tirotiro me te matawai i nga konae kua tukuna;

I hangaia te kaupapa me te whakamahi hei tiaki i nga kaiwhakamahi i roto i te hanganga o tetahi o nga kaiwhakahaere manaaki French nui. Ka tuhiama te hono noa i a Snuffleupagus ka tiaki i te maha o nga whakaraeraetanga kino i kitea i tenei tau i roto i te Drupal, WordPress me te phpBB. Ko nga whakaraeraetanga o Magento me Horde ka taea te aukati ma te whakahohe i te aratau
"sp.readonly_exec.enable()".

Source: opennet.ru

Tāpiri i te kōrero