Все новости от 30 ноября 2005 г. Опасность ошибок 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.
|
|
| M&M's 30 Nov 2005 8:14 PM |
Чево они все это в ZDNet пишут, давно пора ограничиться блогами для спецов по информационной безопасности. |
|
| dr-Wicked 30 Nov 2005 9:05 PM |
Нет, пусть все знают, чем страшней семантика языка, тем он вредней. Вот сколько люди натерпелись от С. А ещё Джоэль предупреждал, что у нормальных, среднестатистических людей отсутствуют центры мозга отвечающие за работу с указателями. |
|
| Linfan 1 Dec 2005 12:47 AM |
dr-Wicked: ПРРАЛЬНО! Поддерживаю :) perl, c, c# - нах. Писать надо на Питоне ;) На худой случай, на жабе. |
|
| bla 1 Dec 2005 1:15 AM |
Линфан не узнаю, а как же поддержка товарещей по OpenSource, или тебе лижбы на C# в очередной раз бочку покатить, а С тут и вовсе не в тему. |
|
| 996 1 Dec 2005 9:46 AM |
2 dr-Wicked: Указатели - рулез !!! И конверсия типов в С - форева !!! kBytes += (((unsigned long)(*((BYTE *)(buffer+c+2)))) << shift) :)
|
|
| Wintermute - devnul.ru 1 Dec 2005 10:40 AM |
2 Linfan: А почему не Ruby или не Smalltalk? Питон, вообще-то, довольно убогий язык. Единственное, что меня там по настоящему покорило - это генераторы, а остальное там какое-то корявое все. |
|
| Yuri Abele 1 Dec 2005 12:00 PM |
To Linfan: > perl, c, c# - нах. Писать надо на Питоне ;) > На худой случай, на жабе. Странное замечане. Если на Java, то чем C# помешал - языки во многом сходные. Да и указателей, если умышленно не писать unsafe{...} код нету. |
|
| dr-Wicked 1 Dec 2005 12:11 PM |
2LinFan Жабу на худой конец питона? Оригинально. |
|
| aim 1 Dec 2005 8:12 PM |
кто-нибудь по-англицки прочел? чуваки никак не проверили AUTH_NAME и передали в syslog. ну и где здесь ошибка «нового класса»???? |
|
| dr-Wicked 1 Dec 2005 8:47 PM |
Читайте внимательней. Данная ошибка похожа скорее на Code-Injection |
|
| Чр 1 Dec 2005 8:50 PM |
я помниб когда чуть не взлома virtualave.net ну может кто знает была ткао хостнг когдато беслптны он давал возомжно cgi на perlе писать. вот не знаю можно мнги знали но там была такая не то что бы дыра. может это фича. корчое просто элементарыны знаия перла.( те даже хачить ничгео не надо). позволяи читать чужие cgi директории на это же сервере.. те как ведь обычно cgi запрещен на скачивания *.pl и там был. но можно была сделать так скрипт что бы это было возхможно из свого скрипта. не знаю сейчас я парльо свой зхабыл. и даже не знаю на каком сервере.. |
|
| Чр 1 Dec 2005 8:54 PM |
ет возморнно даже "наверно" или наверянка не знаю. и взломать само virualave но по краяней мере чущие web host н аходящиеся на том же серваке что и логин "хкаера" это ттончо моджно было. те скачать напимер списки его фалов типа passwd.txt ( если у него было слишком тупо сделано). или даже просто скрипт скачать а уже в них дырки искать. но мне интресно было я и забыл./забил. |
|
| Чр 1 Dec 2005 8:55 PM |
не интресно. |
|
| Nicolay V. 2 Dec 2005 5:36 PM |
2 Чр А можно теперь перевести на русский? |
|
| Дмитрий 5 Dec 2005 6:01 PM |
Как я понял, речь об использовании оператора формата в коде. Насколько мне известно, этим способом форматирования вывода пользуется __ничтожно__ малое количество разработчиков. Так что не пугайтесь, приложений, которые надо исправлять, очень мало. Разработчики выпустят патчи и "проблема" пропадет ... |
|
|