<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Волчьи IT-мысли &#187; Вирусный анализ</title>
	<atom:link href="http://sww-it.ru/category/virus/feed" rel="self" type="application/rss+xml" />
	<link>http://sww-it.ru</link>
	<description>Компьютерная безопасность, IT, антивирусная индустрия.</description>
	<lastBuildDate>Wed, 18 Jan 2012 11:20:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>MYBIOS. Возможно ли заразить BIOS?</title>
		<link>http://sww-it.ru/2011-09-15/550?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mybios-%25d0%25b2%25d0%25be%25d0%25b7%25d0%25bc%25d0%25be%25d0%25b6%25d0%25bd%25d0%25be-%25d0%25bb%25d0%25b8-%25d0%25b7%25d0%25b0%25d1%2580%25d0%25b0%25d0%25b7%25d0%25b8%25d1%2582%25d1%258c-bios</link>
		<comments>http://sww-it.ru/2011-09-15/550#comments</comments>
		<pubDate>Thu, 15 Sep 2011 09:37:54 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[mybios]]></category>
		<category><![CDATA[rootkit]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=550</guid>
		<description><![CDATA[<p align="justify">Возможность заражения BIOS существует довольно-таки давно. Одна из лучших, на мой взгляд, статей на эту тему размещена в журнале Phrack, а на ресурсе pinczakko расположено много полезной информации. В данный момент прослеживается очевидная тенденция, которую я бы обозначил как «возвращение к истокам». Заражение MBR, перехваты указателей в различных системных таблицах операционной системы, заражение системных [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Возможность заражения BIOS существует довольно-таки давно. Одна из лучших, на мой взгляд, статей на эту тему размещена в журнале <a href="http://www.phrack.org/issues.html?issue=66&#038;id=7">Phrack</a>, а на <a href="http://sites.google.com/site/pinczakko/bios-articles">ресурсе</a> pinczakko расположено много полезной информации. В данный момент прослеживается очевидная тенденция, которую я бы обозначил как «возвращение к истокам». Заражение MBR, перехваты указателей в различных системных таблицах операционной системы, заражение системных компонентов — все это уже было, и очень давно.</p>
<p align="justify">Как и в случае с MBR заражение BIOS позволяет вредоносному коду инициализироваться очень рано, сразу после включения компьютера. С этого момента появляется возможность контролировать все этапы загрузки компьютера и операционной системы. Очевидно, что такой метод загрузки привлекателен для вирусописателей, однако очевидны и трудности, с которыми они сталкиваются. Прежде всего — это неунифицированный формат BIOS: создателю вредоносной программы необходимо поддержать BIOS от каждого производителя и разобраться с алгоритмом прошивки в ROM.</p>
<p><a href="http://www.securelist.com/ru/analysis/208050716/MYBIOS_Vozmozhno_li_zarazit_BIOS">Дальше</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2011-09-15%2F550&amp;title=MYBIOS.%20%D0%92%D0%BE%D0%B7%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%BB%D0%B8%20%D0%B7%D0%B0%D1%80%D0%B0%D0%B7%D0%B8%D1%82%D1%8C%20BIOS%3F" id="wpa2a_2"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2011-09-15/550/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IsDebug-ли?</title>
		<link>http://sww-it.ru/2011-03-21/520?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=isdebug-%25d0%25bb%25d0%25b8</link>
		<comments>http://sww-it.ru/2011-03-21/520#comments</comments>
		<pubDate>Mon, 21 Mar 2011 17:10:02 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[rootkit]]></category>
		<category><![CDATA[драйвер]]></category>
		<category><![CDATA[юмор]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=520</guid>
		<description><![CDATA[<p align="justify">Пришлось мне тут анализировать один элементарный руткит, никак не срасталось у нашего анти-руткита кое-что с ним. Ерунда в принципе, бага не критичная, но разобраться все-таки стоило. В последнее время не часто выпадает возможность проанализировать что-либо, но тут повезло, можно немного отвлечься от процесса исследования/кодинга. </p> <p></p> <p align="justify">Для дальнейшего понимания сути поста надо запомнить [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Пришлось мне тут анализировать один элементарный руткит, никак не срасталось у нашего анти-руткита кое-что с ним. Ерунда в принципе, бага не критичная, но разобраться все-таки стоило. В последнее время не часто выпадает возможность проанализировать что-либо, но тут повезло, можно немного отвлечься от процесса исследования/кодинга.
</p>
<p><span id="more-520"></span></p>
<p align="justify">Для дальнейшего понимания сути поста надо запомнить то, что дата компиляции дроппера &#8212; <strong>27 февраля 2011 года</strong>, т.е. сэмпл далеко не старый.</p>
<p align="justify">В процессе <strong>динамического анализа</strong> я натолкнулся на полнейший отказ руткита работать, во-первых, под виртуальной машиной, а во-вторых, под виртуальной машиной с отладчиком ядра. Дроппер, кстати, также использовал парочку элементарных и устаревших проверок виртуальной машины, но не о дроппере речь.</p>
<p>Вот такой код я обнаружил в драйвере:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">char</span> __cdecl IsDebug<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
  UNICODE_STRING DestinationString<span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// [sp+4h] [bp-Ch]@4</span>
  PVOID Object<span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// [sp+Ch] [bp-4h]@4</span>
&nbsp;
  <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> KdDebuggerEnabledAddr <span style="color: #339933;">&amp;&amp;</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span>_BYTE <span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span>KdDebuggerEnabledAddr <span style="color: #009900;">&#41;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span>
  RtlInitUnicodeString<span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span>DestinationString<span style="color: #339933;">,</span> L<span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>Driver<span style="color: #000099; font-weight: bold;">\\</span>NTICE&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">!</span>ObReferenceObjectByName<span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span>DestinationString<span style="color: #339933;">,</span> 0x40u<span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> 0x1F01FFu<span style="color: #339933;">,</span> IoDriverObjectType<span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>Object<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    ObfDereferenceObject<span style="color: #009900;">&#40;</span>Object<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
  <span style="color: #b1b100;">return</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p align="justify">Способ, основанный на проверке переменной <strong>KdDebuggerEnabled</strong>, известен очень давно, однако, проверка на наличие в системе активного отладчика Soft(Win)Ice (наличие драйвера NTICE) &#8212; это что-то из ряда вон выходящее. Неужели авторы думают, что антивирусные лаборатории до сих пор используют этот устаревший инструмент?</p>
<p align="justify">Что ж, живы еще олдскул разработчики в родных селениях!</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2011-03-21%2F520&amp;title=IsDebug-%D0%BB%D0%B8%3F" id="wpa2a_4"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2011-03-21/520/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>TDSS. TDL-4</title>
		<link>http://sww-it.ru/2010-12-13/508?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tdss-tdl-4</link>
		<comments>http://sww-it.ru/2010-12-13/508#comments</comments>
		<pubDate>Mon, 13 Dec 2010 12:27:06 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[rootkit]]></category>
		<category><![CDATA[tdl]]></category>
		<category><![CDATA[tdss]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=508</guid>
		<description><![CDATA[<p>Прошло совсем немного времени после публикации нашей аналитической статьи о рутките TDSS. Как мы и предполагали, TDSS продолжает совершенствоваться. В июле-августе появилась совершенно новая модификация данного руткита — TDL-4, — которая способна заражать не только x86 (32-х битные) операционные системы, но и x64 (64-х битные). В данной статье мы расскажем о новом способе загрузки руткита, [...]]]></description>
			<content:encoded><![CDATA[<p>Прошло совсем немного времени после публикации нашей аналитической <a href="http://www.securelist.com/ru/analysis/208050642/TDSS">статьи</a> о рутките TDSS. Как мы и предполагали, TDSS продолжает совершенствоваться. В июле-августе появилась совершенно новая модификация данного руткита — TDL-4, — которая способна заражать не только x86 (32-х битные) операционные системы, но и x64 (64-х битные). В данной статье мы расскажем о новом способе загрузки руткита, а также о его возможности концептуально обойти защиту, встроенную в 64-х битные операционные системы Windows, — <a href="http://en.wikipedia.org/wiki/Kernel_Patch_Protection">PatchGuard</a> и механизм проверки целостности.</p>
<p><a href="http://www.securelist.com/ru/analysis/208050674/TDSS_TDL_4">Дальше</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2010-12-13%2F508&amp;title=TDSS.%20TDL-4" id="wpa2a_6"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2010-12-13/508/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Мирт и Гуава. Эпизоды. Свежие новости.</title>
		<link>http://sww-it.ru/2010-07-20/497?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25d0%25bc%25d0%25b8%25d1%2580%25d1%2582-%25d0%25b8-%25d0%25b3%25d1%2583%25d0%25b0%25d0%25b2%25d0%25b0-%25d1%258d%25d0%25bf%25d0%25b8%25d0%25b7%25d0%25be%25d0%25b4%25d1%258b-%25d1%2581%25d0%25b2%25d0%25b5%25d0%25b6%25d0%25b8%25d0%25b5-%25d0%25bd%25d0%25be%25d0%25b2%25d0%25be%25d1%2581%25d1%2582%25d0%25b8</link>
		<comments>http://sww-it.ru/2010-07-20/497#comments</comments>
		<pubDate>Tue, 20 Jul 2010 14:25:28 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[myrtus and guava]]></category>
		<category><![CDATA[rootkit]]></category>
		<category><![CDATA[stuxnet]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=497</guid>
		<description><![CDATA[<p>Мне нечего добавить, просто читайте по ссылке.</p> ]]></description>
			<content:encoded><![CDATA[<p>Мне нечего добавить, просто читайте по <a href="http://www.securelist.com/en/blog/2234/Stuxnet_and_stolen_certificates">ссылке</a>.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2010-07-20%2F497&amp;title=%D0%9C%D0%B8%D1%80%D1%82%20%D0%B8%20%D0%93%D1%83%D0%B0%D0%B2%D0%B0.%20%D0%AD%D0%BF%D0%B8%D0%B7%D0%BE%D0%B4%D1%8B.%20%D0%A1%D0%B2%D0%B5%D0%B6%D0%B8%D0%B5%20%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D0%B8." id="wpa2a_8"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2010-07-20/497/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Мирт и Гуава. Эпизоды</title>
		<link>http://sww-it.ru/2010-07-19/491?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25d0%25bc%25d0%25b8%25d1%2580%25d1%2582-%25d0%25b8-%25d0%25b3%25d1%2583%25d0%25b0%25d0%25b2%25d0%25b0-%25d1%258d%25d0%25bf%25d0%25b8%25d0%25b7%25d0%25be%25d0%25b4%25d1%258b</link>
		<comments>http://sww-it.ru/2010-07-19/491#comments</comments>
		<pubDate>Mon, 19 Jul 2010 18:45:52 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[myrtus and guava]]></category>
		<category><![CDATA[rootkit]]></category>
		<category><![CDATA[stuxnet]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=491</guid>
		<description><![CDATA[<p align="justify">Может быть вы еще не в курсе, но был найден довольно интересный вредоносный код, заточенный под промышленные системы. Драйверы-руткиты подписаны подписью компании Realtek, а распространяется вредоносная программа через уязвимость нулевого дня. На вопрос &#171;Где деньги?&#187; пока не ответил ни один вендор. На текущий момент в этой истории очень много белых пятен. Почему сэмпл был [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">Может быть вы еще не в курсе, но был найден довольно интересный вредоносный код, заточенный под промышленные системы. Драйверы-руткиты подписаны подписью компании Realtek, а распространяется вредоносная программа через уязвимость нулевого дня. На вопрос &#171;Где деньги?&#187; пока не ответил ни один вендор. На текущий момент в этой истории очень много белых пятен. Почему сэмпл был обнаружен компанией VBA? Почему обнаружен тогда, когда истекла подпись? <strong>Собственно говоря, где деньги?</strong></p>
<p align="justify">Пока мы в ЛК анализируем (я &#8212; руткит компоненты), можете прочесть первые 3 записи в блоге:</p>
<p><a href="http://www.securelist.com/ru/blog/34291/Mirt_i_guava_Epizod_1">Эпизод 1</a><br />
<a href="http://www.securelist.com/ru/blog/34293/Mirt_i_guava_Epizod_2">Эпизод 2</a><br />
<a href="http://www.securelist.com/ru/blog/34302/Mirt_i_guava_Epizod_3">Эпизод 3</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2010-07-19%2F491&amp;title=%D0%9C%D0%B8%D1%80%D1%82%20%D0%B8%20%D0%93%D1%83%D0%B0%D0%B2%D0%B0.%20%D0%AD%D0%BF%D0%B8%D0%B7%D0%BE%D0%B4%D1%8B" id="wpa2a_10"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2010-07-19/491/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TDSS</title>
		<link>http://sww-it.ru/2010-06-26/469?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tdss</link>
		<comments>http://sww-it.ru/2010-06-26/469#comments</comments>
		<pubDate>Fri, 25 Jun 2010 21:39:30 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[rootkit]]></category>
		<category><![CDATA[tdl]]></category>
		<category><![CDATA[tdss]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=469</guid>
		<description><![CDATA[<p>Руткит TDSS, появившийся еще в 2008 году, со временем стал намного популярнее нашумевшего руткита Rustock, а по своему функционалу и сложности для анализа практически приблизился к буткиту. В бутките использовался механизм заражения загрузочной области диска, приводивший к загрузке вредоносного кода раньше операционной системы. TDSS взял на вооружение функцию заражения драйверов, которые обеспечивают его загрузку и [...]]]></description>
			<content:encoded><![CDATA[<p><em>Руткит TDSS, появившийся еще в 2008 году, со временем стал намного популярнее нашумевшего руткита Rustock, а по своему функционалу и сложности для анализа практически приблизился к буткиту. В бутките использовался механизм заражения загрузочной области диска, приводивший к загрузке вредоносного кода раньше операционной системы. TDSS взял на вооружение функцию заражения драйверов, которые обеспечивают его загрузку и работу на самых ранних этапах работы ОС. Как следствие, идентификация руткита TDSS в системе является нелегкой задачей, а его лечение — серьезной проблемой.</em></p>
<p><a href="http://www.securelist.com/ru/analysis/208050642/TDSS">Анализ семейства TDSS</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2010-06-26%2F469&amp;title=TDSS" id="wpa2a_12"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2010-06-26/469/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Вернуть все как было</title>
		<link>http://sww-it.ru/2009-06-19/258?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25d0%25b2%25d0%25b5%25d1%2580%25d0%25bd%25d1%2583%25d1%2582%25d1%258c-%25d0%25b2%25d1%2581%25d0%25b5-%25d0%25ba%25d0%25b0%25d0%25ba-%25d0%25b1%25d1%258b%25d0%25bb%25d0%25be</link>
		<comments>http://sww-it.ru/2009-06-19/258#comments</comments>
		<pubDate>Fri, 19 Jun 2009 15:02:13 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[bootkit]]></category>
		<category><![CDATA[rootkit]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=258</guid>
		<description><![CDATA[<p style="text-align: justify;">Борьба с вредоносными программами осложнена не только тем, что их необходимо обнаружить, но и тем, что после обнаружения необходимо провести корректное лечение найденного вредоносного кода и его модулей. Детектируемые объекты совершенно не желают быть обнаруженными и уничтоженными, поэтому они активно сопротивляются лечению.</p> <p style="text-align: justify;">Мешать антивирусному продукту можно различными способами. Можно использовать руткит-технологии [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Борьба с вредоносными программами осложнена не только тем, что их необходимо обнаружить, но и тем, что после обнаружения необходимо провести корректное лечение найденного вредоносного кода и его модулей. Детектируемые объекты совершенно не желают быть обнаруженными и уничтоженными, поэтому они активно сопротивляются лечению.</p>
<p style="text-align: justify;">Мешать антивирусному продукту можно различными способами. Можно использовать руткит-технологии для предотвращения обнаружения и удаления, а можно следить за своими компонентами и, в случае удаления, восстанавливать их. Рассмотрим те, которые восстанавливают компоненты в случае их лечения антивирусным продуктом.</p>
<p><span id="more-258"></span></p>
<p style="text-align: justify;">Некоторые из  способов, которые используются в современных вредоносных программах под Windows:</p>
<ul>
<li>нотификации (информационные сообщения ОС) на изменение ключей реестра или значений реестра и восстановление их в случае лечения антивирусом;</li>
<li>следящий поток в цикле проверяющий ключи реестра, значения реестра или файлы;</li>
<li>второстепенный процесс, поток или внедренный код, следящий за основным процессом или потоком и перезапускающий его в случае уничтожения антивирусом;</li>
</ul>
<p style="text-align: justify;">Вышеперечисленные способы &#8212; основные, однако, вариаций существует намного больше.</p>
<p style="text-align: justify;">15 мая мы <a href="http://www.securelist.com/ru/analysis/204007655/Butkit_2009">представили</a> статью о вредоносной программе, вернее ее новой модификации, носящей кодовое название &#8216;буткит&#8217;. В бутките используется метод заражения загрузочной записи диска, но не обошлось и без использования способа восстановления MBR в случае лечения его антивирусным продуктом.</p>
<p style="text-align: justify;">Авторы данного руткита подошли к вопросу о перепроверке MBR с интересной стороны. На ранней стадии загрузки операционной системы запускается поток в режиме ядра, который в цикле проверяет наличие в памяти системного процесса explorer.exe и ожидает его завершения. После инициации перезагрузки операционная система завершает все процессы, в том числе и explorer.exe. Схематично этот код выглядит так:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;">NTSTATUS InitThreadWithExplorer<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
        <span style="color: #666666; font-style: italic;">// выделяем память под MBR</span>
        status <span style="color: #339933;">=</span> AllocateAndZeroMemory<span style="color: #009900;">&#40;</span> <span style="color: #339933;">&amp;</span>g_MainMbrBuf<span style="color: #339933;">,</span> <span style="color: #0000dd;">512</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' kdD'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// читаем зараженный MBR в глобальный буфер</span>
        status <span style="color: #339933;">=</span> SendIrpMjRead<span style="color: #009900;">&#40;</span> g_MainMbrBuf <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
&nbsp;
        <span style="color: #666666; font-style: italic;">// запускаем поток, который находит explorer.exe и ждет</span>
        status <span style="color: #339933;">=</span> RunSystemThread<span style="color: #009900;">&#40;</span> FindExplorerWaitAndCallOnReboot<span style="color: #339933;">,</span> ... <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
NTSTATUS FindExplorerWaitAndCallOnReboot<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
        <span style="color: #666666; font-style: italic;">// запускаем цикл поиска explorer.exe</span>
        <span style="color: #b1b100;">do</span>
        <span style="color: #009900;">&#123;</span>
                explorerpid <span style="color: #339933;">=</span> ReturnProcessPidByName<span style="color: #009900;">&#40;</span> L<span style="color: #ff0000;">&quot;explorer.exe&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #666666; font-style: italic;">// если найден explorer.exe, то выходим из цикла</span>
                <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> explorerpid <span style="color: #009900;">&#41;</span>
                        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// получаем объект процесса explorer.exe по его идентификатору</span>
        status <span style="color: #339933;">=</span> PsLookupProcessByProcessId<span style="color: #009900;">&#40;</span> explorerpid<span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>pProcess  <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// ожидаем завершения процесса explorer.exe</span>
        KeWaitForMultipleObjects<span style="color: #009900;">&#40;</span> <span style="color: #0000dd;">2</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>Objects<span style="color: #339933;">,</span> WaitAny<span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span> <span style="color: #009900;">&#41;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// если explorer.exe завершился, то вызываем функцию проверки MBR</span>
        CallOnReboot<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p style="text-align: justify;">Функция CallOnReboot сравнивает текущий MBR с эталоном (зараженной загрузочной записью). Делается это для того, чтобы на момент перезагрузки системы восстановить вылеченную антивирусом загрузочную запись:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;">NTSTATUS CallOnReboot<span style="color: #009900;">&#40;</span>...<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
        pMBR <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// выделяем память под MBR</span>
        status <span style="color: #339933;">=</span> AllocateAndZeroMemory<span style="color: #009900;">&#40;</span> <span style="color: #339933;">&amp;</span>pMBR<span style="color: #339933;">,</span> <span style="color: #0000dd;">512</span><span style="color: #339933;">,</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">' kdD'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// читаем MBR</span>
        status <span style="color: #339933;">=</span> SendIrpMjRead<span style="color: #009900;">&#40;</span> pMBR <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        i <span style="color: #339933;">=</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// запускаем цикл проверки</span>
        <span style="color: #b1b100;">do</span>
        <span style="color: #009900;">&#123;</span>
                k <span style="color: #339933;">=</span> i<span style="color: #339933;">;</span>
                l <span style="color: #339933;">=</span> i<span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #666666; font-style: italic;">// если какой-либо байт MBR отличается, то выходим из цикла</span>
                <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span>_BYTE <span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#40;</span>pMBR <span style="color: #339933;">+</span> i<span style="color: #009900;">&#41;</span> <span style="color: #339933;">!=</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span>_BYTE <span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#40;</span>g_MainMbrBuf <span style="color: #339933;">+</span> i<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span>
                        <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span>
&nbsp;
                k <span style="color: #339933;">=</span> i<span style="color: #339933;">++</span> <span style="color: #339933;">+</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span> l <span style="color: #339933;">&lt;</span> <span style="color: #0000dd;">432</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #666666; font-style: italic;">// если был найден отличающийся байт</span>
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span> k <span style="color: #339933;">&lt;</span> <span style="color: #0000dd;">432</span> <span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
                <span style="color: #666666; font-style: italic;">// копируем в pMBR зараженный MBR</span>
                memmove<span style="color: #009900;">&#40;</span> pMBR<span style="color: #339933;">,</span> g_MainMbrBuf<span style="color: #339933;">,</span> <span style="color: #0000dd;">432</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                <span style="color: #666666; font-style: italic;">// перезаписываем вылеченный MBR</span>
                status <span style="color: #339933;">=</span> SendIrpMjWrite<span style="color: #009900;">&#40;</span> pMBR <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p style="text-align: justify;">Для борьбы с таким вредоносным кодом каждый раз приходится придумывать что-нибудь оригинальное, но мы не унываем и продолжаем вас защищать.</p>
<p style="text-align: justify;">
<p style="text-align: justify;"><a href="http://www.securelist.com/ru/weblog/35129/Vernut_vse_kak_bylo" target="_blank">Оригинал</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2009-06-19%2F258&amp;title=%D0%92%D0%B5%D1%80%D0%BD%D1%83%D1%82%D1%8C%20%D0%B2%D1%81%D0%B5%20%D0%BA%D0%B0%D0%BA%20%D0%B1%D1%8B%D0%BB%D0%BE" id="wpa2a_14"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2009-06-19/258/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Буткит 2009</title>
		<link>http://sww-it.ru/2009-05-16/212?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25d0%25b1%25d1%2583%25d1%2582%25d0%25ba%25d0%25b8%25d1%2582-2009</link>
		<comments>http://sww-it.ru/2009-05-16/212#comments</comments>
		<pubDate>Sat, 16 May 2009 18:44:02 +0000</pubDate>
		<dc:creator>SWW</dc:creator>
				<category><![CDATA[Вирусный анализ]]></category>
		<category><![CDATA[bootkit]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[rootkit]]></category>

		<guid isPermaLink="false">http://sww-it.ru/?p=212</guid>
		<description><![CDATA[<p>Сергей Голованов</p> <p>Вячеслав Русаков</p> <p> </p> <p style="text-align: justify;">В 2008 году мы констатировали появление вредоносной программы Backdoor.Win32.Sinowal и расценивали ее как технологически крайне опасную.</p> <p style="text-align: justify;">Такая оценка была дана вследствие того, что авторы программы использовали самые продвинутые на тот момент технологии написания вирусов, включая основные:</p> «Индивидуальное» заражение пользователей взломанных сайтов с помощью большого количества [...]]]></description>
			<content:encoded><![CDATA[<p><span><span class="med_news"><strong>Сергей Голованов</strong></span></span></p>
<p><span><span class="med_news"><strong>Вячеслав Русаков</strong></span></span></p>
<p><span><span class="med_news"><strong><br />
</strong></span></span></p>
<p style="text-align: justify;"><span style="color: #000000;">В 2008 году мы констатировали появление вредоносной программы Backdoor.Win32.Sinowal и <span style="color: #000000;">расценивали ее</span> как технологически крайне опасную.</span></p>
<p style="text-align: justify;"><span style="color: #000000;">Такая оценка была дана вследствие того, что авторы программы использовали самые продвинутые на тот момент технологии написания вирусов, включая основные:</span></p>
<ol style="text-align: justify;">
<li><span style="color: #000000;">«Индивидуальное» заражение пользователей взломанных сайтов с помощью большого количества разных уязвимостей, включая некоторые из разряда «0-day». </span></li>
<li><span style="color: #000000;"> Использование передовых rootkit-технологий и методов загрузочных вирусов для заражения MBR компьютера пользователя. Методы заражения загрузочных секторов дисков были очень популярны на заре компьютерных вирусов; сейчас произошло возрождение старой технологии, но уже на новом уровне. Проблема усугубляется тем, что многие недавно появившиеся антивирусные средства защиты просто не умеют проверять MBR, так как считалось, что данная угроза уже давно не актуальна. </span></li>
<li><span style="color: #000000;">Использование технологии постоянной миграции серверов управления и заражения (изменение их IP-адреса и доменного имени). Зараженные компьютеры использовали специальный алгоритм создания доменного имени для поиска своих управляющих центров. Впоследствии аналогичная технология была использована во вредоносных программах семейства Kido (Conficker). </span></li>
</ol>
<p style="text-align: justify;"><span style="color: #000000;">Эти вредоносные методы и технологии за год стали «классическими» и теперь используются во многих самых разнообразных вредоносных программах. Разработчики самого буткита тем временем не остановились на достигнутом и пошли дальше в создании, реализации и продвижении своих технологий. </span></p>
<p style="text-align: justify;"><span style="color: #000000;">Таким образом, на сегодняшний день буткит является самой продвинутой вредоносной программой: скрытой и не обнаруживаемой большинством современных антивирусных программ. </span></p>
<p style="text-align: justify;"><span style="color: #000000;">В конце марта 2009 года эксперты «Лаборатории Касперского» обнаружили распространение в интернете новой модификации буткита. Результаты анализа его работы и способа распространения представлены в <a href="http://www.viruslist.com/ru/analysis?pubid=204007655" target="_blank">данной статье</a>.</span></p>
<p style="text-align: justify;">
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fsww-it.ru%2F2009-05-16%2F212&amp;title=%D0%91%D1%83%D1%82%D0%BA%D0%B8%D1%82%202009" id="wpa2a_16"><img src="http://sww-it.ru/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://sww-it.ru/2009-05-16/212/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

