Îïàñíîñòü îøèáîê Perl íåäîîöåíèâàëàñü?

Óÿçâèìîñòè â ïðèëîæåíèÿõ, íàïèñàííûõ íà ÿçûêå Perl, ìîãóò ïðèâîäèòü íå òîëüêî ê àòàêàì íà îòêàç â îáñëóæèâàíèè, êàê ñ÷èòàëîñü äî ñèõ ïîð, íî è âûçâàòü ãîðàçäî áîëåå ñåðüåçíûå ïðîáëåìû.

Âî âòîðíèê êîìïàíèÿ Dyad Security ïðåäóïðåäèëà î òàê íàçûâàåìîé "óÿçâèìîñòè ôîðìàòèðîâàíèÿ ñòðîêè" â Webmin, óòèëèòå âåá-àäìèíèñòðèðîâàíèÿ, íàïèñàííîé íà ÿçûêå Perl. Èñïîëüçóÿ ýòó îøèáêó "íîâîãî êëàññà", çëîóìûøëåííèê ìîæåò ïîëíîñòüþ çàâëàäåòü ñåðâåðîì, íà êîòîðîì èñïîëíÿåòñÿ óÿçâèìîå ÏÎ, ãîâîðèòñÿ â ïðåäóïðåæäåíèè. " ñëó÷àå óñïåøíîãî èñïîëíåíèÿ êîäà ïðè ñòàíäàðòíîé êîíôèãóðàöèè òàêàÿ àòàêà ìîæåò ïðèâåñòè ê ïîëíîìó îâëàäåíèþ êîìïüþòåðîì íà óðîâíå root".

Îá óÿçâèìîñòÿõ ôîðìàòèðîâàíèÿ ñòðîêè èçâåñòíî äàâíî, íî ïðåæäå ýêñïåðòû ñ÷èòàëè, ÷òî ïîäîáíûå îøèáêè â ïðèëîæåíèÿõ, íàïèñàííûõ íà Perl, íåëüçÿ èñïîëüçîâàòü äëÿ äèñòàíöèîííîãî èñïîëíåíèÿ êîäà íà öåëåâîé ñèñòåìå. Òàêèå àòàêè ñ÷èòàëèñü âîçìîæíûìè òîëüêî â òîì ñëó÷àå, åñëè ïðèëîæåíèå íàïèñàíî íà áîëåå íèçêîóðîâíåâîì ÿçûêå ïðîãðàììèðîâàíèÿ, òàêîì êàê Ñ.

"Âîçìîæíî, ýòî ïåðâàÿ èç óÿçâèìîñòåé ôîðìàòèðîâàíèÿ ñòðîêè íîâîãî òèïà, — ãîâîðèò ñòàðøèé ìåíåäæåð Symantec Security Response Îëèâåð Ôðèäðèõñ. — Ðàíüøå ñ÷èòàëîñü, ÷òî òàêèì ñïîñîáîì ìîæíî âûçâàòü òîëüêî àòàêó íà îòêàç â îáñëóæèâàíèè. Òåïåðü õàêåðû, êîíå÷íî æå, íà÷íóò ïðèñòàëüíî èçó÷àòü èõ".

Perl, ïîïóëÿðíûé ÿçûê ñöåíàðèåâ, øèðîêî ïðèìåíÿåòñÿ äëÿ âåá-ïðèëîæåíèé, ÷àñòî íà ñåðâåðàõ ñ îïåðàöèîííîé ñèñòåìîé Linux. Ñ ïîâûøåíèåì áåçîïàñíîñòè ñàìîé îïåðàöèîííîé ñèñòåìû çëîóìûøëåííèêè íà÷àëè èñêàòü ñïîñîáû âòîðæåíèÿ â ñèñòåìû ÷åðåç âåá-ïðèëîæåíèÿ è äðóãîå ïðèêëàäíîå ÏÎ.

"Ó÷èòûâàÿ îáùóþ íàöåëåííîñòü íà âåá-ïðèëîæåíèÿ, òàêàÿ âîçìîæíîñòü èñïîëüçîâàíèÿ óÿçâèìîñòåé ôîðìàòèðîâàíèÿ ñòðîêè äàåò â ðóêè àòàêóþùèì åùå îäèí èíñòðóìåíò, — ãîâîðèò ìåíåäæåð ïî ñðåäñòâàì çàùèòû êîìïàíèè eEye Ñòèâ Ìàíçþéê. — Âåá-ñåðâåðû ñëóæàò õîðîøåé ìèøåíüþ èç-çà áîëüøîãî êîëè÷åñòâà ñêðèïòîâ íà Perl, äîñòóïíûõ àíîíèìíûì óäàëåííûì ïîëüçîâàòåëÿì".

Symantec è eEye íå ñìîãëè íåçàâèñèìî ïîäòâåðäèòü óòâåðæäåíèå ôèðìû Dyad, êîòîðóþ ïîääåðæàë ïîñòàâùèê ñåêüþðèòè-ÏÎ Immunity. Symantec âåðèò â åãî ñïðàâåäëèâîñòü, íî Ìàíçþéê èç eEye ïîêà íå óáåæäåí. "Îáû÷íî ÿ îòíîøóñü ê ïîäîáíûì âåùàì ñ äîëåé ñêåïòèöèçìà, ïîêà ñàì íå óâèæó äîêàçàòåëüñòâî. Åñëè îêàæåòñÿ, ÷òî ýòî ïðàâäà, ýòî ìîæåò ñòàòü î÷åíü ñåðüåçíîé ïðîáëåìîé". — ñêàçàë îí.

Äëÿ çàùèòû ñâîèõ ñèñòåì ïîëüçîâàòåëè Webmin ïðåæäå âñåãî äîëæíû óñòàíîâèòü ïîñëåäíþþ âåðñèþ óòèëèòû, ãîâîðèò Ôðèäðèõñ. " äîëãîñðî÷íîì ïëàíå íåîáõîäèìî óáåäèòüñÿ â ïðàâèëüíîì èñïîëüçîâàíèè ñòðîê ôîðìàòèðîâàíèÿ â ñâîèõ ïðèëîæåíèÿõ".

Ñòðîêè ôîðìàòèðîâàíèÿ — ýòî ñïîñîá îïèñàíèÿ ôîðìàòà âûõîäíûõ äàííûõ â ïðèëîæåíèè. Óÿçâèìîñòü ïîÿâëÿåòñÿ ïðè íåïðàâèëüíîì èñïîëüçîâàíèè ïðîãðàììèñòîì ñòðîêè ôîðìàòèðîâàíèÿ.  ðåçóëüòàòå çëîóìûøëåííèê ïîëó÷àåò âîçìîæíîñòü ñ÷èòûâàòü è çàïèñûâàòü ñîäåðæèìîå ïàìÿòè ñèñòåìû, èñïîëíÿþùåé ïðèëîæåíèå, è â êîíå÷íîì èòîãå âûïîëíèòü â íåé ïðîèçâîëüíûé êîä.

Ïîêà íå ÿñíî, êàêîå âëèÿíèå îêàæåò óÿçâèìîñòü ñòðîêè ôîðìàòèðîâàíèÿ, ãîâîðèò Ôðèäðèõñ. "Ñóùåñòâóåò îïàñíîñòü, ÷òî íà ñàìîì äåëå ýòî (óÿçâèìîñòü Webmin) ëèøü ïåðâàÿ èç áîëüøîãî ÷èñëà óÿçâèìîñòåé ñòðîêè ôîðìàòèðîâàíèÿ, êîòîðûå ìû ìîæåì óâèäåòü â áóäóùåì". Îäèí èç ñïîñîáîâ ðåøåíèÿ ïðîáëåìû, ïî åãî ñëîâàì, çàêëþ÷àåòñÿ â òîì, ÷òîáû ðàçðàáîò÷èêè Perl áîðîëèñü ñ óÿçâèìîñòÿìè ñòðîêè ôîðìàòèðîâàíèÿ â ñàìîì Perl.
Äàòà: 01.12.2005  
Àâòîð: ZDNet