← Bumalik sa listahan

Ang PHP2SHell ay bumuga: CVS 9.2, ang araw bago ang pagbubukas, at ang dalawang butas ay nasa kodigo sa loob ng 10 taon.

itadol5j

Una, ang konklusyon ay:Ang PHP ay nakagawa ng hindi awtorisadong remote code para sa CVSS 9.2, numero CVE-2026-109618 at CVE-2026-109619, na may palayaw na PHP2Sshell. Noong Oktubre 20, ito ay ginawang publiko at noong Oktubre 21st sa 1400 UTC na mga patse ay inilabas, habang ang mga honey canister ng Amazon ay naitala noong Oktubre 17 — apat na araw bago ang pagbubukas.

Ang mas masahol pa riyan ay ang isa pang bagay: ang dalawang butas na ito ang unang nakarating sa PHP 5.4, na nangangahulugang...Sila'y nasa kodigo sa loob ng mahigit na isang dekada.Hindi ko alam. At noong 2024, nang matuklasan ng PHP core developer audit ang landas ng OOM, nagtipon ang pangkat upang talakayin kung paano ito aayusin.Hindi kami sumang - ayon at pagkatapos ay hindi namin inayos ito.Hindi ko alam. Ang dahilan ay sapagkat walang nag - akala na ito'y talagang magagamit.

Ang pariralang ito ngayon ay lalo nang kakatwa. Ang dahilan ng hindi paggawa nito ay hindi dahil sa ang butas ay walang halaga, kundi dahil sa ang kadena ay napakasalimuot upang higitan ang pisikal na kakayahan ng mga mananaliksik na tao. Pagkatapos ay dumating ang AI at isinulat ito.

PHP2shell Hole Pabalat: Impact ang Scope at ang Ostiya sa Paglalantad

Una, kunin ang salitang "pangkalahatang variety emergency reaction" na wala sa daan. Narito.

Ang paboritong salita ng nasabing partido ay "pandaigdigang alarma." Hindi ito isang kalabisan sa pagkakataong ito, subalit ito'y isang maliwanag na iskor.

  • PHP Opisyal: Isang patiunang patalastas ang ipinalabas noong 20 Oktubre, na nagsasaad na sa 21 Oktubre sa 14:00 UTC ay ilalabas sa isang seguradong bersyon kung ang mga detalye ay nasisipsip o nararanggo. Dahil dito, ang bilang ng CVE ay nasaksak sa Hacker News sa parehong araw, at ang release na nakatakda sa Oktubre 22 ay napilitang sa isang araw na mas maaga.
  • CERT-EU: naglabas ng advisory 2026-018 at isama ang parehong CVE.
  • UlapNoong Oktubre 21st, tuwirang sinabi ng CTO Dane Knecht na "ang maagang pag-atake ay nakitang lumabas", at ang mga alituntunin ng WAF ay inilabas nang buo, kabilang ang mga malayang tagagamit. Subalit idiniin niya ang kaniyang sarili na ito'y isa lamang hadlang, at ang tunay na lunas ay natutupi.
  • Mga impormasyong banta sa Amason: Ang mga lata ng pulot - pukyutan sa MadPot ay nahuli na sumusubok noong Oktubre 17, at ang isa pang pangkat ay nahuli noong Oktubre 21, at itinuro ng sahod at imprastraktura ang maraming iba't ibang tagasalakay. Ang php2shell "ay malawakang ginagamit na".
  • Maging Mapagbantay: Ang parehong mga butas ay muling-emerged, habang ang mga pagtatangka upang samantalahin ang parehong ito ay napagmasdan.

Kaya "ang pag-atake ay natagpuan" ay hindi isang salin, kundi isang katotohanan. At ang Multinasyonal Emergency Response ay hindi isang dagok -- na ang mga pangunahing paksa ng tugon ay ang mga tagagawa, CDN at mga emergency organization, hindi kahit anong pamahalaan sa bansa.

Dalawa, dalawang butas, dalawang ganap na magkaibang paraan ng pagkamatay.

Maraming tao ang nag - aakalang isa itong butas na may dalawang numero, hindi. Ito ay dalawang magkahiwalay na ruta ng pag-atake, ang bawat CVSS 9.2.

Paghahambing ng mga teknikal na landas sa dalawang butas

CVE-2026-109618: Bomba kapag naubos na ang memory

Ang pagproseso ng isang kahilingan ay naaabala kapag nabigo ang distribusyon ng PHP memory. Ang problema ay:Sa puntong ito, ang internal request data ay maaaring kalahating-initialized lamang, at ang kasunod na clean-up logic ay maaaring gumamit ng di-incorporated na pirasong ito ng masamang datos bilang tanggap na datos.

Simple lamang ang paraan ng pag - iispresyo: gumawa ng isang multipart na kahilingan na alisin ang memorya. Ang kakatwa ay,Ang laki ng kahilingan ay waring katugma ng iyong kisame.Hindi ito ang post max na sukat na itinatag mo, ito ay ang decodement at ang pagkonsumo ng panloob na pagpoproseso.

Ang pinakamasama ay ang mod php. Ang mod php para sa Apache kapag humihiling ng startup ay nabigoLulinis pa rin ito., kaya't ang kadenang ito ay maaaring makumpleto bago tumakbo ang anumang angkop na kodigo. Ang iyong PHP code ay napakalinis, walang loophole, hindi ito mapatigil.

Ang PHP-FPM ay papatay sa manggagawa kapag hindi ito nasimulan, para lamang putulin ang kadena, kaya opisyal, ang mod php ang pinakamataas na panganib. Ngunit magbigay pansin - hindi ito nangangahulugan na ligtas ang FPM.Pagkatapos ng matagumpay na pagsisimulaMay posibilidad pa ring samantalahin ito.

CVE-2026-109619: Dirty state sa pagitan ng mga kahilingan

Mas malala pa ito. Gagamitin muli ng PHP ang proseso ng paggawa upang maproseso ang maramihang mga kahilingan. Ang huling kahilingan na ilabas ang memorya, ang tagaturo ay nananatili sa panloob na kalagayan; ang susunod na kahilingan ay dumarating,Basahin ang blankong pahayag bago ang normal na pag - iispresa.Hindi ko alam.

Ang mga pagkakamaling nakamamatay (deplement of memory, performance timeout) ay sumasabat sa paglilinis ng estado. Masahol pa, ang ilang mga di-lethal na diyagnosis sa panahon ng abstrakto ay maaaring pumalit sa maling kalagayan.Pula.Hindi ko alam.

Ang mga opisyal na nakumpirmang daanan ay kinabibilangan ng: RCE na may nakamamatay na pagkakamali kapag ang PHP 8.5 ay nakapagdulot ng nakamamatay na pagkakamaling backraces (default opening), at ang sesyong siklo ng buhay na RCEs sa motor php at FPM.session.upload_progress Sa pamamagitan ng default, maaari kang kumilos bilang isang maagang mamimili sa isang kalagayan ng karumihan.At hindi na kailangan pang gumamit ng call(s)Hindi ko alam.

Nakakabit pa rin ang butas na ito.Pagtunaw ng memoryaHindi ko alam. Ano ang tumatagas? ay ang password, token, API key, sertipiko para sa iba pang mga kahilingan sa process memory. Ang Wiz ay tuwirang inihambing sa Heartbled, na hindi naman masyadong mabigat.

Timeline, hindi lamang basta pamagat.

PHP2Sell Event Timeline: inilaan mula 2024 hanggang 10-17 field gamitin
PanahonAno ang nangyari?
Taon 2024PHP core developer audit natagpuan ang OOM, ang bug na iyon, ang koponan ay walang consentibo sa batas, ay inilagay ito sa mahigpit.
2026-08Ipinakikilala ni Ryan Austin ng Calif ang mga butas kasama ang OpenAI GPT-5.6 Sol; Wiz Independent Discovery
2026-10-17Amazon MadPot, ang pulot - pukyutan ay makapagtatala ng isang pagtatangka, apat na araw bago ang pagbubukas.
2026-10-20CVE number na inilabas sa Hacker News and Social Media, PHP
2026-10-2114:00 UTC Publication 8.5.12 / 8.4.27 / 8.3.36 / 8.2.35

Ang ika - 17 ng Oktubre ay dapat na isaalang - alang.Ang araw ng publiko ay ang ika-20, ngunit ang pagsalakay ay naganap noong ika-17.Ang mungkahi ng Amazon ay tuwiran: ang pasimula ay hindi dapat sa petsa ng pagsisiwalat, kundi sa unahan ng di - kukulanging 17 Oktubre.

Kung paano patiunang nakuha ng mga sumalakay ang impormasyon, ang Amazon ay "hindi malinaw." Hindi ko magawa ito, pero kailangan mong tanggapin ang katotohanan.Ang araw ng pagsisiwalat ay hindi kailanman ang araw ng pagsalakay, kundi ang araw na sa wakas ay nalaman mo.

Apat, ngayon talagang AI.

Ang Wizifeks blog ay naglalaman ng isang pangungusap na dalawang beses kong nabasa: ang mga depektong ito sa likod ay umiral na sa loob ng mga dekada, subalit upang patunayan na ang mga ito ay magagamit, kailangan nila ang isang lubhang masalimuot na kawing ng mga hakbang, sa mga gilid ng aktuwal na kakayahan ng mga mananaliksik na tao.Malaki ang ibinaba ng modelong Frontline AI sa pagsisimulang ito.Hindi ko alam.

Espesipiko: Si Ryan Austin, isang mananaliksik sa Calif, ay natagpuan sa proyektong OpenAI na "Patch the Planet" kasama ang GPT-5.6 Sol. Nasumpungan ni Wiz ang gayunding problema nang hiwalay. Upang magamit ito, kailangan natin ang sunud - sunod na pagkakamali at pinupuntirya ang bawat target.Paulit - ulit na inaayos ang memoryaSinasabi ng Wiz na ang modelong front-line ay nagpapahintulot sa kanila na makagawa ng mga magagamit na aplikasyon para sa iba't ibang aplikasyon sa loob ng ilang oras.

Hindi ito nangangahulugang "Nagwaging muli ang AI".Ang punto ay na ang kanal ng "complex" ay humihina.

Maraming lumang butas ang hindi pa natutumba sa nakalipas na dalawang dekada, hindi dahil sa hindi naman ito malubha, kundi dahil sa napakataas ng pasimula ng paggamit nito — ilang linggong pamumuhunan ng kilalang mga mananaliksik at suwerte. Kaya inilagay mo ang mga ito sa "theoretically mapanganib" column. Ngayon ay wala na ang bakod na ito.

Ang mga sampung-year-old na butas na iyon na nakahimlay sa inyong sistema at tinuturing na "difficult at di-proseso" ay kailangang muling i-re-edit.

Lima, alin ang dapat mong puntahan?

Pagkukumpara ng mga nabawing bersyon ng PHP
SangayApektadong bersiyonItapon
PHP 8.5< 8.5.12Bumuhay sa 8.5.12.
PHP 8.4< 8.4.27Ibangon sa 8.4.27.
PHP 8.3< 8.3.36Ibangon sa 8.3.36.
PHP 8.2< 8.2.35Ibangon sa 8.2.35.
PHP 7.4 / 8.0 / 8.1LahatOpisyal na hindi nailathala, ang antas ng pagkukunan ay tanging
PHP 5.4 – 7.3LahatEOL, hindi ito inaayos ng pamahalaan. Negosyo

Ilang tunay-buhay na paalaala:

  • Paglalabas ng Linux at Vendodor ng LTSMagtabi nang patiuna.Lagyan ng distribusyon ang iyong tagagawa. Huwag madaliin ang source code.
  • Gamitin rpms.remirepo.net Pansinin: Opisyal na sinabi ng PHP ang pinagkunan noong ika-21 ng Oktubre.Walang updateKaya maaari kang lumipat sa isang distribusyon package o gawin ito mula sa source code.
  • Ang binaryo ng Windows ng PHP 8.5 ay nasa opisyal na pahina rin ng download.
  • Huwag mong isipin na okay ang tumakbo sa lalagyan - ang PHP na bersyon ng salamin sa lalagyan ay kailangang suriin.

Anim, kung hindi ka makakuha ng isang patse, gawin mo muna ang apat na ito.

Unang estado:Wala sa mga ito sa ibaba ang makapagliligtas sa iyo.Ang opisyal na pariralang PHP ay "reduce exposure sa espesipikong mga landas ng pag-atake, ngunit huwag gawing mas ligtas ang mga instalasyon". Ang halaga nito ay bigyan ka ng panahon na makakuha ng mga patse.

Apat na mga hakbang sa pagsasama at ang kanilang mga limitasyon

Magtakda ng limitasyon sa memorya -1

Layunin: Nabigo ang pagkuha ng prognosis na PHP memory cap, i.e. CVE-2026-109618 ay kinumpirma ang kondisyon ng trigger kung saan ito nakasalalay.

Ang punto ay,Paano?: ilagay sa mga lugar kung saan ang aplikasyon ay hindi ginagamit, gaya ng FPM Pool php_admin_value o Apache Configuration. Dapat mong suriin na walang pops, directories, application settings upang idagdag ang limitasyon pabalik.Pagkatapos ay ulitin ang bawat manggagawa.

Maliwanag ang presyo: wala ka sa mismong bakod ng memorya ng PHP, at ang pagbaba ng distribusyon ay maaari pa ring nasa mapanganib na landas na iyon. Kaya kailangan na isang lalagyan o isang croup upang limitahan ang pabalat - ngunit isa lamang itong estratehiya upang "patayin ang mga taong apektado."Huwag kailanman gumamit ng RTIMIT AS o RLIMIT DATAAng dalawang ito ang mismong uri ng kabiguan sa pamamahagi na lumilikha ng mga butas.

Bawasan ang laki ng post max

Mga lugar na walang talaksang 8M upang mag - ulat ng 32M at tiyak upload_max_filesize Mas mababa kaysa rito. Kasabay nito, ang mga limitasyon ay idinaragdag sa web server o proxy layer - ang dami ng mga kahilingan, ang bilang ng mga bukid, ang bilang ng mga bahaging multipart, ang bilang ng mga ulo, ang lalim ng mga pugad.Ang mga restriksiyong ito ay dapat sumaklaw sa mga kahilingan na hindi tanggap na Content-LengthO iikot tayo dito.

3. Ihinto ang sesyon.upload

session.upload_progress.enabled = 0

Nakasulat ito sa php.ini, kasangkapang FPM o estrukturang server.Kailangang maging mabisa ito bago ang kahilingan.Hindi ko alam. Gamitin ini_set() O FPM. .user.ini Huli na ang lahat - ito'y marumi. Pagbabago rin ang muling pag-arte sa lahat ng workker.

PHP 8.5 Isa pang dalaga

fatal_error_backtraces = 0

Ang blokeng ito ay nagpatunay lamang ng nakamamatay na mga pagkakamali, na walang ibang mga pagkakaiba. Kailangan din ng administrador ang mga setting + restart workker.

Karagdagan pa, binanggit ng opisyal na marami ang magwawalang - bahala:Alamin ang nakamamatay na mga pagkakamali na maaaring ibunsod at patayin ng mga sumalakay., kabilang ang back-up, upload, pag-aangkat processing, paglilinis-up failures. At...Tanggalin ang luma o ilegal na mga pagsasaayos na ipinatupad sa isang request na batayang request- Iniluluwa nila ang mga impormasyong pang-eksperimento bago ito i-premise at pakainin ang tulo.

Ang huling pangungusap na ito ay madaling maunawaan:Hindi gumaganang itago ang diyagnosis sa pamamagitan ng maling pag-uulat, pagpapakita ng mga pagkakamali o @.Hindi ito nangyayari.

VII. TUNAY NA MGA KAALAMAN NG ITO

Ayaw kong matapos sa pamamagitan ng pagsulat ng "Lubosin mo ang patse." Mangyari pa ito'y isang patse. Ngayon. Subalit ang ilang hukom ay kailangang magbago.

  1. Ang katagang "difficult to use" ay hindi na katulad ng "inilarawan".PHP ang access chain na ito ay komplikado upang mangailangan ng tulong ng AI, na nakatulong na. Ang mga lumang butas sa iyong asset list na nagmamarka ng "teoriyang panganib" ay dapat na muling-edit.
  2. Ang wika ay nag - iisang punto.WordPress, Drupal, Joomla, Magento, MediaWiki lahat tumatakbo sa PHP, ang inyong application code audit ay malinis, at ang PHP core ay nasa gulo. Ang ritmo ng mga suson ng imprastraktura, na ang mga suson ng aplikasyon ang naghihiwalay.
  3. "Ang kodigong application ay sira nang hindi tumatakbo." ANG WAF ay maaari lamang magpaantala.Cloudflare mismo ang nagsabi na ito ay topgap. Ang paglalagay sa WAF bilang solusyon ay katumbas ng pagbibigay ng buhay sa saklaw ng pamamahala.
  4. Maraming mga lumang site sa bansa gamit ang PHP.Ang mga istasyong iyon na tumatakbo sa PHP 5.6/7.0, na matagal nang hindi nauunahan at ibinitin sa isang cloud mainframe, ay nasa ganitong pagkakalantad ng 1.3 sa 1.9 milyon. Sila'y hindi tatanggap ng anumang patalastas.

Nakarekord ang mga kalibrasyon ng Data: Sinasabi ng W3Techs na ang PHPs ang bumubuo sa 69.3 porsiyento ng mga wikang kilala sa serbisyo, at ang Wiz 70 porsyento; exposure hosts, ang mananaliksik sa seguridad na si Silas Cutler ay tumataya ng mahigit 1.3 milyon, at ang Shodan search ni Henk Poley ay mahigit sa 1.9 milyon. Ang mga numerong ito ay may iba't ibang kalibre at hindi ginagamit ang mga ito bilang eksaktong mga halaga, subalit ang sukat ay iisa -Milyun - milyon, sa buong daigdig.

Isa pang detalye ang mahalagang tandaan: nang ang bilang ng CVE ay tumagas, ang mga punto ng CVSS na lumabas ay 10.0, ang PHP ay opisyal na napatunayan.Mali ang iskor na iyon.Ito sa katunayan ay 9.2. Walang nakaaalam ng anuman tungkol sa detalyeng ito, subalit ito'y laging nasa sirkulasyon. Nakikita mo ang 10.0, alam mo kung anong alon ito.

Isang 10-year hole, dalawang buwan ng AI-assisted research, apat na araw ng maagang paggamit, isang-araw na pattern window. Ang timescale na ito ang normal ng lahat ng mga pangunahing software na sumusunod.

Suriin ang bersiyon ngayon.php -vO tingnan ang mga salamin sa iyong sisidlan sa tag. Huwag hintayin ang bukas.