Как стать автором
Обновить

Комментарии 107

Я правильно понимаю — чтобы руткит заработал, надо его скачать и запустить под рутом?
Т.е. он не через уязвимость в nginx внедряется?
1. Да, еще его найти нужно(проблема оказывается).
2. Nginx не касается, работает только на сборке Debian с ядром 2.6.32-5-amd64(проверяем uname -r).

* уязвимостей он не использует
Чтобы руткит заработал — достаточно эксплуатации уязвимости, которая даст права рута, например; помоему, это очевидно.
«достаточно эксплуатации уязвимости, которая даст права рута»

дело осталось за малым
Думаете, что это невозможно? Ну-ну.
НЛО прилетело и опубликовало эту надпись здесь
Все верно, а еще даже для запуска конкретно этого руткита это все нужно.
Ну так цель руткита — это ведь не получение рута, это грубо говоря «закрепление» полученного иным способом рута :)
НЛО прилетело и опубликовало эту надпись здесь
Понятно. Для успокоения сих личностей могу сказать, что я и сам на Linux — и на десктопах, и на серверах, однако не могу понять, откуда берется такая уверенность «мою систему невозможно взломать, она абсолютно защищена».
Дано любая ОС на ядре линукс >= 2.6.32 с включенным grsecurity (как минимум или аналогичное средство включена на любом сервере).
Требуется найти: локальную рут уязвимость.

Решите задачку? А то ваше «ну-ну» как-то противоречит действительности.
Т.е. вы утверждаете, что взлом невозможен, и ваша система абсолютно защищена? Вот это меня и удивляет — откуда такая уверенность?

Допустим примем Ваши условия. Гугл подсказал, что grsecurity — тоже не панацея (например jon.oberheide.org/blog/2011/04/20/stackjacking-your-way-to-grsec-pax-bypass/). Возьмем CVE-2010-2959, который «2.6.32.x before 2.6.32.21». Или там 1337day.org/exploit/14601. Ну или, раз у вас >=, тот же приснопамятный CVE-2012-0056 (mempodipper). Или там CVE-2012-2136. Да вот, выбирайте на вкус и условия например здесь. И это — только то, что нашлось сразу. А ведь кроме ядра у нас еще есть куча окружения, которое тоже вполне может быть уязвимо.

Вы поймите: не поверите — но я тоже на Linux. Однако тешить себя тем, что «мою систему невозможно взломать» — помоему это наивно, даже вредно.
Нет такого утверждения. Взлом возможен для любой системы и шифра. Это лишь вопрос времени и денег.

Есть утверждение, что все эти ваши ссылки — это описание сошедшихся на небе звезд, вторника, луны в тельце когда дует западный ветер, а Марфа из села Кукуево выстирала шторы.

И чтобы эти уязвимости эксплуатировать (если их еще не пофиксили к моменту публикации) — надо иметь определенные ресурсы и скилл. И нацеливаться очень метко. Нет такого, что уязвимость касается всех. А только относительно небольших группок. Там еще и в 90% allow local user, если вы не заметили. Прочитайте внимательно.

Так что система защищена настолько, что взлом прекращает быть профитным и поэтому без смысла.
Очевидно, что универсальных 100% уязвимостей на абсолютно всех — нет, но ведь и 30-40% — уже неплохо.

90% allow local user

Допустим, и что? Тогда плюсуем сюда уязвимости из раздела «code execution», например, да и все.
Большей частью за меня ответил sn00p. Нет ничего не возможного. Но есть такое, что взломать настолько сложно, что нафиг не нужно. Вы во втором абзаце, приведя один пример обхода grsecurity сразу переключились на уязвимости в ванильном ядре (которые и сами по себе, если вчитаться в описания мягко говоря осуществимы не на всех системах). Однако же большинство «ванильных» уязвимостей под grsecurity не работали, как например тот же mempodipper.

Для всего кроме ядра есть приколюшки типа RBAC и иже с ним. Так что хоть абсолютной защиты быть не может, можно набором несложных действий привести свой сервер к тому, что описанный руткит станет просто игрушкой для пытливых умов, а не серьзной угрозой, тем более такой, которую следует обнаруживать антивирусами.
Хорошо, значит я неправильно Вас понял, извините.

Я переключился на уязвимости ядра, но ведь вы обозначили в условиях только его, поэтому я и написал, что «а ведь кроме ядра у нас еще есть куча окружения, которое тоже вполне может быть уязвимо.», просто потому, что в условиях задачи ничего не было сказано об окружении.

Данный руткит — может и да, но мы же не только о нем, верно?
Данный руткит — может и да, но мы же не только о нем, верно?

В том-то и дело, что только о нем. Был бы тут подробный разбор руткита, который прячется так, что хрен найдешь и запускается без привязки к конкретному ядру — было бы о чем говорить.

Моя задачка имела цель показать Вам крайнюю нетривиальность получения локального рута, используя уязвимости линуксового ядра, так как «ну-ну», мне показалось, означало «да одной левой».

В текущих реалиях получение локального (вообще молчу про удаленного) рута несоизмеримо более сложная задача, чем закрепление после этого в системе или модификация пакетов на лету.
А SELinux Вы тоже включить забыли?
Я верно понял, для заражения нужно либо специальное ядро + рут доступ. Либо исходник компилировать прямо на сервере (атака как я понял на них) и еще наверное на 3.* ветке оно не заработает?
Какой в нем смысл, только в том, что его не видно? С рутом и не таких дел можно наделать с другой стороны.
Смысл руткита — «закрепиться» на взломанной системе и скрыть следы взлома (опционально, но вполне логично) и присутствия.
1.после первого же обновления ядра снесется модуль
2.после обнаружения любых вирусных действий под линуксом я бы в первую очередь обновил ядро т.к. наверняка там пофиксили дыру. Хотя я и не разу не сталкивался со зловредами под линукс

если брать не сервер а комп, то тут ядро раз в неделю обновляется.
Что у вас за комп такой, на котором вы раз в неделю ядро обновляете?
На убунту, например, как раз в такие сроки новые билды ядра приезжают
Может быть, вы имеете в виду период в пару месяцев после выхода релиза, когда нужно многое корректировать? Насколько я помню, так часто ядро не прибегало, в лучшем случае, это было раз в месяц.
Это точно происходит чаще, чем раз в месяц.
У меня дистр арч. Каждую неделю обновляю и там еще и ядро обновляется, что все сторонние модули надо пересобирать.
dasm32 судя по статье, этот зловред меняет TCP пакеты. Уж это то я замечу. А если я это замечу то обновлюсь, т.к. возможно уязвимость устранена и зловред умрет. Так этот зловред прячется в виде модуля, и после любого обновления ядра он исчезнет и не будет работать.
Да и все же как я понимаю устарело все это. Как всегла лаборатория Касперского пишет статьи пугающие админов линуксоидов (конечно же для покупки их ПО), а на деле опасность подстерегает только машины с определенным ядром, где не ставятся обновления.
А расскажите, пожалуйста, как Вы заметите изменения в TCP пакетах?
На сервере каждую неделю ядро обновляете? Это, конечно, круто, но это не общераспространённая практика.

Про то, как «уж это» заметите уже спросили. Тоже крайне интересно.
после обнаружения любых вирусных действий под линуксом


Так он на то и направлен, чтобы вы их не обнаружили, это же одна из первостепенных целей. И да, дыры бывают далеко не только в ядре.
Вообще руткит по определению устанавливается под рутом и скрывает следы своего присутствия в системе.
Ждем ебилды ©
Что-то я не понял, руткит подменяет таблицу syscalls в ядре Linux, или только указатели в GOT в glibc?
Начинают: «вредоносная программа для Linux», позже «только под 64битные системы», далее «только под Debian», ниже «только под Squeeze».

* Не стыдно Лаборатории Касперского тратить время на «руткит» от школьник-инкорпорэйшн?
** Сложно еще проверить, не было ли уже такой новости?
Не, в оригинале пишут:

The kernel module in question has been compiled for a kernel with the version string 2.6.32-5. The -5 suffix is indicative of a distribution-specific kernel release. Indeed, a quick Google search reveals that the latest Debian squeeze kernel has the version number 2.6.32-5.


Т.е. у них просто был модуль, скомпилированный под эту версию. Наверное, можно и под другие скомпилировать (если, конечно, не используются какие-либо специфические именно для этой версии штуки). Ну и еще там некоторые вещи захардкодены.
Да ирония это, достали повторы. Если бы каждую поделку под Win так обсуждали — интернетов не хватило бы все хранить. Есть и возможность самопиара умельца, может и MS заинтересована в желтой дырявости Lin в момент выход новой ОСи, которую уже сами считают неудачной. Не спроста шум подняли на ровном месте…
ИМХО это специфическое ПО и пилится под заказ… Конкретный процессор и версия ОС как бы намекает.
Значит кто то знает конкретные сервера с конкретной уязвимостью. НО как он уплыл? И еще сырым с отладочной информацией? А Может правда студенты балуются,,,
Я так и не понял, каким образом он в систему проникает. Как прячется — понятно, как проникает — ни слова.
Я так понял, сам он не проникает, его проносят через другие уязвимости. Фишка в том, что достаточно только 1 раз получить рута для установки сабжа, и потом наслаждаться эффектом, даже после перезагрузки сервера.
Только вот еще получите рута…
Однако ж от сайта FreeBSD недавно SSH-ключик утек… Или не очень давно был где-то тут рассказ, как ломали платежную систему через «распитие спиртных напитков» с работником компании. Так что, человеческий фактор есть всегда и везде. И нередко оказывается куда важнее состояния техники. А если уж допустить (как писали выше), что данная программа делается под заказ и для разового применения, то акцию «социального» внедрения скорее всего спланировали заранее. Но и вариант «балуются студенты» тоже очень вероятен — многим же интересно решать хитрые задачи ради решения.
Еще раз, его скачивает и устанавливает root, поэтому нужно сделать так, чтобы root'ом не стал злоумышленник. Не умеет этот «руткит» распространяться, проникать. У него основная функция после установки — «не спалиться».
О каком скрытии идет речь если он запускается через rc.local?
Это же как если бы виндовый троян через автозагрузку запускался…
Чтобы скрыть файлы и строку стартового скрипта, запускающую вредоносную программу, руткит перехватывает следующие функции ядра путем сплайсинга или замены адреса в памяти на указатели собственных вредоносных функций руткита:

vfs_readdir vfs_read filldir64 filldir
«Чтобы скрыть файлы и строку стартового скрипта, запускающую вредоносную программу, руткит перехватывает следующие функции ядра путем сплайсинга или замены адреса в памяти на указатели собственных вредоносных функций руткита
vfs_readdir vfs_read filldir64 filldir „
разул глаза и перечитал. спасибо.
27 коментов обсуждения, как работает руткит. То — что суть ВПО в изощренной процедуре внедрения iframe — на уровне пакета TCP/IP — всем как-то побоку? Руткитов навалом, в том числе под Linux. А тут эта фишка — главное. Вот пишут админу — у вас вредоносный iframe на сервере. Он — grep, а в файлах ничего подозрительного нет.
Да собственно ни что не ново в этом мире. Еще лет 5 назад были вирусы виндовые, которые заваливали сетку ARP-пакетами и подменяли у клиентов MAC шлюза на свой.
Затем пропускали весь траффик через себя и также на лету прямо в TCP/IP пакетах меняли содержимое — в ссылки что-то подставляли (например меняли REFID партнерок) или код страницы правили на лету. Выражалось это в том, что у юзеров переставали некоторые сайты нормально открываться, т.к. алгоритмы замены были слишком тупые. Т.е. вирусы собственно работали по абсолютно аналогичной технологии, просто не локально, а как man-in-the-middle.
И назывался он Warp в 2005, NetSniff в 2006, Capiframe в 2008. И это еще не предел — по состоянию на 2012 год была обнаружена очередная модификация. Подозревают в разработке Китай. В общем — интересный образец инженерной мысли.
Да. Были еще и их модификации, сделанные уже не авторами, а просто «на коленке» подправленные. На самом деле очень элегантный «способ отъема денег у населения» ((с) — О. Бендер). Вроде как у юзера деньги не вымогают как локеры, юзеры же и так и по ссылкам кликают, заменим refid и получим бабки за их покупки/клики. Страдают только хозяева сайтов.
Собственно в этом рутките просто изменилось место внесения изменений — не на юзерском компе или фейковом шлюзе, а чего уж мелочиться, сразу на сервере код страницы изменим :(
Статья напомнила:
Здравствуйте, я молдавский вирус. По причине ужасной бедности моего создателя и низкого уровня развития технологий в нашей стране я не способен причинить какой-либо вред вашему компьютеру. Поэтому очень прошу: сами сотрите какой-нибудь важный для вас файл, а потом разошлите меня по почте другим адресатам. Заранее благодарен за понимание и сотрудничиство.
Это не вирус и не троян, это руткит.
Я чуть не прослезился читая этот пост. Тут нет патентов, айфонов, новых версий programname, обзоров sitename и прочих статей с ленты.
Вредоносная программа обеспечивает свой автозапуск, добавляя строку в скрипт /etc/rc.local:
«insmod /lib/modules/2.6.32-5-amd64/kernel/sound/module_init.ko»


И тут ВНЕЗАПНО хлоп, а «kernel.modules_disabled = 1» из /etc/sysctl.conf уже отработал. Или бывают сервера, на которые имеет смысл установить руткит (представляют важность), и на которых есть поддержка модулей в ядре и она не отключена после загрузки модулей при старте системы?

Что это вообще за странный метод грузить модуль строчкой из rc.local?

«Продукты «Лаборатории Касперского» детектируют данный руткит как
Rootkit.Linux.Snakso.a»


Извините, пожалуйста, но нам, пользователям линукс, по-прежнему пофигу на ваше программное обеспечение.
Вас, пользователей Linux, еще не набралось столько, что бы написание malware под платформу Linux стало, так сказать, рентабельно. А потом дойдет и до Касперского с Доктор Вебом. Думаете Доктор Веб просто так в своей линейке имеет дистрибутивы для Linux? Без обид — холивар устраивать не собираюсь.
Пользователей?
Как вы себе представляете malware, рассчитанное на пользователя Linux, не на сервер?
А что, под винду malware под сервера что-ли пишутся? Ну CodeRed только если. Пишется под то, что плохо защищено и широко распространено. Cервера защищены лучше, чем отдельные компьютеры. А Windows платформа на десктопе пока не сдала позиции Linux. Яблочники вон тоже очень удивлены были, что оказывается под их платформу уже malware пишется, просто порог популярности определенный превышен был (14%) и все.
Я редко сижу за маком, но ради интереса каждый раз когда я читал очередной заголовк в стиле «О Боже!!! Под мак обнаружен вирус!» я не бежал в истерике рассказывать об этом всем, а пытался понять как он работает и через что распространяется. А затем шел к подруге на макбук со snow leopard и выяснял, что опять неожиданно у девушки, которая далеко не заморочена на сетевой безопасности, компьютер этой очень-страшной-уязвимости неподвержен. А все потому что у нее вовремя обновляется система.

Либо опять же приведите мне примеры распространения малвари нулевого дня под мак. Именно нулевого, пожалуйста.
Есть такая наука — статистика. Ну вот вы например, не видели малвари нулевого дня под мак. ОК. Это не значит, что под Mac их нет. Та же статистика показывает, что до определенного момента под Mac было определенное кол-во ВПО, а потом это количество начало увеличиваться, и почему-то это совпало с ростом популярности платформы. Как вы думаете связь есть тут или нет?
А заголовки в стиле «О Боже!!! Все пропало!» я тоже не люблю.
А есть такая наука математика, в которой меня учили, что для того, чтоб доказать, что что-то существует, надо привести пример. Я вот Вам пытаюсь указать на то, что архитектура *nix систем, как и политики обновлений их крайне затрудняют, если не исключают возможность сколько либо массовых заражений мальварью, а вы мне трясете статистикой.

Пока что Ваша статистика при ближайшем рассмотрении очень похожа на пузырь, раздуваемый антивирусными компаниями, для покупки никому не нужного ПО.
Я правильно понял, что у Linux (Mac) архитектура и политика обновлений лучше, чем у Microsoft? Настолько, что «исключают возможность сколько либо массовых заражений мальварью»? И потом — где вы тут у меня увидели агитацию за какое либо ПО?
Я бы сказал, что у Windows архитектура и политика обновлений хуже, чем у любого другого ПО.

Не агитация, но содействие распространению вот тут. Так как вы повторяете очень выгодный антивирусным компаниям лозунг «Вирусы есть под все, что популярно».
Ваше право. Только я не повторяю лозунги, а высказываю свою точку зрения. Я против тезисов вида Linux лучше Windows, или Windows лучше Linux. В противовес у вас в посте проскочила мысль — у подруги Mac и она не парится, и вообще там все классно. И уязвимостей нулевого дня нет, а если есть — то механизмом обновления быстро закрываются. То есть в Apple все белые и пушистые — багов не делают и патчи пишут за минуты.
«Я против тезисов вида Linux лучше Windows, или Windows лучше Linux.»

Вот тут я с Вами соглашусь. «лучше» не то слово. Слишком общее и неоднозначное. Но есть слова безопасное, стабильное, дружелюбное к пользователю, распространенное, поддерживаемое оборудованием и прочие критерии операционных систем. И вот тут уже можно как-то сравнивать. И в чем-то однозначно лидирует виндовс, в чем-то линукс, в чем-то мак.

А мысль про мак Вы снова неправильно поняли. Уязвимости нулевого дня в операционных системах и серверном ПО позволяют себе только MS пропускать. А не в «apple все классно».
Например, самый нашумевшее распространение «очень страшного вируса» под мак, использовалась уязвимость в java vm. Опубликовали тогда дрвебовцы. Так вот у подруги на маке java была уже обновлена на неуязвимую версию уже неделю как, а под *nix используемый OpenJDK\icedtea вообще ей был не подвержен. Под виндой же jre общесистемно не обновляется.
Расскажите, пожалуйста, мне про любую серьезную уязвимость в линукс или в регулярно смотрящем «наружу» ПО за последние два года, чтоб получить доступ рута удаленно.

Про популярность так же немного неуместно, так как мы тут вообще-то не про декстопы. А статистика на серверах как бы не в пользу MS.

И да. Все антивирусы, как под мак, так и под линукс, обобща под *nix вообще существуют либо, чтоб сканировать разделенные с виндой файловые хранилища, либо для зарабатывания денег с предварительно запуганных постами аналогичными первому недалеких пользователей.
Обычно закрепляются в системе под обычным пользователем, например через уязвимый скрипт HTTP сервера, а потом применяют локальный эксплоит. Уязвимости сетевых сервисов действительно редки, но их использование не является основным способом получения полного доступа.
Хорошо. Уязвимости за последние позволяющие получить локального рута в ПО в ядре линукс и ПО под него, используемом на серверах, найдите, пожалуйста, и сосчитайте (подсказка: их меньше 5). И сравните с тем же самым под windows.
И вы мне по-прежнему будете утверждать, что все из-за количества пользователей?
Да — я так хочу сказать. А вы мне сейчас напишите что программисты Linux лучше программистов Windows, и поэтому в Linux ошибок меньше. Написание эксплоитов и нахождение уязвимостей — достаточно трудоемкий процесс. Если у вас 100 компов с Windows и один с Linux, какую систему предпочтет для анализа злоумышленник?
Так. Вы меня не понимаете. Буду спрашивать прямо:
Сколько в процентном отношении в мире вебсерверов под linux и сколько под windows? Ну примерно.
Сколько уязвимостей для получения локального рута в ПО или в ядре этих систем найдено?

Мои варианты ответа:
1) w3techs.com/technologies/overview/operating_system/all
2) linux — 1. Давайте, учитывая что я фанатичный красноглазый гентушник, будем считать, что 5.
3) windows — сложно точно подсчитать, но учитывая учитанное в п.1 предположим, что их тоже 5.

Теперь вопрос: почему при двукратном превосходстве линукса на серверах подобных уязвимостей в нем меньше?
А давайте-ка не сервера считать, а десктопы? А давайте-ка определимся, сколько версий имеет Windows и сколько Linux? Что проще проанализировать, 100 серверов c Windows 2003 или 200 серверов c 15 версиями Linux?
Десктопы с nginx? Шутите? Лично я с самого начала и пока что про сервера.

Сравнение десктопов отдельная тема, выходящая за рамки данного топика.

Версия linux — одна. Linux kernel. И есть определенный набор ПО под него. У веб-серверов обычно наружу смотрит, либо апач, либо nginx. Поэтому очевидно сравниваем Windows server+IIS и Linux+apache+nginx.
Хорошо, начнем с цитат: «Извините, пожалуйста, но нам, пользователям линукс, по-прежнему пофигу на ваше программное обеспечение». Мне одному тут видится между строк фраза — «в Linux проблем нет»? Я откомментировал — пока нет, из-за малой распространенности на десктопах. Вы мне привели статистику, что серверов с Linux намного больше, чем c Windows. Вопрос — какие крупнейшие инциденты с использованием malware были направлены на сервера, а не на десктопы?
Нет, нет, нет. Вы меня не спровоцируете на уход от темы серверов. Я отвечал на конкретный пост, на конкретный текст про описание защиты от конкретного руткита. Так что я говорю про сервера.

На самом деле на десктопах ситуация похожая, но повторюсь, ее обсуждение выходит за рамки этого поста. И к ней сейчас я приступать не намерен. Хотите — сами изучите статистику, методики заражений, скорости обвнолений и реальную, а не раздуваемую антивирусными компаниями уязвимость ПО.
Хорошо, значит тогда так: «Извините, пожалуйста, но нам, пользователям линукс, по-прежнему пофигу на ваше программное обеспечение». Это значит — «в серверных Linux проблем нет»?
Это значит «Извините, пожалуйста, но нам, пользователям линукс, по-прежнему пофигу на ваше программное обеспечение». Но конкретно в рамках поста habrahabr.ru/company/kaspersky/blog/159935/ в комментах я, пользователь хабрахабра J_o_k_e_r, готов обсуждать только проблемы серверных установок линукс.
Да все вы правильно говорите. В серверных проблем нет. И не надо этого бояться )
Распространенность на десктопах тут не причем. Все дело в архитектуре и открытом ПО.

Взломать можно что угодно, любую защищенную систему и любой шифр. Вопрос времени и средств. Зачастую все хитрят и подменяют понятия. Взлом кривого похапэ скрипта гордо становится взломом linux. А подбиралка паролей к аккаунту нерадивого админа — мощным эксплоитом нулевого дня.

Современный linux с настроеными по стандартам сервисами, с секьюрити патчами сломать очень проблематично. Это случается, но настолько редко, что даже не попадает в статистику. И стоит очень дорого.
Еще вопрос.

Не очень я понимаю, при чем тут вообще десктопы, вирусы и их распространенность. Разве ломать крупную банковскую систему, где крутится бабло, либо базу данных различных ведомств — это не выгоднее, чем ломать десктоп?
Выгоднее, но и сложнее в разы. Проще украсть пароли ДБО пользователя, чем сломать базу данных банка.
Вы молодец. Я теперь вдвойне рад, что пользуюсь postfix в chroot.

По теме: один remote root exploit за два года в ПО мы нашли. Теперь надо сосчитать сколько таких эксплойтов в ПО и системе по windows и сравнить с учетом популярности того и другого под серверами.
Не забывайте, что руткит подразумевает наличие у хакера рута. Изменить этот параметр и при следующей перезагрузке сервера руткит заработает.
А получить рута можно не только удаленно через дырку в системе. Есть как минимум два способа:
1. Дырка в скрипте->веб-шелл->локальный root-exploit, который использует дырку не закрытую на этом сервере, либо не ушедшую в паблик.
2. Дырявый скрипт, который работает с правами рута. Да, запускать скрипты с правами рута — это полный ппц, но я частенько такие скрипты по сей день встречаю. :(
Замечательно. Все правильно. Но я спрашивал другое. Упрощу: «почему rc.local»? Это бессмысленно и ненадежно загружать модуль из этого скрипта.
Выше уже высказывалось предположение — студенты… :) Куда было проще всего затолкать — туда и засунули. Или как вариант — программать под линукса уже научились, а админить и понимать что и в каком порядке грузится — нет :)
Ничего себе, студенты! А много ли студентов разбираются в Linuxe на таком уровне? Я то думал руткиты писать да пакеты TCP модифицировать — это никак не начальный уровень.
Прочитайте, пожалуйста, не только последний абзац моего изначального коммента.

Способ запуска руткита мягко говоря некорректен и нелогичен. Ощущение, что его делали, если и хорошие программисты, то далеко не шарящие в построении системы люди.
kernel.modules_disabled = 1 — это дефолтная настройка?
Пароль больше 3 символов в windows server — это дефолтная настройка? Давайте не скатываться в демагогию. Под любой ОС есть некоторые необходимые меры, которые админу требуется принять. Но к сожалению под виндовс они мягко говоря не всегда срабатывают.

rc.local в данном случае плох тем, что из него грузятся несистемные «локальные» сервисы, о чем и свидетельствует название. Модули должны грузится через rc.modules, который грузится намного раньше в том числе и перед включением modules_disabled. И если б не это, это был бы очередной руткит с интересным функционалом, но более никак не примечательный, а так это достаточно непродуманный руткит.
Если, допустим, у вас руткит запускается из автозапуска, из-под сервиса или до загрузки ОС из MBR — это является показателем крутизны? Или показатель — это использование руткита, а как он запускается — дело десятое?

И вот еще — под Linux значит, необходимые меры всегда срабатывают. А Windows такой плохой, меры принимаешь — а они не срабатывают???
Использование rc.local это показатель кривизны руткита, а не крутости линукс или windows. Попытайтесь же понять то, на что отвечаете.

И вот еще — под Linux значит, необходимые меры всегда срабатывают. А Windows такой плохой, меры принимаешь — а они не срабатывают???

Да. Это подтверждается обилием как local exploits так и remote exploits под windows и их почти полным отсутствием под linux. (из серьезного, известного за последние два года — только один local, починенный за два дня).
Краткое резюме от J_o_k_e_R:
руткит написали криво;
поэтому ничего интересного в нем нет;
под Linux эксплоитов меньше чем под Windows — это следствие, что Linux написан хорошо, а Windows — плохо;
MacOS тоже написана хорошо;
ребята из антивирусных компаний — редиски (вот тут согласен).
Мало, но умельцы все равно есть. Свободное время, примеры и упорство могут еще не до того довести. Плюс на «любительство» указывает сборка отладочной версии. Это еще больший фейл, нежели rc.local
Разработчики Stuxnet оставили в своем детище строку b:\myrtus\src\objfre_w2k_x86\i386\guava.pdb Тоже любители. Даже нормально сборку провести не могут =)
Строка в файле != отладочная версия файла.
Но стереть-то забыли? Плюс смайлик. Забыли debug вырубить, с кем не бывает, написано же, что malware имеет вид эксперементального. Концепт, так сказать.
Про концепт тоже подумал. А может быть и все вместе =)
НЛО прилетело и опубликовало эту надпись здесь
Конкретного этого?

Проверьте вывод страниц в nginx на предмет левых iframe.

Сравните список имеющихся модулей в /lib/modules/ с тем что ставится из пакетов с ядром с официально репозитория.

Воспользуйтесь программами типа chkrootkit

Используйте превентивные меры. Например программы мониторинга изменений важных файлов, а так же RBAC и иже с ним.
— автозапуск через rc.local — круто же. Да еще и загрузка модуля! Аплодисменты же.
— сплайсинг или замена адреса в памяти — круто.
— подмена функции, формирующей пакеты — вообще круто.
— соединение с управляющим сервером по хз какому порту — круто!
— еще надо чтобы он собрался и потом запустился из-под рута — круто!
Одни инновации!

Особенно в системах, где «все, что не разрешено — запрещено». Ну то есть почти во всех, где что-то торчит наружу в уютный интернетик.

Вы смеетесь что ли. Касперыч покурил чето опять и пытается всем доказать, что они не зря работают?
Минусы обосновывали бы. Это все не заработает нигде, где есть администратор средней и ниже квалификации ))
Вот написали люди из Касперского новость. Лабораторию Касперского можно любить, можно не любить — это дело каждого. Написали об очередном, интересном, с их точки зрения (с моей тоже), образце malware. Главное в написанном — образец имеет функционал руткита и используется для проведения атак drive-by, написан по Linux, iframe внедряется на уровне пакетов TCP. Что же мы видим в комментах? <Сарказм ON>
1. Написана очередная фигня.
2. Механизм автостарта написан криво (согласен с этим).
3. А как они получили права root? Linux же настолько защищен, что там права root очень сложно получить. Значит malware писали ламеры, которые не знают, что в Linuxe очень сложно получить права root. Вывод — это криворукие студенты. Далее см. пункт 1.
Попутно было выяснено, что в MacOS тоже все здорово. <Сарказм OFF>
Образец обнаружен in the wild, значит права root были получены, как — дело десятое. Но нет, нельзя просто сказать, что образец из себя ничего не представляет, нужно попутно пнуть Microsoft и Kaspersky. Если что — я не фанат Microsoft, да и против Linux ничего против не имею. Просто не люблю, когда кто-то что-то необоснованно говорит. Причем, явно не касающегося темы данной новости.
НЛО прилетело и опубликовало эту надпись здесь
Да бросьте вы. В линуксе своих стандартных утилит полно, неосторожное обращение с которыми причинит больше вреда, чем этот руткит. Утилиты эти хоть запускаются всегда, а тут есть сомнения.
Не важно кто мы такие, важно какой у нас план. (С) Бейн

В данном посте новой информации — 0. Точнее 0,0001: информация о том, как этот руткит определяется антивирусом касперского. Все. Остальная информация отрывками взята из blog.crowdstrike.com/2012/11/http-iframe-injecting-linux-rootkit.html, отрывки перемешаны, разбавлены водой и вылиты сюда. При это пост статуса перевода не имеет.
Руткит модифицирует tcp пакеты? И что? Что нового то? Вы действительно первый раз сталкиваетесь с малварью, которая меняет tcp-пакеты?

В общем статья на самом деле попытка очередной раз коряво пиарнуть ненужное под никсами антивирусное ПО. Хотели бы ЛКшники сделать полезное дело — перевели бы упомянутую выше статью и опубликовали со статусом «перевод». А еще лучше вкладывались бы сами в исследования безопасности open-source софта.
Пожалуйста, приведите хотя бы один образце malware, который вставляет iframe или script путем модификации TCP пакета.
перехват функции wininet.dll:HttpSendRequestA в гугле есть. тоже самое примерно.
В гугле есть — это очень хороший ответ. Главное, очень информативный. Помогите мне серому и убогому — приведите наименование образца malware, неважно под какую платформу, что бы он вставлял iframe в пакет TCP.
Смысл написания статьи не совсем ясен, из под рута можно сделать всё что угодно было бы желание и права рута :)

Раздувать из мухи слона не надо.

Был бы рут(!!!), можно и apache со своими модификациями поставить, это было бы для этой задачи надёжнее и незаметнее.

Был бы рут, можно было бы много ещё чего сделать, полёт фантазии и возможностей безграничен.
Всё круто, кроме вот этого:

>Вредоносная программа обеспечивает свой автозапуск, добавляя строку в скрипт /etc/rc.local:
>insmod /lib/modules/2.6.32-5-amd64/kernel/sound/module_init.ko

Серьезный засвет.

Лучше бы прямо в initrd внедрялись — на него и чексумм в пакетных менеджерах нет, насколько я знаю, и расковыривать его и сверять суммы модулей придет в голову не сразу.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий