Óÿçâèìîñòü ïîçâîëÿåò óäàëåííî âûïîëíÿòü êîìàíäû â Windows-ñèñòåìàõ
ÈÁ-ñïåöèàëèñòû Akamai ïðåäóïðåäèëè, ÷òî ìíîæåñòâî çëîóìûøëåííèêîâ èñïîëüçóþò îáíàðóæåííóþ íåäàâíî óÿçâèìîñòü â PHP äëÿ ðàñïðîñòðàíåíèÿ òðîÿíîâ óäàëåííîãî äîñòóïà, êðèïòîâàëþòíûõ ìàéíåðîâ è îðãàíèçàöèè DDoS-àòàê. Îá ýòîì â ñåðåäèíå èþëÿ 2024 ã. ãîâîðèòüñÿ íà ñàéòå êîìïàíèè Akamai.
Çà ïîñëåäíèå ãîäû âðåìÿ îò ðàñêðûòèÿ èíôîðìàöèè äî íà÷àëà ýêñïëóàòàöèè óÿçâèìîñòè çíà÷èòåëüíî ñîêðàòèëîñü - ôàêòè÷åñêè áîëüøèíñòâî âðåäîíîñíûõ äåéñòâèé ïðîèñõîäèò â ïåðâûé ìåñÿö ïîñëå âûõîäà ïàò÷à. Ñðåäíåå âðåìÿ íà÷àëà ýêñïëóàòàöèè ñîñòàâëÿåò ïðèìåðíî 4 äíÿ ïîñëå îáíàðîäîâàíèÿ óÿçâèìîñòè, ÷òî ïðàêòè÷åñêè íå îñòàâëÿåò çàùèòíèêàì âðåìåíè íà ïîäãîòîâêó. Ýòî ëèøü îäíà ÷àñòü íàñòóïëåíèÿ íà óÿçâèìîñòè - çëîóìûøëåííèêè òàêæå ïîñòîÿííî èñïîëüçóþò îäíîäíåâíûå óÿçâèìîñòè (äàæå òå, êîòîðûì óæå íåñêîëüêî ëåò), ÷òîáû èõ óñèëèÿ áûëè âîçíàãðàæäåíû. Îäèí èç ïîñëåäíèõ ïðèìåðîâ òàêîãî íàòèñêà - êðèòè÷åñêàÿ óÿçâèìîñòü, îáíàðóæåííàÿ â PHP (âåðñèè 8.1.*, äî 8.1.29, 8.2.* äî 8.2.20 è 8.3.* äî 8.3.8). Óÿçâèìîñòü ñâÿçàíà ñ òåì, êàê PHP è CGI-îáðàáîò÷èêè ðàçáèðàþò îïðåäåëåííûå ñèìâîëû Unicode, ÷òî ìîæåò ïîçâîëèòü çëîóìûøëåííèêó âûïîëíèòü óäàëåííîå âûïîëíåíèå êîäà (RCE). Ñïåöèàëèñòû Akamai îïèñàëè íåêîòîðûå èç çàìå÷åííûõ èìè ïîïûòîê ýêñïëóàòàöèè ýòîé óÿçâèìîñòè, à òàêæå èõ ïîñëåäñòâèÿõ è ïðåäñòàâèëè ñîáðàííûå èìè èíäèêàòîðû êîìïðîìåòàöèè (IOC).
Îäíèì èç ôàêòîðîâ îïðåäåëåíèÿ êðèòè÷íîñòè ÿâëÿåòñÿ ïðîñòîòà ýêñïëóàòàöèè, à ýòîò ñëó÷àé äîâîëüíî ïðîñò â èñïîëíåíèè äëÿ óãðîæàþùåãî àãåíòà. Äëÿ äîñòèæåíèÿ RCE çëîóìûøëåííèêó äîñòàòî÷íî îòïðàâèòü PHP-êîä íà ñåðâåð è äîáèòüñÿ åãî (íåïðàâèëüíîé) èíòåðïðåòàöèè. Êàê è â ñëó÷àå ñ CVE-2012-1823, ýêñïëóàòàöèÿ ýòîé óÿçâèìîñòè îñíîâàíà íà èñïîëüçîâàíèè php://input äëÿ âñòàâêè êîäà â òåëî çàïðîñà.  PHP php://input - ýòî ïîòîê ââîäà-âûâîäà, äîñòóïíûé òîëüêî äëÿ ÷òåíèÿ, êîòîðûé ïîçâîëÿåò ñ÷èòûâàòü íåîáðàáîòàííûå äàííûå èç òåëà çàïðîñà. ×àñòî èñïîëüçóåìîé îïöèåé äëÿ ýòîãî ýêñïëîéòà ÿâëÿåòñÿ PHP auto_prepend_file, êîòîðàÿ çàäàåò èìÿ ôàéëà, àâòîìàòè÷åñêè ðàçáèðàåìîãî ïåðåä îñíîâíûì ôàéëîì. Ïîñêîëüêó ñîäåðæèìîå ôàéëà ðàçáèðàåòñÿ ïåðâûì, ýòî ãàðàíòèðóåò, ÷òî êîä çëîóìûøëåííèêà áóäåò âêëþ÷åí äî òîãî, êàê áóäåò çàïóùåí ëþáîé äðóãîé êîä. Êðîìå òîãî, ìíîãèå çëîóìûøëåííèêè äîáàâëÿþò îïöèþ allow_url_include, êîòîðàÿ ïîçâîëÿåò ïîëó÷àòü äàííûå èç óäàëåííûõ ìåñò è èñïîëüçîâàòü òàêèå ôóíêöèè, êàê fopen è file_get_contents.
 ðåæèìå CGI PHP âåá-ñåðâåð àíàëèçèðóåò HTTP-çàïðîñû è ïåðåäàåò èõ PHP-ñêðèïòó, êîòîðûé âûïîëíÿåò èõ äîïîëíèòåëüíóþ îáðàáîòêó. Íàïðèìåð, ñòðîêè çàïðîñîâ àíàëèçèðóþòñÿ è ïåðåäàþòñÿ èíòåðïðåòàòîðó PHP ÷åðåç êîìàíäíóþ ñòðîêó, ïîýòîìó çàïðîñ òèïà http://host/cgi.php?foo=bar ìîæåò áûòü âûïîëíåí êàê php.exe cgi.php foo=bar. Ýòî îñòàâëÿåò âîçìîæíîñòü äëÿ èíúåêöèè êîìàíä, ïîýòîìó ïåðåä âûçîâîì php.exe âõîäíûå äàííûå ïîäâåðãàþòñÿ ñàíèòàðíîé îáðàáîòêå. CVE-2024-4577 - äåôåêò, ïîçâîëÿþùèé çëîóìûøëåííèêó âûéòè èç êîìàíäíîé ñòðîêè è ïåðåäàòü àðãóìåíòû äëÿ èíòåðïðåòàöèè íåïîñðåäñòâåííî PHP. Ñàìà óÿçâèìîñòü êðîåòñÿ â òîì, êàê ñèìâîëû Unicode ïðåîáðàçóþòñÿ â ASCII.
ÈÁ-ñïåöèàëèñòû Akamai ñîîáùèëè î òîì, ÷òî çàôèêñèðîâàëè ïåðâûå ïîïûòêè ýêñïëóàòàöèè ñâåæåãî áàãà íà ñâîèõ honeypot-ñåðâåðàõ â òå÷åíèå 24 ÷àñîâ ïîñëå òîãî, êàê î ïðîáëåìå ñòàëî èçâåñòíî øèðîêîé îáùåñòâåííîñòè.  ÷àñòíîñòè, áûëè çàìå÷åíû ýêñïëîèòû, ïðåäíàçíà÷åííûå äëÿ ðàñïðîñòðàíåíèÿ òðîÿíà óäàëåííîãî äîñòóïà Gh0st RAT, êðèïòîâàëþòíûõ ìàéíåðîâ RedTail è XMRig, à òàêæå DDoS-áîòíåòà Muhstik.
 ìàå 2024 ã. ÈÁ-ñïåöèàëèñòû èç êîìïàíèè Imperva òàê æå ïðåäóïðåæäàëè î íà÷àëå ýêñïëóàòàöèè CVE-2024-4577. Ïî èõ äàííûì, áàã íà÷àëè ïðèìåíÿòü ó÷àñòíèêè âûìîãàòåëüñêîé ãðóïïèðîâêè TellYouThePass äëÿ ðàñïðîñòðàíåíèÿ .NET-âàðèàíòà ñâîåãî øèôðîâàëüùèêà.
Ôîðìèðîâàíèå çàùèòû
ÈÁ-ñïåöèàëèñòû Akamai ðåêîìåíäóþò îïåðàòèâíî ïðèìåíèòü íåîáõîäèìûå èñïðàâëåíèÿ äëÿ îðãàíèçàöèé, çàòðîíóòûõ ýòîé óÿçâèìîñòüþ, è íà÷àòü ìîíèòîðèíã IOC.  çàâèñèìîñòè îò ïîëåçíîé íàãðóçêè îäíî èëè íåñêîëüêî èç ýòèõ ïðàâèë ñìÿã÷àþò ýòó óÿçâèìîñòü: 969151 v1 - àòàêà ñ èñïîëüçîâàíèåì PHP-èíúåêöèè (îòêðûâàþùèé òåã) 959977; v1 - àòàêà ñ èñïîëüçîâàíèåì PHP-èíúåêöèè (ïåðåîïðåäåëåíèå êîíôèãóðàöèè); 3000155 v1 - îáíàðóæåíà àòàêà ñ èñïîëüçîâàíèåì CMD-èíúåêöèè (îáíàðóæåí PHP/ôèëüòð äàííûõ); 3000171 v3 - ïîïûòêà çàãðóçêè ôàéëà Webshell/Backdoor. Êàê âñåãäà, àäìèíàì ñëåäóåò ÷àñòî ïðîâåðÿòü êîíñîëü íà íàëè÷èå îáíîâëåíèé è äîïîëíåíèé ê íàáîðàì ïðàâèë.
Áëàãîäàðÿ èñïîëüçîâàíèþ ðàçëè÷íûõ ñðåäñòâ àâòîìàòèçàöèè è îòñóòñòâèþ êîðïîðàòèâíîãî êîíòðîëÿ çëîóìûøëåííèêè ãîòîâû ê óñïåõó. Ïîñòîÿííî ñîêðàùàþùååñÿ âðåìÿ, êîòîðîå åñòü ó ñïåöèàëèñòîâ ïî ÈÁ äëÿ ÈÒ-ñèñòåì, ÷òîáû çàùèòèòü ñåáÿ ïîñëå ðàñêðûòèÿ íîâîé óÿçâèìîñòè, ÿâëÿåòñÿ åùå îäíèì êðèòè÷åñêèì ðèñêîì â áåçîïàñíîñòè. Ýòî îñîáåííî àêòóàëüíî äëÿ ýòîé óÿçâèìîñòè PHP èç-çà åå âûñîêîé ýêñïëóàòèðóåìîñòè è áûñòðîãî ïðèíÿòèÿ ñóáúåêòàìè óãðîç.  êîìïàíèè Akamai ïðîäîëæàò îòñëåæèâàòü òàêèå óãðîçû è ñîîáùàòü î íèõ, ÷òîáû ïîâûñèòü îñâåäîìëåííîñòü ïîëüçîâàòåëåé è ñîîáùåñòâà áåçîïàñíîñòè â öåëîì.





