Несколько лет назад я впервые поехал на конференцию по Linux. Помню, мне сразу бросилась в глаза общая неформальная атмосфера: посетители прямо на лекциях разговаривали, пили пиво и пытались взломать ноутбук выступавшего через Wi-Fi посредством обнаруженной тремя днями ранее уязвимости в SSH. Позже я узнал, что подобное поведение норма на конференциях по Linux/Unix, но для новичка это выглядело диковинно.
Одна из презентаций посвящалась вредоносным программам для Unix, в частности — для Linux. Выступавший проанализировал несколько широко известных вирусов, руткитов и бэкдоров для Linux, но обошел стороной сетевые черви. Под конец своего доклада автор отметил, что черви для Linux не просто возможны, но совершенно неминуемо появятся в будущем и станут не менее распространенными, чем, например, CodeRed. Утверждение было встречено явным (то есть, довольно громким) несогласием аудитории, напомнившей выступавшему, что Linux безопаснее Windows и червь вроде CodeRed в принципе не может появиться в Linux. Выступавший вздохнул, но спорить не стал — ему все было и так ясно.
Несколько дней назад наша система мониторинга сети Smallpot стала регистрировать флуд пакетов на 80-м порту. Поскольку в них не содержалось ни кода shell, ни кода переполнения буферов, то система автоматически присвоила им степень «низкой опасности» и отправила в архив. Но вскоре мы заметили, что с этими пакетами все же что-то не так. Обычно мы получаем огромное количество элементарных HTTP-запросов на 80-й порт — спамеры ищут открытые прокси-серверы или иные возможности для рассылки своих писем — но встретить червя, размножающегося через уязвимость на 80-м порту (HTTP) без использования переполнения буфера довольно трудно.
Однако именно так устроен Net-Worm.Linux.Lupper. Червь представляет собой статично скомпилированный ELF-бинарник, способный работать на большинстве систем и укомплектованный набором эксплойтов, предназначенных для уязвимых версий файлов xmlrpc.php и awstats.pl. Файлы эти встречаются во множестве дистрибутивов Linux (в частности, в Gentoo, Mandriva, Slackware, Debian и Ubuntu), а также в старых версиях популярного веблог-пакета WordPress.
Стоит отметить, что встроенная в новейшие процессоры AMD и Intel «железная» защита от переполнения буфера (так называемый NX/XD bit) бесполезна в отражении подобных атак и неспособна защитить компьютер от заражения червем Lupper, что еще раз доказывает несостоятельность рекламирования этой функции как «конец всем вирусам».
Детектирование червя Lupper.a было добавлено в базы антивируса 6 ноября. Вариант «b» стал перехватываться Антивирусом Касперского 9 ноября. Разумеется, Антивирус Касперского для Linux File Servers с запущенной постоянной защитой предотвращает заражение червем Lupper.
Червь Linux.Lupper