PHP2Shell: PHP-ի երկու կրիտիկական խոցելիություն, արտահոսած էմբարգո և այն, ինչ իրականում հայտնի է շահագործման մասին
PHP-ը շտապ ուղղումներ է թողարկել հեռակա կոդի կատարման երկու կարևոր խոցելիությունների համար՝ CVE-2026-109618 և CVE-2026-109619, որոնք կոչվում են PHP2Shell: Թողարկումը տեղի է ունեցել 2026 թվականի հոկտեմբերի 21-ին: Դրվագը պարզ բառերով բացատրում է հիշողության երկու սխալները, թե ինչու է 2024 թվականի աուդիտի հուշումը սպասել ուղղման, ինչպես է էմբարգոն արտահոսել, և որ աղբյուրներն ինչ են ասում շահագործման մասին: Այն նաև անդրադառնում է GitLab-ի նույն օրվա կարևոր կարկատանի թողարկմանը և Նյու Մեքսիկոյում Meta-ի 25 միլիարդ դոլարի տուգանքի մասին որոշմանը։
PHP-ը շտապ ուղղումներ է թողարկել հեռակա կոդի կատարման երկու կարևոր խոցելիությունների համար՝ CVE-2026-109618 և CVE-2026-109619, որոնք կոչվում են PHP2Shell: Թողարկումը տեղի է ունեցել 2026 թվականի հոկտեմբերի 21-ին: Դրվագը պարզ բառերով բացատրում է հիշողության երկու սխալները, թե ինչու է 2024 թվականի աուդիտի հուշումը սպասել ուղղման, ինչպես է էմբարգոն արտահոսել, և որ աղբյուրներն ինչ են ասում շահագործման մասին: Այն նաև անդրադառնում է GitLab-ի նույն օրվա կարևոր կարկատանի թողարկմանը և Նյու Մեքսիկոյում Meta-ի 25 միլիարդ դոլարի տուգանքի մասին որոշմանը։
Կարդացեք գրավոր տարբերակը (անգլերեն) ↗
Ինչ է ընդգրկում այս տեսանյութը
- Երկու խոցելիությունն էլ PHP թիմի կողմից CVSS v4.0-ով գնահատվում են 9.2: Շտկված տարբերակներն են PHP 8.2.35, 8.3.36, 8.4.27 և 8.5.12; PHP 7.4, 8.0 և 8.1-ը ստացել են միայն ելակետային կարկատակներ: PHP-ն ասում է, որ թարմացումը միակ ամբողջական մեղմացումն է։
- Առաջին խոցելիությունը առաջանում է նրանից, որ PHP-ն կիսատ է թողնում հարցումը, երբ սխալ պահին հիշողությունը սպառվում է: Երկրորդը առաջանում է նախորդ հարցման հիշողությանը մատնանշող մնացորդային ցուցիչից, որը կարող է օգտագործել նույն աշխատողի հաջորդ հարցումը: Apache-ի վրա mod_php-ի հետ առաջին ուղին աշխատում է հավելվածի կոդից առաջ։
- PHP-ի հիմնական մշակողը հիշողության խնդրի առաջին նշանները հայտնաբերել է 2024 թվականի աուդիտի ժամանակ: PHP Foundation-ն ասում է, որ մրցակցող շտկումները փոխզիջումներ ունեին, և կոնսենսուսի վրա հիմնված անվտանգության թիմը դժվարությամբ է ընտրություն կատարել, ինչը նրանք անվանում են կառուցվածքային ձախողում։
- Հիմնադրամն ասում է, որ CVE ID-ները արտահոսել են հոկտեմբերի 20-ին, Calif-ը սխալմամբ հրապարակել է ապացույց-հայեցակարգի տեսանյութ, և Chainguard-ը թողարկել է շտկումով կառուցված պատկերներ թողարկումից վեց ժամից ավելի շուտ: Chainguard-ի գործադիր տնօրենն ասում է, որ մարդիկ արդեն տուժում էին, և որ ինքը խոցելիությունները հայտնաբերել է ինքնուրույն։
- Աղբյուրները տարբերվում են շահագործման հարցում: Amazon-ը հոկտեմբերի 17-ին փորձ է գրանցել և հետագայում հայտարարել, որ PHP2Shell-ը լայնորեն շահագործվել է: watchTowr-ը հայտնել է շահագործման մասին իրականում: CISA-ն հրապարակման պահին շահագործում չի դիտարկել, և PHP թիմը թողարկման պահին ֆունկցիոնալ շահագործում չի գտել: Հրապարակային ապացույց-հայեցակարգի բազմաթիվ սկրիպտներ չեն աշխատում։
- Ստուգեք PHP-ի աշխատանքի յուրաքանչյուր տեղը, ներառյալ այլ ծրագրային ապահովման մեջ առկա պատճենները, թարմացրեք, վերագործարկեք աշխատողներին և վերանայեք տեղեկամատյանները մինչև հոկտեմբերի 17-ը։
Հարցեր և պատասխաններ
Որո՞նք են PHP2Shell-ի երկու խոցելիությունները:
PHP2Shell-ը նշում է PHP-ի երկու կրիտիկական խոցելիություն՝ CVE-2026-109618 և CVE-2026-109619, որոնք երկուսն էլ PHP թիմի կողմից գնահատվում են 9.2: Առաջինը կիսատ է թողնում հարցումը, երբ PHP-ն սխալ պահին հիշողությունը սպառվում է, և մաքրումը հետո վստահում է դրան: Երկրորդը թողնում է ցուցիչ մեկ հարցման հիշողության վրա, որը կարող է օգտագործել նույն աշխատողի հաջորդ հարցումը: Երկուսն էլ կարող են հանգեցնել կոդի կատարման՝ առանց մուտքի։
Ո՞ր PHP տարբերակներն ունեն PHP2Shell-ի շտկում, և ի՞նչ կասեք չաջակցվող տարբերակների մասին:
PHP նախագիծը հոկտեմբերի 21-ին թողարկեց շտկումներ 8.2.35, 8.3.36, 8.4.27 և 8.5.12 տարբերակներում: 7.4, 8.0 և 8.1 տարբերակների համար այն հրապարակեց միայն ելակետային կարկատակներ, և BleepingComputer-ը հաղորդում է, որ բաշխումները և երկարաժամկետ աջակցության մատակարարները կարող են տրամադրել backported շտկումներ: PHP-ն ասում է, որ ամբողջական շրջանցման ուղի չկա, ուստի թարմացումը կամ մատակարարից կարկատակված փաթեթ խնդրելը միակ անվտանգ ընտրությունն է։
Ինչու՞ հայտնի PHP հիշողության խոցելիությունը շտկելու համար տևեց մինչև 2026 թվականի հոկտեմբերը:
PHP հիմնադրամն ասում է, որ հիմնական մշակողը հայտնաբերել է հիշողության խնդրի առաջին նշանները 2024 թվականի անվտանգության աուդիտի ժամանակ, սակայն շահագործման ուղի հայտնի չէր, և յուրաքանչյուր թեկնածու շտկում ուներ փոխզիջումներ, ինչպիսիք են համատեղելիության խախտումները: Անվտանգության թիմը որոշում է կայացնում կոնսենսուսով և դժվարանում էր ընտրել, ինչը Հիմնադրամն անվանում է կառուցվածքային ձախողում՝ պայմանավորված իր որոշումների կայացման գործընթացով և ռեսուրսների պակասով։
Արդյո՞ք PHP2Shell-ը շահագործվում է, և որքանո՞վ է հեշտ այն շահագործելը:
Աղբյուրները տարբերվում են։ Amazon-ը հոկտեմբերի 17-ին գրանցել է շահագործման փորձ և ավելի ուշ հայտարարել, որ PHP2Shell-ը լայնորեն շահագործվել է, իսկ watchTowr-ը հաղորդել է շահագործման մասին իրականում: CISA-ն հրապարակման պահին շահագործում չի դիտարկել, իսկ PHP թիմը թողարկման պահին ֆունկցիոնալ շահագործում չի տեսել: watchTowr-ն ասում է, որ հանրային շահագործման սկրիպտների մեծ մասը խափանում է կամ ոչինչ չի անում, իսկ VulnCheck-ը պարզել է, որ կոդի կատարումը աշխատում է միայն որոշ կարգավորումներում։
Ի՞նչ էր The Daily Diff-ի վճիռը PHP2Shell-ի վերաբերյալ:
The Daily Diff-ի վճիռն էր SHIP IT. թողարկեք PHP թարմացումը այսօր երեկոյան, քանի որ նոր տարբերակը միակ ամբողջական շտկումն է: CISA-ն ասում է, որ պետք է հաշվառել PHP-ով աշխատող յուրաքանչյուր համակարգ, ներառյալ այլ ծրագրաշարի մեջ առկա պատճենները, կիրառել կարկատակը և անջատել PHP համակարգերը, եթե դրանք հնարավոր չէ թարմացնել: Amazon-ը խորհուրդ է տալիս վերանայել տեղեկամատյանները մինչև հոկտեմբերի 17-ը, երբ այն տեսել է առաջին փորձը։
Թարգմանված արձանագրություն
Թարգմանվել է բնօրինակ անգլերեն պատմությունից։ Հասանելի աուդիո և ենթագրերը վերահսկվում են YouTube-ի կողմից։
Ովքեր փորձեցին PHP2Shell-ը չորս օր շուտ?
0:00 Անվտանգության էմբարգոն նախատեսված է խոցելիությունը գաղտնի պահել մինչև կարկատակի թողարկումը։ Amazon-ը գրանցել է PHP-ի կրիտիկական խոցելիության դեմ փորձը չորս օր շուտ։ Այս տեսանյութում ո՞վ է գտել այն: Ինչպե՞ս է արտահոսել էմբարգոն: Եվ իրականում որքա՞ն վատ է այն: Եվ այն ընկերությունը, որը մեղադրվում է արտահոսքի համար, ունի պաշտպանություն, որը ես չէի սպասում: Ես կհասնեմ դրան։ Հինգշաբթի է, հոկտեմբերի քսաներկուսը, և սա The Daily Diff-ն է։
0:21 PHP-ն սկրիպտային լեզու է, որը սերվերի վրա վեբ էջեր է ստեղծում հենց նախքան դրանք ձեզ հասնելը: Այն երեսուն տարուց ավելի է, և մեկ գնահատականով, աշխատում է կայքերի մոտ յոթանասուն տոկոսը, ներառյալ WordPress-ը և Wikipedia-ի հիմքում ընկած ծրագրաշարը: Մշակողները սիրում են ծաղրել այն, սովորաբար PHP-ի կողմից մատուցվող էջից: Դրա պահպանումն իրականացնում է ոչ առևտրային կազմակերպություն՝ մոտ տասներեք ինժեներներով:
Որո՞նք են PHP2Shell-ի երկու խոցելիությունները:
0:41 Չորեքշաբթի օրը PHP-ն թողարկեց արտակարգ շտկումներ երկու կրիտիկական խոցելիության համար, որոնք թույլ են տալիս անծանոթին կոդ գործարկել սերվերի վրա առանց մուտքի: Միասին դրանք կոչվում են PHP2Shell, և դրանք հասնում են մինչև PHP 5 կետ չորսը: Ահա առաջին խոցելիությունը պարզ խոսքերով: PHP-ն յուրաքանչյուր հարցմանը տալիս է հիշողության բյուջե: Եթե հարցումը հասնում է այդ սահմանին ճիշտ սխալ պահին, PHP-ն շտապ հեռանում է և հարցումը կիսատ է թողնում: Այնուհետև մաքրման քայլը վստահում է կիսատ բանին:
1:07 Երկրորդ խոցելիությունը մնացորդ է։ Մահացու սխալը կարող է թողնել հիշողությանը մատնանշող գրություն, որը պատկանում էր նախորդ հարցմանը: Նույն աշխատողը մշակում է հաջորդ հարցումը և հետևում գրությանը: Մինչ այդ ինչ-որ մեկ ուրիշ է ապրում այդ հասցեում։ Apache-ի վրա mod PHP-ի հետ վնասը տեղի է ունենում նախքան ձեր սեփական կոդի աշխատելը, այնպես որ ձեր մուտքի էջը երբեք ձայն չի ստանում: Wiz-ն ասում է, որ նույնիսկ hello world սկրիպտը խոցելի է: Շտկումը հեռացնում է PHP-ի արտակարգ ելքը հիշողության սպառման համար։
1:32 Փոխանակ հարցման կեսին դուրս գալու, PHP-ն այժմ քաղաքավարի կանգ է առնում հաջորդ անվտանգ կետում: Տարօրինակն այն է, թե որքան հին է առաջին հուշումը։
Ինչու՞ հայտնի խոցելիությունը սպասեց երկու տարի:
1:39 2024 թվականին արտաքին անվտանգության աուդիտը PHP-ի հիմնական մշակողին բերեց հիշողության խնդրի առաջին նշաններին։ Շահագործում հայտնի չէր, և յուրաքանչյուր շտկում ինչ-որ բան կոտրում էր։ Թիմը, որը որոշում է կոնսենսուսով, չկարողացավ ընտրել, ուստի խոցելիությունը սպասեց։ Այնուհետև օգոստոսին, հայտնաբերողները հայտնվեցին օրերի ընթացքում։
Ո՞վ է հայտնաբերել PHP2Shell-ը և ինչպե՞ս:
1:56 Calif-ի հետազոտող Ռայան Օսթինը այն գտել է օգոստոսի մեկին, աշխատելով OpenAI-ի Patch the Planet ծրագրի միջոցով: OpenAI-ը անկախորեն հայտնել է նույն հիմնական պատճառի մասին: Wiz-ը մի քանի շաբաթ անց գտել է տարբերակներ Gemini և GPT մոդելների միջոցով: Օսթինն ասում է, որ օգտագործել է մոդելներ, որոնք յուրաքանչյուրը կարող է ստանալ, գումարած մի տեսություն այն մասին, թե որտեղ են թաքնված PHP-ի հին խոցելիությունները: OpenAI-ն ասում է, որ առաջնային AI-ն էր բանալին: Խոցելիությունը թաքնված էր ավելի քան մեկ տասնամյակ։ Թողարկումը նախատեսված էր հինգշաբթի օրվա համար:
Ինչպե՞ս է արտահոսել PHP2Shell-ի էմբարգոն:
2:21 Երեքշաբթի օրը, երկու CVE համարները սկսեցին շրջանառվել առցանց, սխալ թողարկման ժամանակով և տասը սխալ գնահատականով: PHP-ն թողարկումը մեկ օրով առաջ բերեց։ Այդ երեկո, Calif-ը պատահաբար հրապարակեց իր ապացույցի հայեցակարգի տեսանյութը աշխատող, և պատճենները գոյատևեցին ջնջումից։ Չորեքշաբթի առավոտյան, թողարկումից վեց ժամից ավելի շուտ, Chainguard-ը հրապարակեց շտկումը պարունակող կառուցված պատկերներ: PHP-ն ասում է, որ ցանկացած հարձակվող կարող էր ուսումնասիրել այդ շտկումը, մինչ մյուս բոլորը սպասում էին:
2:46 Կարկատակը նաև տարբերություն է, և հարձակվողները կարդում են տարբերությունները։
Արդյո՞ք PHP2Shell-ը շահագործվում է, և ո՞ւմ կողմից:
2:50 Ուրեմն ո՞ւմ են իրականում հարվածում: Amazon-ի «մեղրամանը» հոկտեմբերի տասնյոթին գրանցել է փորձ, իսկ ավելի ուշ հայտարարել է, որ PHP2Shell-ը լայնորեն շահագործվում է: watchTowr-ը հայտնում է շահագործման մասին իրականում: Cisa-ն ասել է, որ հրապարակման պահին որևէ բան չի դիտարկել, իսկ PHP-ի թիմը թողարկման պահին չի տեսել աշխատող շահագործում: Cloudflare-ի գործադիր տնօրենն ասել է, որ հայտարարությունից տասը ժամ առաջ տեսել է հազարավոր փորձեր, իսկ հինգշաբթի առավոտյան՝ միլիոնավոր:
3:13 Amazon-ը զգույշ է մեկ կետում։ Այն չգիտի, թե արդյոք նրա ամենավաղ փորձերը կաշխատեին իրական համակարգի վրա: Փորձը միայն դուռը թակելն է։ Ուրեմն իրականում որքա՞ն վատ է այն: watchTowr-ն ասում է, որ հրապարակային շահագործումների մեծ մասը կամ խափանում է, կամ ոչինչ չի անում։ VulnCheck-ն ասում է, որ կոդի կատարումը աշխատում է որոշ կարգավորումներում, և հրապարակայիններից ոչ մեկը չի հաղթում հիշողության պատահականացումը ստանդարտ x86 սերվերների վրա։ Հետազոտող Էլիաս Թեյլորն ասում է, որ այն Log4Shell-ի նման հեշտ չէ:
3:40 Բոլորը դեռևս ասում են՝ կարկատակել: Կառավարությունները չսպասեցին դատավճռին։
Ի՞նչ համակարգեր անջատեցին կառավարությունները:
3:44 NSA-ն այն կազմակերպություններին, որոնք չէին կարող կարկատակել, հանձնարարեց անջատել PHP համակարգերը, և Միացյալ Թագավորության Ազգային կիբերանվտանգության կենտրոնը նմանատիպ խորհուրդ տվեց: Հոլանդական կայքերը, ներառյալ ազգային թվային ինքնության ծառայությունը, մթնեցին՝ Փարիզի ոստիկանության կայքի հետ միասին: Wikimedia-ն կանխարգելիչ նպատակներով մի քանի համակարգ անջատեց: Palo Alto Networks-ը հաշվել է ավելի քան քսաներկու միլիոն բացահայտված դեպք։ Եվ ավստրալիացի պրոֆեսորը արեց ամենասուր դիտարկումը: Անհանգստացնող կայքերն այն կայքերն են, որոնք այսօր անջատված չեն։
Ո՞ր PHP տարբերակներն են ստանում շտկում:
4:11 Շտկումներ գոյություն ունեն PHP 8.2-ից մինչև 8.5-ի համար։ 7.4, 8.0 և 8.1-ի համար, PHP-ն հրապարակել է միայն ելակետային կարկատակներ: Հին տարբերակները PHP նախագծից ոչինչ չեն ստանում, ուստի հարցրեք ձեր բաշխումից: Շրջանցման ուղիները նվազեցնում են հավանականությունը, բայց PHP-ն ասում է, որ թարմացումը միակ ամբողջական շտկումն է: Սա նույն դասն է, ինչ երեկվա eMudhra դրվագը,
Ի՞նչ անել PHP2Shell-ի հետ այսօր երեկոյան:
4:32 քանի որ շտկման առկայությունը նույնը չէ, ինչ այն, որ այն ունի գործարկվող պրոցեսը։ Գտեք ձեր սթեքի բոլոր PHP-ները, նույնիսկ այն պատճենները, որոնք թաքնված են այլ ծրագրաշարի մեջ։ Թարմացրեք, վերագործարկեք աշխատողներին և ստուգեք տեղեկամատյանները մինչև հոկտեմբերի տասնյոթը։ Նույն օրը GitLab-ը թողարկեց կրիտիկական կարկատակի թողարկում,
Ուրիշ ի՞նչ կրիտիկական RCE կարկատակ թողարկվեց այսօր:
4:47 տասնինը կետ հինգ կետ մեկը։ Թվային արժեքի գերբեռնումը նրա կանոնավոր արտահայտությունների կոմպիլյատորում թույլ է տալիս չվավերացված օգտատիրոջը կոդ գործարկել սերվերի վրա, և այն գնահատվում է տասը տասից: GitLab.com-ն արդեն կարկատակված է։ Ինքնակառավարվող տեղադրումներին անհրաժեշտ է թարմացումը։
Ինչու՞ Meta-ին հրամայվեց վճարել 25 միլիարդ դոլար:
5:01 Մինչդեռ Նյու Մեքսիկոյում դատավորը Meta-ին հրամայել է վճարել քսանհինգ միլիարդ դոլար տուգանք Cambridge Analytica-ի գործով: Ժյուրին հաշվել է ավելի քան քառասուներեք միլիոն խախտում՝ մինչև հինգ հազար դոլար յուրաքանչյուրը, որը կազմել է մոտ երկու հարյուր քսան միլիարդ մինչև դատավորի կրճատումը: Meta-ն ասում է, որ կհաղթի բողոքարկման ժամանակ: Այժմ խոստացված պաշտպանությունը։
Ո՞րն է Chainguard-ի պաշտպանությունը վաղ շտկման համար:
5:19 Chainguard-ի գործադիր տնօրենը The Register-ին հայտնել է, որ ինքը ուրբաթ օրվա գիշեր հայտնաբերել է նույն խոցելիությունները՝ PHP-ում ինչ-որ բան սպասվելու մասին իմանալուց հետո, հիմնական հրահանգով՝ գտնել վատ խոցելիություններ: Նա ասում է, որ վաղ է թողարկել, քանի որ մարդիկ արդեն հարվածի տակ էին: Եթե նախընտրում եք սա կարդալ, քան լսել իմ ասածը, տարբերությունն ամեն առավոտ անվճար հասնում է ձեր էլփոստի հասցեին the daily diff dot dev կայքում, հղումը ստորև: Այսօրվա դատավճիռն է SHIP IT:
Ի՞նչն է ստանում SHIP IT կնիքը:
5:39 Թողարկեք PHP թարմացումը այսօր երեկոյան, քանի որ նոր տարբերակի համարը միակ ամբողջական շտկումն է: Եվ սա այսօրվա տարբերությունն է: Ես Նիկոն եմ Axrisi-ից: Միավորեք պատասխանատվությամբ։
Աղբյուրներ
- Today's PHP Security Release, and How We're Strengthening PHP SecurityThe PHP Foundation
- RCE via OOM corruption (GHSA-w8hw-w9fx-j79w)PHP security advisory
- RCE via stale global state (GHSA-6wmf-4rv5-p3rp)PHP security advisory
- Upcoming Critical PHP Security Releasephp.net
- php2shellCalif
- PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the InternetWiz Research
- Amazon Threat Intelligence identifies PHP2Shell exploitation prior to public disclosure in MadPotAWS Security Blog
- Critical Vulnerabilities in PHP Require Immediate PatchingCISA
- Flaw in PHP computer language leads to shutdown of websites around worldThe Guardian
- What is PHP, and how bad is the computer language flaw causing website shutdowns globally?The Guardian
- PHP2Shell Exploitation Started Days Before PatchesSecurityWeek
- PHP2Shell: Responding to CVE-2026-109618 and CVE-2026-109619Tanium
- There isn't an easy exploit for this PHP vulnerabilityElias Taylor
- PHP blames supply chain security biz Chainguard for putting entire web at riskThe Register
- PHP2Shell: 22M exposed servers at risk as emergency patches releasedTechTarget
- PHP ships emergency patches for critical PHP2Shell flawsBleepingComputer
- GitLab Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13GitLab
- Meta ordered to pay $25 billion penalty in New Mexico Cambridge Analytica caseCNBC
- Tell HN: 2x PHP RCE CVEs with CVSS 10.0 IncomingHacker News



