<?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>network &#8211; PT ESC</title>
	<atom:link href="/tag/network/feed/index.xml" rel="self" type="application/rss+xml" />
	<link>/</link>
	<description></description>
	<lastBuildDate>Mon, 05 Oct 2026 12:11:24 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>/wp-content/uploads/2026/09/cropped-cropped-large_icon-32x32.png</url>
	<title>network &#8211; PT ESC</title>
	<link>/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Препарируем сетевой трафик с помощью ML в поисках новых вредоносов</title>
		<link>/dissecting-network-traffic-with-ml-in-search-of-new-malware/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Thu, 05 Feb 2026 16:54:42 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[avlab]]></category>
		<category><![CDATA[ml]]></category>
		<category><![CDATA[network]]></category>
		<guid isPermaLink="false">/%d0%bf%d1%80%d0%b5%d0%bf%d0%b0%d1%80%d0%b8%d1%80%d1%83%d0%b5%d0%bc-%d1%81%d0%b5%d1%82%d0%b5%d0%b2%d0%be%d0%b9-%d1%82%d1%80%d0%b0%d1%84%d0%b8%d0%ba-%d1%81-%d0%bf%d0%be%d0%bc%d0%be%d1%89%d1%8c%d1%8e-ml/</guid>

					<description><![CDATA[Препарируем сетевой трафик с помощью ML в поисках новых вредоносов 📖 🧪 Мы — команда отдела сетевой экспертизы антивирусной лаборатории ESC и команда машинного обучения — однажды уже построили ML-модель на сетевом…]]></description>
										<content:encoded><![CDATA[<p><strong>Препарируем сетевой трафик с помощью ML в поисках новых вредоносов</strong> 📖</p>
<p>🧪 Мы — команда отдела сетевой экспертизы антивирусной лаборатории ESC и команда машинного обучения — однажды уже построили ML-модель на сетевом трафике, обучили ее на реальных сетевых сессиях и запустили в песочнице PT Sandbox для усиления возможностей по обнаружению вредоносов. Но мы решили не останавливаться на достигнутом — провели серию новых экспериментов, расширили набор входных признаков и протестировали модель на более сложных сценариях.</p>
<p>👾 Благодаря обновлению модель уже успела поймать несколько ранее неизвестных образцов: новую версию бэкдора Oyster, загрузчик APT GOFFEE, несколько стилеров (например, JustAskJacky) и еще ряд небольших, но подозрительных загрузчиков.</p>
<p>💡 Этот опыт подтверждает, что машинное обучение — отличный помощник традиционным сигнатурным решениям: оно видит скрытые паттерны и повышает общую детектируемость вредоносных сетевых сценариев.</p>
<p>Обо всем этом и не только рассказали <a href="https://habr.com/ru/companies/pt/articles/993058/" rel="noopener" target="_blank">в нашей статье на Хабре</a>.</p>
<p><span class="hashtag">#network</span> <span class="hashtag">#avlab</span> <span class="hashtag">#ml</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Новое окно в темном режиме</title>
		<link>/new-window-in-dark-mode/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Fri, 26 Dec 2025 14:26:59 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[avlab]]></category>
		<category><![CDATA[C2]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Phishing]]></category>
		<guid isPermaLink="false">/%d0%bd%d0%be%d0%b2%d0%be%d0%b5-%d0%be%d0%ba%d0%bd%d0%be-%d0%b2-%d1%82%d0%b5%d0%bc%d0%bd%d0%be%d0%bc-%d1%80%d0%b5%d0%b6%d0%b8%d0%bc%d0%b5/</guid>

					<description><![CDATA[Новое окно в темном режиме 🫣 В процессе мониторинга новых сетевых угроз в отделе сетевой экспертизы был замечен подозрительный трафик, который порождался файлом INTIMACAO_2025_006647.exe. Он маскировался под PDF и в переводе с…]]></description>
										<content:encoded><![CDATA[<p><strong>Новое окно в темном режиме</strong> 🫣</p>
<p>В процессе мониторинга новых сетевых угроз в отделе сетевой экспертизы был замечен подозрительный трафик, который порождался файлом <code>INTIMACAO_2025_006647.exe.</code> Он маскировался под PDF и в переводе с португальского означал «Вызов в суд» (<em>скриншот 1</em>). </p>
<p>После запуска на хосте открывался документ-приманка и инициировалось сетевое взаимодействие с API Google, причем внешне оно было похоже на легитимные запросы, а не на типичный обмен с C2. Эта история нас заинтриговала, поэтому мы решили углубиться в анализ образца и понять, что именно он делает и какую роль в этой схеме играют неожиданные сетевые запросы к Google 🔍</p>
<p><strong>Сразу перейдем к поведенческому анализу</strong>. После запуска в директорию <code>/Temp</code> дропались несколько PowerShell-скриптов: <code>Clean_policies</code>, <code>Get_token</code> и <code>Apply_cbcm</code>. Суть работы первого заключалась в подготовке зараженной машины — зачистке реестра от уже существующих локальных политик и настроек различных Chromium-браузеров, а также перезапуске браузерных процессов для оперативного применения внесенных изменений (<em>скриншот 2</em>). После этого <code>Get_token.ps1</code> обращался к удаленному серверу и вытягивал оттуда некий токен (<em>скриншот 3</em>). В завершение третий скрипт, <code>Apply_cbcm</code> (<em>скриншот 4</em>), записывал полученный токен в политики Chrome на уровне системного реестра.</p>
<p>🙆 <strong>После более внимательного взгляда на имена параметров все стало достаточно прозрачно:</strong> вредонос проставлял <code>CloudManagementEnrollmentToken</code> и включал <code>CloudPolicyOverridesPlatformPolicy</code>, то есть явно переключал браузер на приоритет облачных политик. Такой набор названий практически прямым текстом указывал на использование <strong>Chrome Browser Cloud Management</strong> (судя по <a href="https://cloud.google.com/blog/products/chrome-enterprise/4-more-reasons-use-chromes-cloud-based-management" rel="noopener" target="_blank">блогу</a> Google Cloud, этот механизм должен был бороться со злом, а не примкнуть к нему) и на то, что основная цель здесь — привязать браузер к удаленной консоли управления, созданной злоумышленником.</p>
<p>Именно последствия работы этих скриптов мы в первую очередь и увидели в сетевом дампе (<em>скриншот 5</em>). Сначала обычным GET-запросом на C2 <code>servidorunico.com</code> возвращался тот самый enrollment-токен. Далее, после того как значение оказывалось прописано в реестре, браузер автоматически поднимал следующий этап цепочки — сам инициировал регистрацию в инфраструктуре Google и отправлял POST на API-эндпоинт с параметром <code>request=register_browser</code>. Ключевой маркер в этом запросе находился в заголовке Authorization, где токен передавался как <code>GoogleEnrollmentToken</code>, и именно это превращало внешне легитимный трафик к Google в индикатор привязки браузера к удаленному облачному управлению.</p>
<p>🌐 Такая тактика дает злоумышленнику устойчивый рычаг управления браузером. Как только пользователь «попался», атакующий получает возможность централизованно развернуть вредоносные политики и расширения либо настроить прокси для перехвата трафика. Самое неприятное — часть активности выглядит как легитимное администрирование, поэтому без контекста такую компрометацию довольно легко пропустить.</p>
<p><strong>Stay tuned and happy hunting!</strong></p>
<p>IoCs:</p>
<pre><code>SHA256: 4442e1b545f0a571af113b0cc7455ecba1a603c81bbf84a52b9e61d332f97233
C2: servidorunico.com</code></pre>
<figure class="wp-block-image"><img width="832" height="885" src="/wp-content/uploads/2025/12/photo_465@26-12-2025_14-26-59.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/12/photo_465@26-12-2025_14-26-59.jpg 832w, /wp-content/uploads/2025/12/photo_465@26-12-2025_14-26-59-282x300.jpg 282w, /wp-content/uploads/2025/12/photo_465@26-12-2025_14-26-59-768x817.jpg 768w" sizes="auto, (max-width: 832px) 100vw, 832px" /></figure>
<figure class="wp-block-image"><img width="1024" height="501" src="/wp-content/uploads/2025/12/photo_466@26-12-2025_14-26-59-1024x501.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/12/photo_466@26-12-2025_14-26-59-1024x501.jpg 1024w, /wp-content/uploads/2025/12/photo_466@26-12-2025_14-26-59-300x147.jpg 300w, /wp-content/uploads/2025/12/photo_466@26-12-2025_14-26-59-768x376.jpg 768w, /wp-content/uploads/2025/12/photo_466@26-12-2025_14-26-59.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="516" src="/wp-content/uploads/2025/12/photo_467@26-12-2025_14-26-59-1024x516.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/12/photo_467@26-12-2025_14-26-59-1024x516.jpg 1024w, /wp-content/uploads/2025/12/photo_467@26-12-2025_14-26-59-300x151.jpg 300w, /wp-content/uploads/2025/12/photo_467@26-12-2025_14-26-59-768x387.jpg 768w, /wp-content/uploads/2025/12/photo_467@26-12-2025_14-26-59.jpg 1274w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="444" src="/wp-content/uploads/2025/12/photo_468@26-12-2025_14-26-59-1024x444.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/12/photo_468@26-12-2025_14-26-59-1024x444.jpg 1024w, /wp-content/uploads/2025/12/photo_468@26-12-2025_14-26-59-300x130.jpg 300w, /wp-content/uploads/2025/12/photo_468@26-12-2025_14-26-59-768x333.jpg 768w, /wp-content/uploads/2025/12/photo_468@26-12-2025_14-26-59.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p><span class="hashtag">#network</span> <span class="hashtag">#C2</span> <span class="hashtag">#phishing</span> <span class="hashtag">#AVLab</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>🦈Смотрим «под капот» защищенных соединений в Wireshark. Часть 2: протоколы Windows</title>
		<link>/looking-under-the-hood-of-secure-connections-in-wireshark-part-2-windows-protocols/</link>
		
		<dc:creator><![CDATA[oUth0R]]></dc:creator>
		<pubDate>Tue, 14 Oct 2025 13:26:28 +0000</pubDate>
				<category><![CDATA[Incident Response]]></category>
		<category><![CDATA[dfir]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[tips]]></category>
		<guid isPermaLink="false">http://localhost:8080/%f0%9f%a6%88/</guid>

					<description><![CDATA[В первой части мы разбирали декрипт TLS-соединений, которые часто используются в интернете. Но если переместиться внутрь корпоративной среды, там будут преобладать другие протоколы — SMB, LDAP и DCERPC, — и все они…]]></description>
										<content:encoded><![CDATA[<p><br />В первой части мы <a href="https://t.me/ptescalator/508" target="_blank" rel="noopener">разбирали</a> декрипт TLS-соединений, которые часто используются в интернете. Но если переместиться внутрь корпоративной среды, там будут преобладать другие протоколы — SMB, LDAP и DCERPC, — и все они имеют функцию шифрования содержимого своих запросов.</p>
<p>Например, эта функция появилась в протоколе SMB версии 3, для большинства DCERPC-соединений используется уровень аутентификации Packet Privacy, а сообщения протокола LDAP шифруются при включенной подписи (LDAP Signing).</p>
<p>У них есть кое-что общее: ключ шифрования Session Key в конечном счете генерируется на основе пароля учетной записи пользователя или ключа учетной записи устройства. Правда, сам алгоритм дешифрования сильно отличается в зависимости от протокола (NTLM или Kerberos).</p>
<p><strong>1️⃣ NTLM-аутентификация<br /></strong><br />Самый простой случай: для расшифрования нам понадобится только пароль пользователя. Чтобы указать его в Wireshark, необходимо открыть Edit → Preferences, затем в параметрах протокола NTLMSSP вписать пароль в поле NT Password. Теперь рядом с зашифрованными блоками появятся расшифрованные (<em>скриншот 1</em>).</p>
<p><strong>2️⃣ Kerberos<br /></strong><br />Для расшифрования сессий с аутентификацией Kerberos необходим пароль либо учетной записи пользователя, либо сервисной учетной записи, поскольку оба эти пароля участвуют в формировании сессионного ключа. По сути, нам сначала необходимо расшифровать значение сессионного ключа внутри Kerberos, а затем использовать его для декрипта SMB или других протоколов. Сначала необходимо сгенерировать keytab-файл.</p>
<p><strong>Генерация keytab-файла по паролю пользователя</strong></p>
<p>Из Kerberos-ответа AS-REP узнаем алгоритм шифрования и значение соли по формуле <code>&lt;REALM&gt;</code> + <code>&lt;cname&gt;</code>. В нашем случае они будут равны <code>aes256-cts-hmac-sha1-96</code> и <code>ATTDETT.STFo_walsh</code> соответственно, причем важно обратить внимание на регистр (<em>скр. 2</em>).</p>
<p>С помощью Linux-утилиты <code>kutils</code> добавляем запись для нужного пользователя, используя команду <code>addent</code> с параметром <code>-password</code>. Параметры указываем как в команде ниже, причем параметр -k (Key Version Number, kvno) может быть любым числом. Сохраняем keytab при помощи команды <code>wkt</code> (<em>скр. 3</em>).</p>

<pre class="wp-block-code"><span><code lang="yaml" class="hljs language-yaml language-yaml"><span class="hljs-attr">ktutil:</span> <span class="hljs-string">addent</span> <span class="hljs-string">-password</span> <span class="hljs-string">-p</span> <span class="hljs-string">o_walsh@ATTDETT.STF</span> <span class="hljs-string">-k</span> <span class="hljs-number">2</span> <span class="hljs-string">-e</span> <span class="hljs-string">aes256-cts-hmac-sha1-96</span>
</code></span></pre>

<p><strong>Генерация keytab-файла по ключу сервисной УЗ</strong></p>
<p>Сессионный ключ в билете TGS может быть расшифрован также при помощи ключа сервисной учетной записи. Это полезно, если мы хотим расшифровывать соединение с сервисом любых пользователей. Пароль сервисных учетных записей, как правило, совпадает с паролем учетной записи устройства — он очень сложный и генерируется автоматически каждые 30 дней.</p>
<p>Из TGS-ответа так же достаем алгоритм шифрования и с помощью той же утилиты <code>kutils</code> добавляем запись. Разница лишь в том, что вместо пароля используем параметр <code>-key</code> с ключом сервисной учетной записи, получить который можно, например, с помощью скрипта secretsdump из фреймворка Impacket. Параметр -p (principal) для Wireshark неважен, можем указать любые значения -p и -k (<em>скр. 4</em>).</p>

<pre class="wp-block-code"><span><code lang="yaml" class="hljs language-yaml language-yaml"><span class="hljs-attr">ktutil:</span> <span class="hljs-string">addent</span> <span class="hljs-string">-key</span> <span class="hljs-string">-p</span> <span class="hljs-string">something@RANDOM.RND</span> <span class="hljs-string">-k</span> <span class="hljs-number">666</span> <span class="hljs-string">-e</span> <span class="hljs-string">aes256-cts-hmac-sha1-96</span>
</code></span></pre>

<p><strong>Как использовать полученный keytab-файл?</strong></p>
<p>В Wireshark включаем параметр Try to decrypt Kerberos blobs:</p>
<p>Edit → Preferences → Protocols → KRB5 → Try to decrypt Kerberos blobs</p>
<p>Чтобы указать keytab-файл в Wireshark, необходимо открыть Edit → Preferences, затем в параметрах протокола KRB5 выбрать файл Kerberos keytab file. Часть полей будут отображаться нерасшифрованными — это нормально. Затем приступаем к дешифровке SMB3.</p>
<p><strong>SMB3</strong></p>
<p>Нам понадобится тот самый сессионный ключ. Найти его можно в поле keyvalue в пакетах TGS-REP или AP-REQ. Затем берем один из интересующих нас пакетов SMB3 и копируем из хедера Session ID (<em>как на скр. 5, 6</em>).</p>
<p>Указываем сессионный ключ и Session ID в поле Secret session key в Wireshark в параметрах протокола SMB2:</p>
<p>Edit → Preferences → Protocols → SMB2 → Secret session key for decryption</p>
<p>Бинго! Получаем расшифрованный SMB3 (<em>скр. 7</em>). Тот же самый алгоритм работает и для дешифрования других протоколов (DCERPC, LDAP и т. д.).</p>
<figure class="wp-block-image"><img width="1024" height="461" src="/wp-content/uploads/2025/10/photo_397@14-10-2025_13-26-28-1024x461.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_397@14-10-2025_13-26-28-1024x461.jpg 1024w, /wp-content/uploads/2025/10/photo_397@14-10-2025_13-26-28-300x135.jpg 300w, /wp-content/uploads/2025/10/photo_397@14-10-2025_13-26-28-768x346.jpg 768w, /wp-content/uploads/2025/10/photo_397@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="651" src="/wp-content/uploads/2025/10/photo_398@14-10-2025_13-26-28-1024x651.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_398@14-10-2025_13-26-28-1024x651.jpg 1024w, /wp-content/uploads/2025/10/photo_398@14-10-2025_13-26-28-300x191.jpg 300w, /wp-content/uploads/2025/10/photo_398@14-10-2025_13-26-28-768x488.jpg 768w, /wp-content/uploads/2025/10/photo_398@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="651" src="/wp-content/uploads/2025/10/photo_399@14-10-2025_13-26-28-1024x651.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_399@14-10-2025_13-26-28-1024x651.jpg 1024w, /wp-content/uploads/2025/10/photo_399@14-10-2025_13-26-28-300x191.jpg 300w, /wp-content/uploads/2025/10/photo_399@14-10-2025_13-26-28-768x488.jpg 768w, /wp-content/uploads/2025/10/photo_399@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="651" src="/wp-content/uploads/2025/10/photo_400@14-10-2025_13-26-28-1024x651.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_400@14-10-2025_13-26-28-1024x651.jpg 1024w, /wp-content/uploads/2025/10/photo_400@14-10-2025_13-26-28-300x191.jpg 300w, /wp-content/uploads/2025/10/photo_400@14-10-2025_13-26-28-768x488.jpg 768w, /wp-content/uploads/2025/10/photo_400@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="646" src="/wp-content/uploads/2025/10/photo_401@14-10-2025_13-26-28-1024x646.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_401@14-10-2025_13-26-28-1024x646.jpg 1024w, /wp-content/uploads/2025/10/photo_401@14-10-2025_13-26-28-300x189.jpg 300w, /wp-content/uploads/2025/10/photo_401@14-10-2025_13-26-28-768x485.jpg 768w, /wp-content/uploads/2025/10/photo_401@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="646" src="/wp-content/uploads/2025/10/photo_402@14-10-2025_13-26-28-1024x646.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_402@14-10-2025_13-26-28-1024x646.jpg 1024w, /wp-content/uploads/2025/10/photo_402@14-10-2025_13-26-28-300x189.jpg 300w, /wp-content/uploads/2025/10/photo_402@14-10-2025_13-26-28-768x485.jpg 768w, /wp-content/uploads/2025/10/photo_402@14-10-2025_13-26-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p><span class="hashtag">#dfir</span> <span class="hashtag">#tip</span> <span class="hashtag">#network</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Смотрим под капот защищенных соединений в Wireshark. Часть 1: TLS</title>
		<link>/looking-under-the-hood-of-secure-connections-in-wireshark-part-1-tls/</link>
		
		<dc:creator><![CDATA[oUth0R]]></dc:creator>
		<pubDate>Mon, 06 Oct 2025 15:14:50 +0000</pubDate>
				<category><![CDATA[Incident Response]]></category>
		<category><![CDATA[dfir]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[tls]]></category>
		<guid isPermaLink="false">http://localhost:8080/%d1%81%d0%bc%d0%be%d1%82%d1%80%d0%b8%d0%bc-%d0%bf%d0%be%d0%b4-%d0%ba%d0%b0%d0%bf%d0%be%d1%82-%d0%b7%d0%b0%d1%89%d0%b8%d1%89%d0%b5%d0%bd%d0%bd%d1%8b%d1%85-%d1%81%d0%be%d0%b5%d0%b4%d0%b8%d0%bd%d0%b5/</guid>

					<description><![CDATA[🦈 Смотрим под капот защищенных соединений в Wireshark. Часть 1: TLS Нашим сетевым экспертам часто бывает нужно расшифровывать трафик TLS-соединений и проанализировать защищенное содержимое. Современные алгоритмы TLS уже очень давно используют схему…]]></description>
										<content:encoded><![CDATA[🦈 <strong>Смотрим под капот защищенных соединений в Wireshark. Часть 1: TLS</strong><br />
<br />
Нашим сетевым экспертам часто бывает нужно расшифровывать трафик TLS-соединений и проанализировать защищенное содержимое. Современные алгоритмы TLS уже очень давно используют схему Ephemeral Diffie–Hellman (EDH), которая не позволяет расшифровывать TLS-сессии закрытым ключом RSA. <br />
<br />
Теперь для расшифровки необходимо собирать так называемые сессионные ключи (session keys) средствами самого TLS-клиента или сервера. И за много лет мы собрали несколько лайфхаков, которые работают для большинства анализируемых приложений. Поехали!<br />
<br />
<strong>1️⃣ Браузеры и консольные утилиты</strong><br />
<br />
Для расшифровки браузерных TLS-сессий или консольных утилит, например curl, необходимо установить переменную окружения SSLKEYLOG. Это делается при помощи команды <code>export SSLKEYLOGFILE=/path/to/keylog.log</code> для Linux-систем или через переменные среды (<em>скриншоты 1 и 2</em>) в системах Windows. Теперь браузеры и утилиты будут сохранять сессионные ключи в указанном файле.<br />
<br />
<strong>2️⃣ Приложения на Go</strong><br />
<br />
Настройка дампа ключей в подобных приложениях потребует небольшого патча. Необходимо либо добавить эти строки в код самого приложения (<a href="https://pkg.go.dev/crypto/tls#example-Config-KeyLogWriter" rel="noopener" target="_blank">пример</a>).<br />
<br />
<pre class="wp-block-code"><span><code lang="plaintext" class="hljs language-plaintext language-plaintext">w, err := os.OpenFile("/path/to/SSLKEYLOGFILE", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600)
config := &amp;tls.Config{KeyLogWriter: w}
</code></span></pre><br />
<br />
Либо, если в файле явно не определяется tls config, но в самой программе или в библиотеке используется стандартная библиотека crypto/go, можно задать sslkeylog-файл прямо в ней. Мы привели пример diff-файла (<a href="https://disk.yandex.ru/d/MMcWIr9YlM8FAw" rel="noopener" target="_blank">common_go.diff</a>) для <code>go version go1.24.4 linux/amd64</code>. После этого достаточно задать путь к keylog-файлу в переменной окружения SSLKEYLOGFILE:<br />
<br />
<pre class="wp-block-code"><span><code lang="bash" class="hljs language-bash language-bash"><span class="hljs-built_in">export</span> SSLKEYLOGFILE=/path/to/keylog.log
</code></span></pre><br />
<br />
<strong>3️⃣ Приложения на Python</strong><br />
<br />
Настройка дампа ключей также работает через установку переменной окружения SSLKEYLOGFILE:<br />
<br />
<pre class="wp-block-code"><span><code lang="bash" class="hljs language-bash language-bash"><span class="hljs-built_in">export</span> SSLKEYLOGFILE=/path/to/keylog.log
python main.py
</code></span></pre><br />
<br />
<strong>4️⃣ Приложения на Node.js</strong><br />
<br />
Необходимо просто запустить приложение с ключом tls-keylog<br />
<br />
<pre class="wp-block-code"><span><code lang="plaintext" class="hljs language-plaintext language-plaintext">node --tls-keylog=/path/to/keylog.log program.js
</code></span></pre><br />
<br />
Либо задать переменную окружения NODE_OPTIONS и запустить программу в той же консоли:<br />
<br />
<pre class="wp-block-code"><span><code lang="bash" class="hljs language-bash language-bash"><span class="hljs-built_in">export</span> NODE_OPTIONS=--tls-keylog=/path/to/keylog.log
</code></span></pre><br />
<br />
<strong>5️⃣ Xray Core</strong><br />
<br />
Другие проприетарные приложения могут использовать свои собственные параметры для дампа сессионных ключей. Особенно те, которые реализуют TLS-соединения по-своему. Xray — это целый фреймворк, который поддерживает множество VPN-протоколов, включая VMess, VLESS и XTLS. Благодаря разработчикам ядра Xray собрать сессионные ключи не составит труда. Нужно всего лишь добавить ключ masterKeyLog в конфигурацию исходящего (outbound) подключения.<br />
<br />
<pre class="wp-block-code"><span><code lang="plaintext" class="hljs language-plaintext language-plaintext">"realitySettings": {
  "serverName": "yahoo.com",
  "publicKey": "publicKey",
  "shortId": "shortId",
  "fingerprint": "chrome",
  "spiderX": "/",
  "masterKeyLog": "/path/to/keylog"
}
</code></span></pre><br />
<br />
Большинство конфигураций Xray задается при помощи URL, для добавления ключа необходимо поправить JSON-конфигурацию внутри клиента или сервера уже после добавления ключа.<br />
<br />
<strong>Как использовать полученные session keys</strong><br />
<br />
Чтобы расшифровать TLS-сессию в Wireshark, необходимо открыть Edit → Preferences, затем в настройках протокола TLS выбрать файл Master-Secret log filename (<em>скриншот 3, результат на скриншоте 4</em>).<br />
<br />
☠️ Ну а в следующей части мы расскажем о расшифровке зашифрованного содержимого протоколов SMB/LDAP/DCERPC с NTLM- и Kerberos-аутентификацией. <br />
<br />
Делитесь вашими собственными лайфхаками в комментариях ⬇️

<figure class="wp-block-image"><img width="1024" height="439" src="/wp-content/uploads/2025/10/photo_393@06-10-2025_15-14-50-1024x439.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_393@06-10-2025_15-14-50-1024x439.jpg 1024w, /wp-content/uploads/2025/10/photo_393@06-10-2025_15-14-50-300x129.jpg 300w, /wp-content/uploads/2025/10/photo_393@06-10-2025_15-14-50-768x330.jpg 768w, /wp-content/uploads/2025/10/photo_393@06-10-2025_15-14-50.jpg 1172w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="824" src="/wp-content/uploads/2025/10/photo_394@06-10-2025_15-14-50-1024x824.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_394@06-10-2025_15-14-50-1024x824.jpg 1024w, /wp-content/uploads/2025/10/photo_394@06-10-2025_15-14-50-300x241.jpg 300w, /wp-content/uploads/2025/10/photo_394@06-10-2025_15-14-50-768x618.jpg 768w, /wp-content/uploads/2025/10/photo_394@06-10-2025_15-14-50.jpg 1102w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="634" src="/wp-content/uploads/2025/10/photo_395@06-10-2025_15-14-50-1024x634.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/10/photo_395@06-10-2025_15-14-50-1024x634.jpg 1024w, /wp-content/uploads/2025/10/photo_395@06-10-2025_15-14-50-300x186.jpg 300w, /wp-content/uploads/2025/10/photo_395@06-10-2025_15-14-50-768x475.jpg 768w, /wp-content/uploads/2025/10/photo_395@06-10-2025_15-14-50.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>

<br />
<br />
<span class="hashtag">#dfir</span> <span class="hashtag">#tip</span> <span class="hashtag">#tls</span> <span class="hashtag">#network</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Как создать правила для сетевого трафика под будущую угрозу</title>
		<link>/how-to-create-rules-for-network-traffic-for-a-future-threat/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Fri, 26 Sep 2025 16:03:27 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[detect]]></category>
		<category><![CDATA[hunt]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[rules]]></category>
		<category><![CDATA[suricata]]></category>
		<guid isPermaLink="false">/%d0%ba%d0%b0%d0%ba-%d1%81%d0%be%d0%b7%d0%b4%d0%b0%d1%82%d1%8c-%d0%bf%d1%80%d0%b0%d0%b2%d0%b8%d0%bb%d0%b0-%d0%b4%d0%bb%d1%8f-%d1%81%d0%b5%d1%82%d0%b5%d0%b2%d0%be%d0%b3%d0%be-%d1%82%d1%80%d0%b0%d1%84/</guid>

					<description><![CDATA[Как создать правила для сетевого трафика под будущую угрозу 🤨 Об этом на этой неделе в Китае во время третьего саммита по кибербезопасности, в рамках которого прошла шестая международная антивирусная конференция, рассказала…]]></description>
										<content:encoded><![CDATA[<p><strong>Как создать правила для сетевого трафика под будущую угрозу </strong><strong>🤨</strong></p>
<p>Об этом на этой неделе в Китае во время третьего саммита по кибербезопасности, в рамках которого прошла шестая международная антивирусная конференция, <a href="https://t.me/Positive_Technologies/3790" rel="noopener" target="_blank">рассказала</a> <strong>Ксения Наумова</strong>, старший специалист отдела сетевой экспертизы антивирусной лаборатории PT ESC. В канале делимся подробностями из доклада 🍸</p>
<p>Достаточно значимая часть работы аналитика сетевого трафика при анализе вредоносного ПО заключается в написании детектирующей сигнатурной логики для обнаружения конкретных образцов ВПО в сетевом трафике. </p>
<p>Экзактовые сигнатуры обладают одним несомненным преимуществом — они ловят ровно те вредоносные образцы, на которые были написаны, но это же является их главной слабостью: при даже небольшом изменении какого-либо компонента сетевого взаимодействия правила перестают срабатывать.</p>
<p>Мы решили, что этот недуг можно смело обернуть в преимущество: сигнатуры могут ловить не только экзактовые вредоносы, но и аномальное поведение, которое эти образцы порождают.</p>
<p><strong>Что может являться интересующей нас аномалией?</strong></p>
<p>➡️ Необычные размеры пакетов;<br />
➡️ неизвестные протоколы;<br />
➡️ подозрительные DNS-запросы / подозрительные TLD в DNS;<br />
➡️ скачки трафика / задержки;<br />
➡️ нарушения RFC;<br />
➡️ применение обфускации, кодирования, шифрования;<br />
➡️ и многое другое…</p>
<p>Мы провели небольшой анализ существующих правил на детектирование аномалий в наборе опенсорсных сигнатур Emerging Threats — HUNTING (<em>скриншот 1</em>):</p>
<p>➡️ ~510 правил на XOR-шифрование HTTP-запросов;<br />
➡️ ~50 правил на кодированные в Base64 данные;<br />
➡️ ~50 правил на подозрительные TLD в DNS;<br />
➡️ правила на содержимое в ZIP, эксфильтрацию и т. п.</p>
<p><strong>Показательный пример удачного hunting-правила:</strong></p>
<pre><code>alert http $HOME_NET any -&gt; $EXTERNAL_NET any (sid: 2027117; msg:&quot;ET HUNTING Suspicious POST with Common Windows Process Names - Possible Process List Exfiltration&quot;; flow:established,to_server; http.method; content:&quot;POST&quot;; http.request_body; content:&quot;csrss.exe&quot;; content:&quot;explorer.exe&quot;; fast_pattern; content:&quot;svchost.exe&quot;; content:&quot;lsass.exe&quot;; ...)
</code></pre>
<p>А на <em>скриншоте 2</em> — пример такого подозрительного трафика.</p>
<p>Однако искать аномалии можно не только с помощью открытых правил, но и самостоятельно — например, нарушения RFC, конкретно RFC 2616, определяющего протокол HTTP (<em>скриншот 3</em>). Можно поискать HTTP-запросы, у которых заголовок Referer не содержит схему:</p>
<pre><code>alert http any any -&gt; any any (msg: &quot;SUSPICIOUS [PTsecurity] HTTP header Referer RFC2616 violation&quot;; flow: established, to_server; content: &quot;Referer|3a|&quot;; http_header; content: !&quot;Referer|3a 20|http&quot;; http_header; ...)
</code></pre>
<p>В наши сети попадал бэкдор <code>EAGERBEE</code> и другие интересные образцы (<em>скриншот 4</em>).</p>
<p>Или, например, можно поискать простую команду <code>PING</code> внутри <code>GZIP</code> (<em>скриншот 5</em>):</p>
<pre><code>alert tcp any any -&gt; any any (msg: &quot;SUSPICIOUS [PTsecurity] Generic Ping command inside Gzip&quot;; flow: established, to_server; content: &quot;|1f 8b 08 00 00 00 00 00 04 00 0b c8 cc 4b 07 00 c3 92 e7 85 04 00 00 00|&quot;; ...)
</code></pre>
<p>По итогам срабатываний и дальнейших исследований к нам попадали <code>SheetRAT</code> и <code>zgRAT</code> (<em>скриншот 6</em>).</p>
<p>Но основная мысль, зафиксированная в докладе, — в использовании корреляции их сработок. Корреляция сработок — понятие не новое, но в контексте сетевого трафика его пока применяют крайне редко; иногда уходят в более сложные реализации защиты и забывают о простых, но действенных подходах.</p>
<p><strong>🫵 Выводы простые:</strong> generic-правила, особенно в корреляции друг с другом, могут значительно помогать в детектировании как давно известных, так и абсолютно новых угроз, о которых пока никто не знает. Можно пользоваться открытыми наборами сетевых сигнатур — ET Open, <a href="https://rules.ptsecurity.com/" rel="noopener" target="_blank">PT Open</a>, а можно смело писать свои.</p>
<p>Happy hunting!</p>
<figure class="wp-block-image"><img width="1024" height="590" src="/wp-content/uploads/2025/09/photo_382@26-09-2025_16-03-27-1024x590.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/09/photo_382@26-09-2025_16-03-27-1024x590.jpg 1024w, /wp-content/uploads/2025/09/photo_382@26-09-2025_16-03-27-300x173.jpg 300w, /wp-content/uploads/2025/09/photo_382@26-09-2025_16-03-27-768x443.jpg 768w, /wp-content/uploads/2025/09/photo_382@26-09-2025_16-03-27.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="590" src="/wp-content/uploads/2025/09/photo_383@26-09-2025_16-03-28-1024x590.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/09/photo_383@26-09-2025_16-03-28-1024x590.jpg 1024w, /wp-content/uploads/2025/09/photo_383@26-09-2025_16-03-28-300x173.jpg 300w, /wp-content/uploads/2025/09/photo_383@26-09-2025_16-03-28-768x443.jpg 768w, /wp-content/uploads/2025/09/photo_383@26-09-2025_16-03-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="590" src="/wp-content/uploads/2025/09/photo_384@26-09-2025_16-03-28-1024x590.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/09/photo_384@26-09-2025_16-03-28-1024x590.jpg 1024w, /wp-content/uploads/2025/09/photo_384@26-09-2025_16-03-28-300x173.jpg 300w, /wp-content/uploads/2025/09/photo_384@26-09-2025_16-03-28-768x443.jpg 768w, /wp-content/uploads/2025/09/photo_384@26-09-2025_16-03-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="590" src="/wp-content/uploads/2025/09/photo_385@26-09-2025_16-03-28-1024x590.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/09/photo_385@26-09-2025_16-03-28-1024x590.jpg 1024w, /wp-content/uploads/2025/09/photo_385@26-09-2025_16-03-28-300x173.jpg 300w, /wp-content/uploads/2025/09/photo_385@26-09-2025_16-03-28-768x443.jpg 768w, /wp-content/uploads/2025/09/photo_385@26-09-2025_16-03-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="590" src="/wp-content/uploads/2025/09/photo_386@26-09-2025_16-03-28-1024x590.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/09/photo_386@26-09-2025_16-03-28-1024x590.jpg 1024w, /wp-content/uploads/2025/09/photo_386@26-09-2025_16-03-28-300x173.jpg 300w, /wp-content/uploads/2025/09/photo_386@26-09-2025_16-03-28-768x443.jpg 768w, /wp-content/uploads/2025/09/photo_386@26-09-2025_16-03-28.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p><span class="hashtag">#suricata</span> <span class="hashtag">#network</span> <span class="hashtag">#signature</span> <span class="hashtag">#rules</span> <span class="hashtag">#hunt</span> <span class="hashtag">#detect</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Как давно ты реверсил JavaScript?</title>
		<link>/how-long-have-you-been-reverse-engineering-javascript/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Fri, 17 Jan 2025 16:48:07 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[hunt]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Phishing]]></category>
		<guid isPermaLink="false">/%d0%ba%d0%b0%d0%ba-%d0%b4%d0%b0%d0%b2%d0%bd%d0%be-%d1%82%d1%8b-%d1%80%d0%b5%d0%b2%d0%b5%d1%80%d1%81%d0%b8%d0%bb-javascript/</guid>

					<description><![CDATA[Как давно ты реверсил JavaScript? 😲 Продолжая тему фишинга (ранее мы смотрели на таргетированные подозрительные документы, приводящие к получению первоначального доступа или сбору NTLM-хешей), хотим показать примеры свежих атак, направленных на массового…]]></description>
										<content:encoded><![CDATA[<p><strong>Как давно ты реверсил JavaScript?</strong> 😲</p>
<p>Продолжая тему фишинга (ранее мы смотрели на таргетированные подозрительные документы, приводящие к получению <a href="https://t.me/ptescalator/218" rel="noopener" target="_blank">первоначального доступа</a> или <a href="https://t.me/ptescalator/219" rel="noopener" target="_blank">сбору NTLM-хешей),</a> хотим показать примеры свежих атак, <strong>направленных на массового пользователя, </strong>привыкшего пользоваться продуктами известной компании Microsoft. </p>
<p>Посмотрим, как злоумышленники генерируют поддельные HTML-страницы,<strong> мимикрирующие под формы ввода аутентификационных данных</strong>, с точки зрения JavaScript-кода и применяемых техник обфускации, и даже найдем интересные пасхалки от фишеров. </p>
<p>1️⃣ <strong>Первый пример</strong></p>
<p>Самым примитивным примером из сегодняшней подборки является использование конструкции:</p>
<pre><code>document.write(unescape(atob(</code></pre>
<p>Внутри нее зашит внешний подгружаемый скрипт <code>flyit.com.ar/wp-includes/certificates/js_host/outlk.js</code>, который содержит в себе<strong> jQuery библиотеку</strong> и дополнительный код, отправляющий на <code>campusmin.sitb.edu.ar/completion/classes/php_host/_xls3.php?_do=xxx_form</code> креды пользователя. </p>
<p><em>Минутка ликбеза:</em> функция atob позволяет декодировать base64-строку, а <code>document.write</code> записывает содержимое аргумента в DOM активной страницы, подменяя ее текущее содержимое. В данном случае обфускация минимальная — в основном используется только сжатие (минификация).</p>
<p>2️⃣ <strong>Второй пример</strong></p>
<p>Это более интересный пример, поскольку он содержит много обфусцированного кода. Передаваемая пользователю HTML-страничка содержит только обфусцированный скрипт, который исполняется уже на стороне браузера. </p>
<p>Бесплатные деобфускаторы не справляются с преобразованием кода, поэтому прибегнем к ручному реверсу JavaScript: используемые выделенные функции, методы <code>atob</code> и <code>document.write</code> формируют веб-страницу, которая впоследствии подгружает скрипт с <code>7354770595-1323985617.cos.ap-seoul.myqcloud.com/attach%2Fbootstrap.min.js</code> (обфусцирован с помощью бесплатного сервиса <a href="http://obfuscator.io" rel="noopener" target="_blank">obfuscator.io</a>), где как раз и содержится сбор кредов пользователя. Затем логин и пароль отправляются на C2 злоумышленников — <code>miguel.uscourtaccess.com/next.php</code>.</p>
<p>Сможете найти пасхалочки на скрине? 😏</p>
<p>3️⃣ <strong>Третий пример</strong></p>
<p>В третьем случае для формирования поддельной страницы, представляющую собой брендированную версию стандартной формы ввода аутентификационных данных, используется фишинговый набор <strong>WikiKit</strong>. Он получил свое название за перенаправления на Википедию в случае отключенного в браузере JavaScript или недействительной фишинговой ссылки. Этот скрипт блокирует использование отладочных средств (хотя обойти их в целом несложно), а собранные данные отправляются на <code>cotceur.com</code>. </p>
<p><strong>Какие у нас рекомендации?</strong> 🧐</p>
<p>Кроме «не открывать файлы из подозрительных писем», что кажется неактуальным для этого канала (нам же наоборот интересно их открыть), приведем ряд простых, но важных поинтов, на которые точно стоит обращать внимание при анализе веб-страниц:</p>
<p><strong>•</strong> на вкладке Network браузера проверяйте origin подгружаемых дополнительных ресурсов, все-таки jQuery лучше получать с легитимного домена jQuery или известного CDN.</p>
<p><strong>•</strong> использование функции atob (декодирование base64), еще и с </p>
<pre><code>aHR0cHM6
aHR0cDo</code></pre>
<p>внутри (в результате декодирования получается <code>https:</code> или <code>http:</code>) — поистине страшная смесь! А если добавить к этому <code>document.write</code> (добавления контента в html-документ) и <code>unescape</code> (устаревший метод для декодирования URI) — это точно редфлаг 🚩</p>
<p><strong>•</strong> антидебаггинг, конечно, используется в легитимных целях, но очень редко: стоит задуматься, если встречаете его (эти техники, кстати, можно обойти довольно легко — к примеру, в случае третьего фишинга использовать не горячие клавиши вроде <code>F12</code> или <code>Ctrl+Shift+i</code>, а вручную открыть инструменты в настройках или записать трафик).</p>
<p>💡 Хотим отметить, что не стоит видеть подозрительность везде — например, сжатие кода и популярные виды обфускации часто используют в легитимных проектах! Решили поразбирать JS-код сами just for run и увидели странный POST-запрос? <strong>Будем верить, что вы указали фальшивый пароль</strong> 🤞🏻</p>
<p><strong>Happy hunting!</strong></p>
<figure class="wp-block-image"><img width="1024" height="570" src="/wp-content/uploads/2025/01/photo_175@17-01-2025_16-48-07-1024x570.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/01/photo_175@17-01-2025_16-48-07-1024x570.jpg 1024w, /wp-content/uploads/2025/01/photo_175@17-01-2025_16-48-07-300x167.jpg 300w, /wp-content/uploads/2025/01/photo_175@17-01-2025_16-48-07-768x428.jpg 768w, /wp-content/uploads/2025/01/photo_175@17-01-2025_16-48-07.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="582" src="/wp-content/uploads/2025/01/photo_176@17-01-2025_16-48-07-1024x582.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2025/01/photo_176@17-01-2025_16-48-07-1024x582.jpg 1024w, /wp-content/uploads/2025/01/photo_176@17-01-2025_16-48-07-300x170.jpg 300w, /wp-content/uploads/2025/01/photo_176@17-01-2025_16-48-07-768x436.jpg 768w, /wp-content/uploads/2025/01/photo_176@17-01-2025_16-48-07.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p><span class="hashtag">#hunt</span> <span class="hashtag">#network</span> <span class="hashtag">#phishing</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Большое малварное обновление правил</title>
		<link>/large-malware-rules-update/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Tue, 19 Nov 2024 18:58:00 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[rules]]></category>
		<category><![CDATA[suricata]]></category>
		<guid isPermaLink="false">/%d0%b1%d0%be%d0%bb%d1%8c%d1%88%d0%be%d0%b5-%d0%bc%d0%b0%d0%bb%d0%b2%d0%b0%d1%80%d0%bd%d0%be%d0%b5-%d0%be%d0%b1%d0%bd%d0%be%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bf%d1%80%d0%b0%d0%b2%d0%b8%d0%bb/</guid>

					<description><![CDATA[🔄 Большое малварное обновление правил Suricata Надеюсь, вы помните, что у нас есть публичный репозиторий правил Suricata (писали о запуске ресурса в другом посте) и настроили suricata-update на поддержку официального источника правил…]]></description>
										<content:encoded><![CDATA[<p>🔄 <strong>Большое малварное обновление правил</strong> <strong>Suricata</strong></p>
<p>Надеюсь, вы помните, что у нас есть публичный репозиторий правил Suricata (писали о запуске ресурса <a href="https://t.me/ptescalator/128" rel="noopener" target="_blank">в другом посте</a>) и настроили <code>suricata-update</code> на поддержку официального источника  правил <code>ptrules/open</code> ?</p>
<p>Если что, то вот <a href="https://rules.ptsecurity.com/" rel="noopener" target="_blank">ссылочка на репозиторий</a>.</p>
<p>Не одними уязвимостями и хактулами живем 🙂 </p>
<p>Мы, команда сетевой экспертизы антивирусной лаборатории PT ESC, провели большую работу по актуализации правил, направленных на детектирование активности вредоносного ПО, и вот — выкладываем часть своей экспертизы для общего пользования.</p>
<p><strong>Из интересного:</strong></p>
<p>— загрузчик <strong>RustyNet</strong>, стилер <strong>WorldWind</strong>, RAT&#039;ник <strong>Slam</strong>, о которых писали ранее (<a href="https://t.me/ptescalator/34" rel="noopener" target="_blank">в этом посте</a>, <a href="https://t.me/ptescalator/160" rel="noopener" target="_blank">этом</a> и <a href="https://t.me/ptescalator/119" rel="noopener" target="_blank">этом</a>); <br />
— вредонос для Android: <strong>SpyNote</strong>, <strong>Hydra</strong>, <strong>Zanubis</strong>;<br />
— ужасный RAT&#039;ник <strong>XWorm</strong> и много других интересных образцов.</p>
<p>Все правила вы можете найти <a href="https://rules.ptsecurity.com/files/ptopen-malware#rules" rel="noopener" target="_blank">на нашем сайте</a>. </p>
<p><strong>ВПО не пройдет, happy hunting!</strong></p>
<p><span class="hashtag">#suricata</span> <span class="hashtag">#network</span> <span class="hashtag">#signature</span> <span class="hashtag">#rules</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Стилерная инфекция: новый USB-штамм</title>
		<link>/stealer-infection-a-new-usb-strain/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Tue, 12 Nov 2024 19:12:50 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[C2]]></category>
		<category><![CDATA[detect]]></category>
		<category><![CDATA[hunt]]></category>
		<category><![CDATA[ioc]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[suricata]]></category>
		<guid isPermaLink="false">/%d1%81%d1%82%d0%b8%d0%bb%d0%b5%d1%80%d0%bd%d0%b0%d1%8f-%d0%b8%d0%bd%d1%84%d0%b5%d0%ba%d1%86%d0%b8%d1%8f-%d0%bd%d0%be%d0%b2%d1%8b%d0%b9-usb-%d1%88%d1%82%d0%b0%d0%bc%d0%bc/</guid>

					<description><![CDATA[Стилерная инфекция: новый USB-штамм 👾 Сегодня расскажем про обнаруженную нами необычную модификацию стилера WorldWind. Это самый что ни на есть настоящий вирус, передающийся через тесный контакт зараженного устройства с USB-носителем и вызывающий…]]></description>
										<content:encoded><![CDATA[<p><strong>Стилерная инфекция: новый USB-штамм</strong> 👾</p>
<p>Сегодня расскажем про обнаруженную нами необычную модификацию <strong>стилера WorldWind</strong>. Это самый что ни на есть настоящий вирус, передающийся через тесный контакт зараженного устройства с USB-носителем и вызывающий не только утечку конфиденциальной информации, но и потерю бесценной коллекции ПО на внешних дисках. </p>
<p>Находка, как и ее предшественники, все также продолжает использовать сервисы <code>icanhazip</code>, <code>mylnikov.org</code> + Google Карты для определения внешнего IP-адреса и геолокации (<em>скриншот 1</em>). Реализация модуля сбора информации тоже не изменилась, за исключением пары структур.</p>
<p>🐔  <strong>Мутации же затронули сетевую часть и набор функций стилера.</strong> Теперь он не передает информацию через Telegram. Вместо этого сообщения улетают на С2-сервер злоумышленников в следующем порядке: checkin → exfiltration → close. Форматы этих сообщений представлены <em>на скриншоте 2</em>.</p>
<p>Из стилера также пропали функции для кражи VPN-конфигов и паролей от игровых лончеров и Wi-Fi. Но взамен развилась способность агрессивно распространяться через USB-носители. Если на внешнем диске есть экзешники, то стилер удалит их и запишет себя под их именами (<em>скриншот 3</em>).</p>
<p><strong>Не находите, что повеяло старыми добрыми временами дикого вирусописательства?</strong> 😏</p>
<p>Чтобы уменьшить риск заражения, ставьте сигнатурные прививки и проходите антивирусные осмотры.</p>
<p><strong>Заодно давайте покроем стилер правилом, детектирующим checkin:</strong></p>
<pre><code>
alert tcp any any -&gt; any any (msg: &quot;STEALER [PTsecurity] WorldWind checkin&quot;; flow: established, to_server; stream_size: client, &lt;, 80; stream_size: server, =, 1; content: &quot;|46 00 00 00|&quot;; startswith; fast_pattern; content: &quot;{|22|id|22 3a| 0&quot;; within: 8; content: &quot;|22|hwid|22 3a|&quot;; within: 10; content: !&quot;|20|&quot;; distance: 2; within: 32; content: &quot;|22|country|22 3a|&quot;; distance: 32; content: !&quot;,&quot;; distance: 0; classtype: trojan-activity; metadata: malware_family WorldWind; sid: 1; rev: 1;)
</code></pre>
<p><strong>IOCs:</strong></p>
<pre><code>
84d52de2b69e14f26259da07297e02eb2c4ac32045a690f65a267fe931da0433
20.208.136.72:12346
</code></pre>
<p>Будьте здоровы и happy hunting!</p>
<figure class="wp-block-image"><img width="1024" height="640" src="/wp-content/uploads/2024/11/photo_120@12-11-2024_19-12-50-1024x640.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2024/11/photo_120@12-11-2024_19-12-50-1024x640.jpg 1024w, /wp-content/uploads/2024/11/photo_120@12-11-2024_19-12-50-300x188.jpg 300w, /wp-content/uploads/2024/11/photo_120@12-11-2024_19-12-50-768x480.jpg 768w, /wp-content/uploads/2024/11/photo_120@12-11-2024_19-12-50.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="640" src="/wp-content/uploads/2024/11/photo_121@12-11-2024_19-12-50-1024x640.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2024/11/photo_121@12-11-2024_19-12-50-1024x640.jpg 1024w, /wp-content/uploads/2024/11/photo_121@12-11-2024_19-12-50-300x188.jpg 300w, /wp-content/uploads/2024/11/photo_121@12-11-2024_19-12-50-768x480.jpg 768w, /wp-content/uploads/2024/11/photo_121@12-11-2024_19-12-50.jpg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<p><span class="hashtag">#hunt</span> <span class="hashtag">#C2</span> <span class="hashtag">#detect</span> <span class="hashtag">#ioc</span> <span class="hashtag">#malware</span> <span class="hashtag">#network</span> <span class="hashtag">#suricata</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Слышали ли вы про публичный репозиторий Suricata-правил Attack Detection?</title>
		<link>/have-you-heard-about-the-public-repository-of-suricata-rules-attack-detection/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Thu, 17 Oct 2024 15:31:54 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[rules]]></category>
		<category><![CDATA[suricata]]></category>
		<guid isPermaLink="false">/%d1%81%d0%bb%d1%8b%d1%88%d0%b0%d0%bb%d0%b8-%d0%bb%d0%b8-%d0%b2%d1%8b-%d0%bf%d1%80%d0%be-%d0%bf%d1%83%d0%b1%d0%bb%d0%b8%d1%87%d0%bd%d1%8b%d0%b9-%d1%80%d0%b5%d0%bf%d0%be%d0%b7%d0%b8%d1%82%d0%be%d1%80/</guid>

					<description><![CDATA[Слышали ли вы про публичный репозиторий Suricata-правил Attack Detection? Да это яяяя Внутри большой команды PT Expert Security Center есть отдельная группа экспертов, главная задача которых — разрабатывать правила обнаружения для сетевых…]]></description>
										<content:encoded><![CDATA[<p><strong>Слышали ли вы про публичный репозиторий Suricata-правил Attack Detection?</strong></p>
<p><s>Да это яяяя</s> Внутри большой команды PT Expert Security Center есть отдельная группа экспертов, главная задача которых — разрабатывать правила обнаружения для сетевых средств защиты. Вы уже наверняка знакомы с некоторыми <a href="https://t.me/ptescalator/26" rel="noopener" target="_blank">постами</a> про сетевые артефакты от этой команды.</p>
<p>Спустя два года перерыва мы возвращаемся к вам с <a href="http://rules.ptsecurity.com/?utm_source=tg_esc&#038;utm_medium=post&#038;utm_campaign=rules&#038;utm_content=17_10" rel="noopener" target="_blank">обновленным порталом</a> и снова начинаем публиковать части своей экспертизы в виде Suricata-правил 🔥</p>
<p><strong>Из обновлений:</strong></p>
<p>1. <a href="https://rules.ptsecurity.com/files/ptopen-attacks#rules" rel="noopener" target="_blank">Правила</a> для последних уязвимостей.<br />
2. <a href="https://rules.ptsecurity.com/files/ptopen-tools#rules" rel="noopener" target="_blank">Правила</a> для обнаружения крайне популярных в узких кругах инструментов Croc и gsocket.<br />
3. А также несколько <a href="https://rules.ptsecurity.com/files/ptopen-windows#rules" rel="noopener" target="_blank">правил</a> для выявления горизонтального перемещения в сети Active Directory. </p>
<p>Настройте suricata-update на поддержку официального источника правил ptrules/open и следите за обновлениями <a href="http://x.com/attackdetection" rel="noopener" target="_blank">на нашей странице в X</a>.</p>
<p>👋🏼 Stay tuned</p>
<p><span class="hashtag">#suricata</span> <span class="hashtag">#network</span> <span class="hashtag">#signature</span> <span class="hashtag">#rules</span><br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Slam screen locker. Что ты такое?</title>
		<link>/slam-screen-locker-what-are-you/</link>
		
		<dc:creator><![CDATA[global_author]]></dc:creator>
		<pubDate>Thu, 10 Oct 2024 18:53:19 +0000</pubDate>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[C2]]></category>
		<category><![CDATA[detect]]></category>
		<category><![CDATA[hunt]]></category>
		<category><![CDATA[ioc]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[suricata]]></category>
		<category><![CDATA[tips]]></category>
		<guid isPermaLink="false">http://localhost:8080/slam-screen-locker-%d1%87%d1%82%d0%be-%d1%82%d1%8b-%d1%82%d0%b0%d0%ba%d0%be%d0%b5/</guid>

					<description><![CDATA[Slam screen locker. Что ты такое? ☹️ На очереди — fast malware analysis, проведенный одним воскресным вечером. В наши сети залетел один интересный семпл, порождающий не менее интересный сетевой трафик (скриншот 1).…]]></description>
										<content:encoded><![CDATA[<strong>Slam screen locker. Что ты такое?</strong> ☹️<br />
<br />
На очереди — <strong>fast malware analysis</strong>, проведенный одним воскресным вечером.<br />
<br />
В наши сети залетел один интересный семпл, порождающий не менее интересный сетевой трафик (<em>скриншот 1</em>).<br />
<br />
В этом файле (исполняемом .NET) содержится необфусцированный неймспейс <strong>Slam_Ransomware_Builder_2._0</strong> (<em>скриншот 2</em>). Его название череcчур сильно похоже на известный в узких кругах <strong>Slam Ransomware</strong>, только версией побольше. Пример работы билдера 1.4 — <a href="https://app.any.run/tasks/7c513f90-4a37-4f58-b612-8c4fdd0925f6" rel="noopener" target="_blank">по ссылке.</a><br />
<br />
🏃‍♂️ Беглый анализ показал, что класс <strong>Slam_Ransomware_Builder_2._0.Lock</strong> отвечает за блокировку экрана, класс <strong>Slam_Ransomware_Builder_2._0.Chat</strong> реализует логику чата с жертвой локера. <br />
<br />
Наибольший интерес вызывает класс <strong>ClientTest.ChatClient</strong>, содержащий реализацию сетевого протокола. По нему можно определить полный набор функций исследуемого ВПО.<br />
<br />
<strong>• удаленное управление</strong> (например, LCD*&lt;coord_x&gt;*&lt;coord_y&gt; — эмуляция нажатия левой кнопки мыши, Command#&lt;command&gt; — выполнение команды в cmd, SetStartup*&lt;prog_name&gt; — добавление программы в автозапуск);<br />
<br />
<strong>• отправка и получение файлов</strong> (например, ViewFiles*&lt;dir_path&gt;, клиент отсылает в ответ *FileTree*&lt;files&gt;*FileTree*, скриншот 3);<br />
<br />
<strong>• снятие скриншотов</strong> (например, StartScreenShare*, StopScreenShare*, клиент отсылает в ответ SCREENSHOT*screen.jpg*&lt;file_size&gt;*&lt;user_name&gt;*&lt;form_id&gt;);<br />
<br />
<strong>• кейлоггер</strong> (например, StartRealtimekeylogger*, StopRealtimekeylogger*, клиент отсылает в ответ SendrtKeylogger*&lt;key_code&gt;*).<br />
<br />
<strong>И еще много всего</strong> — масштаб RAT поражает, любой клиент видео-конференц-связи позавидует.<br />
<br />
😃 <strong>Самые неприятные и интересные пакости</strong><br />
<br />
<strong>Команда:</strong> LOCK*, LOCKUN*.<br />
<strong>Действие:</strong> активировать или деактивировать локер рабочего стола.<br />
<br />
<strong>Команда:</strong> textts*&lt;text_to_speek&gt;.<br />
<strong>Действие:</strong> text to speech.<br />
<br />
<strong>Команда:</strong> msgboxshow*&lt;title&gt;*&lt;msg&gt;*{Error,Information,Hand&#8230;}*&lt;buttons&gt;.<br />
<strong>Действие:</strong> показать уведомление.<br />
<br />
<strong>Команда:</strong> Wallpaper*&lt;path_to_img&gt;.<br />
<strong>Действие: </strong>изменить изображение рабочего стола.<br />
<br />
<strong>Команда:</strong> BSOD#.<br />
<strong>Действие:</strong> вызвать синий экран смерти.<br />
<br />
А на самом первом скриншоте представлен PING-PONG, который без труда покрывается правилами с флоубитами:<br />
<br />
<pre class="wp-block-code"><span><code lang="plaintext" class="hljs language-plaintext language-plaintext">
alert tcp $EXTERNAL_NET any -&gt; $HOME_NET any (msg: "Slam V2.0 FB set ping"; flow: established, to_client; dsize: 8&lt;&gt;17; content: "?PING"; endswith; flowbits: set, slam_ping; flowbits: noalert; sid: 1; rev: 1; classtype: trojan-activity;)

alert tcp $HOME_NET any -&gt; $EXTERNAL_NET any (msg: "Slam V2.0 ping-pong"; flow: established, to_server; dsize: 8&lt;&gt;17; content: "PONG#"; startswith; content: "#"; endswith; flowbits: isset, slam_ping; threshold: type limit, track by_dst, count 2, seconds 240; sid: 2; rev: 1; classtype: trojan-activity;)
</code></span></pre><br />
<br />
<strong>IOCs</strong><br />
<br />
<pre class="wp-block-code"><span><code lang="yaml" class="hljs language-yaml language-yaml">
<span class="hljs-attr">SHA-256:</span> <span class="hljs-string">e42088a37531929e3e775bdfacc5a3ee974e4f59d5290907c2131f434eef345b</span>
<span class="hljs-attr">C2:</span> <span class="hljs-number">77.231</span><span class="hljs-number">.153</span><span class="hljs-number">.42</span>
</code></span></pre><br />
<br />
Happy hunting!

<figure class="wp-block-image"><img width="1024" height="1024" src="/wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19-1024x1024.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19-1024x1024.jpg 1024w, /wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19-300x300.jpg 300w, /wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19-150x150.jpg 150w, /wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19-768x768.jpg 768w, /wp-content/uploads/2024/10/photo_86@10-10-2024_18-53-19.jpg 1098w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
<figure class="wp-block-image"><img width="1024" height="683" src="/wp-content/uploads/2024/10/photo_87@10-10-2024_18-53-19-1024x683.jpg" class="attachment-large size-large" alt="" decoding="async" loading="lazy" srcset="/wp-content/uploads/2024/10/photo_87@10-10-2024_18-53-19-1024x683.jpg 1024w, /wp-content/uploads/2024/10/photo_87@10-10-2024_18-53-19-300x200.jpg 300w, /wp-content/uploads/2024/10/photo_87@10-10-2024_18-53-19-768x512.jpg 768w, /wp-content/uploads/2024/10/photo_87@10-10-2024_18-53-19.jpg 1200w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>

<br />
<br />
<span class="hashtag">#Hunt</span> <span class="hashtag">#C2</span> <span class="hashtag">#Tips</span> <span class="hashtag">#IOC</span> <span class="hashtag">#detect</span> <span class="hashtag">#malware</span> <span class="hashtag">#network</span> <span class="hashtag">#suricata</span><br />
<br />
<a href="https://t.me/ptescalator" rel="noopener" target="_blank">@ptescalator</a>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
