June 7, 2008
Ботнеты
Для того чтобы понять, о чем пойдет речь дальше, необходимо ознакомиться с некоторыми терминами, один из них – ботнет. По данным все той же Wikipedia, ботнет или бот-сеть (англ. botnet) — это компьютерная сеть, состоящая из некоторого количества хостов, с запущенными ботами — автономным программным обеспечением. Чаще всего бот в составе ботнета скрытно устанавливается на компьютере жертвы и позволяет злоумышленнику выполнять некие действия, эксплуатируя ПО и ресурсы заражённого компьютера. Как правило, ботнеты используются для нелегальной или несанкционированной деятельности — рассылки спама, перебора паролей в удалённой системе, атак на отказ в обслуживании и многого другого.
Компания SecureWorks провела исследование наиболее крупных бот-сетей, занимающихся рассылкой спама. Нас же интересует только один из них, а именно Rustock, который занимает третье место в этом своеобразном рейтинге. Краткая информация по ботнету выглядит так:
• предполагаемое количество зараженных машин: порядка 150, 000;
• способность ботнета рассылать спам: порядка 30 миллиардов сообщений в день;
• наличие руткит-составляющей: да.
Теперь вы представляете с чем мы имеем дело и каков размах подобных сетей
в Интернет.
Взросление Rustock
Название Rustock придумали специалисты антивирусной компании Symantec, и оно так понравилось автору вредоносного кода, что в дальнейшем он стал его использовать. Изначально в первых версиях руткита можно было встретить такую строку: «Z:\NewProjects\spambot\last\driver\objfre\i386\driver.pdb». В последующих кроме строки с использованием «spambot» появилась строка «Rustock rootkit v 1.2».
Принято считать и делить поколения данного руткита на три «возрастные группы» (A, B, C). Это не совсем верно, так как автор постоянно экспериментировал и изменял код, методы перехвата функций и улучшал стабильность, но в целом кардинальных изменений за одну версию не вносил. На самом деле ситуацию с «версионностью» руткита достаточно просто отследить.
В конце 2005 – начале 2006 года появились первые бета-версии Rustock.A на которых обкатывались технологии. Отличить их можно по названиям драйверов: i386.sys, sysbus32. Для скрытия себя в системе использовался перехват системной таблицы вызовов (SSDT) и перехват IRP-пакетов.
Далее появилась полноценная версия Rustock.A – pe386.sys (версия 1.0), которая отличалась от первых версий техниками скрытия себя в системе. Прежде всего, автор отказался от SSDT и перехватил прерывание 0x2E (Windows 2000) и MSR_SYSENTER(Windows XP+). Для скрытия файла на диске были использованы ADS (Alternate Data Stream). Данная технология поддерживается на файловой системе NTFS. Тело руткита находилось в %SystemRoot%\system32:[случайный_набор_цифр].
В том же 2006 году появилась бета-версия Rustock.B (huy32.sys), а сразу за ней полноценная версия Rustock.B - lzx32.sys (версия 1.2), в которой использовались перехваты INT2E/MSR_SYSENTER, ADS (%Windir%\System32:lzx32.sys). Кроме всего прочего, автор добавил перехват функций сетевых драйверов: tcpip.sys, wanarp.sys и ndis.sys, который позволял ему обходить фаерволы и прятать спам-трафик.
Также были выпущены варианты с урезанным функционалом, варианты, которые восстанавливали перехваты в случае их обнаружения и снятия антируткитами или антивирусами, а также различные варианты со случайными именами драйверов.
Некоторые антивирусные вендоры, например TrendMicro, выложили в своих вирусных библиотеках описание Rustock.C, но после проверки этот экземпляр оказался очередной экспериментальной версией Rustock.B
Некоторые технические характеристики руткита
• имеет мощный полиморфный протектор, затрудняющий анализ и распаковку руткита;
• реализован в виде драйвера уровня ядра, работает на самом низком уровне;
• имеет функцию самозащиты, противодействует модификации времени исполнения;
• активно противодействует отладке: контролирует установку аппаратных точек останова (DR-регистры); нарушает работу отладчиков уровня ядра: Syser,SoftIce. Отладчик WinDbg при активном рутките не работает вообще;
• перехватывает системные функции неклассическим методом. Такие функции как:
• NtCreateThread
• NtDelayExecution
• NtDuplicateObject
• NtOpenThread
• NtProtectVirtualMemory
• NtQuerySystemInformation
• NtReadVirtualMemory
• NtResumeThread
• NtTerminateProcess
• NtTerminateThread
• NtWriteVirtualMemory
• работает как файловый вирус, заражая системные драйверы;
• конкретный экземпляр руткита привязывается к оборудованию зараженного компьютера. Таким образом, на другом компьютере руткит с большой вероятностью работать не будет;
• имеет функцию «перезаражения», срабатывающую по времени. Старый зараженный файл при «перезаражении» излечивается. Таким образом, руткит «путешествует» по системным драйверам, оставляя зараженным какой-нибудь один.
• фильтрует обращения к зараженному файлу, перехватывая FSD-процедуры драйвера файловой системы и подставляет оригинальный файл вместо зараженного;
• имеет защиту от антируткитов;
• имеет в составе библиотеку, внедряемую в один из системных процессов ОС Windows. Данная библиотека занимается рассылкой спама. Для связи драйвера с DLL используется специальный механизм передачи команд.
http://vsakoeraznoe.nnm.ru/win32ntldrbot_aka_rustockc_ne_mif_a_realnost
Тэги: Jun2008 Полезные сведенья
posted by Aldekein at June 10, 2008 Свернутьнунифигасебе! О_о...
ух автор зажег...
его бы руками да...
Архив:
Jul2024 Jun2024 May2024 Apr2024 Mar2024 Feb2024 Jan2024 Dec2023 Nov2023 Oct2023 Sep2023 Aug2023 Jul2023 Jun2023 May2023 Apr2023 Mar2023 Feb2023 Jan2023 Dec2022 Nov2022 Oct2022 Sep2022 Aug2022 Jul2022 Jun2022 May2022 Apr2022 Mar2022 Feb2022 Jan2022 Dec2021 Nov2021 Oct2021 Sep2021 Aug2021 Jul2021 Jun2021 May2021 Apr2021 Mar2021 Feb2021 Jan2021 Dec2020 Nov2020 Oct2020 Sep2020 Aug2020 Jul2020 Jun2020 May2020 Apr2020 Mar2020 Feb2020 Jan2020 Dec2019 Nov2019 Oct2019 Sep2019 Aug2019 Jul2019 Jun2019 May2019 Apr2019 Mar2019 Feb2019 Jan2019 Dec2018 Nov2018 Oct2018 Sep2018 Aug2018 Jul2018 Jun2018 May2018 Apr2018 Mar2018 Feb2018 Jan2018 Dec2017 Nov2017 Oct2017 Sep2017 Aug2017 Jul2017 Jun2017 May2017 Apr2017 Mar2017 Feb2017 Jan2017 Dec2016 Nov2016 Oct2016 Sep2016 Aug2016 Jul2016 Jun2016 May2016 Apr2016 Mar2016 Feb2016 Jan2016 Dec2015 Nov2015 Oct2015 Sep2015 Aug2015 Jul2015 Jun2015 May2015 Apr2015 Mar2015 Feb2015 Jan2015 Dec2014 Nov2014 Oct2014 Sep2014 Aug2014 Jul2014 Jun2014 May2014 Apr2014 Mar2014 Feb2014 Jan2014 Dec2013 Nov2013 Oct2013 Sep2013 Aug2013 Jul2013 Jun2013 May2013 Apr2013 Mar2013 Feb2013 Jan2013 Dec2012 Nov2012 Oct2012 Sep2012 Aug2012 Jul2012 Jun2012 May2012 Apr2012 Mar2012 Feb2012 Jan2012 Dec2011 Nov2011 Oct2011 Sep2011 Aug2011 Jul2011 Jun2011 May2011 Apr2011 Mar2011 Feb2011 Jan2011 Dec2010 Nov2010 Oct2010 Sep2010 Aug2010 Jul2010 Jun2010 May2010 Apr2010 Mar2010 Feb2010 Jan2010 Dec2009 Nov2009 Oct2009 Sep2009 Aug2009 Jul2009 Jun2009 May2009 Apr2009 Mar2009 Feb2009 Jan2009 Dec2008 Nov2008 Oct2008 Sep2008 Aug2008 Jul2008 Jun2008 May2008 Apr2008 Mar2008 Feb2008 Jan2008 Dec2007 Nov2007 Oct2007 Sep2007 Aug2007 Jul2007 Jun2007 May2007 Apr2007 Mar2007 Feb2007 Jan2007 Dec2006 Nov2006 Oct2006 Sep2006 Aug2006 Jul2006 Jun2006 May2006 |
|
| |