p0wnedShell - Набор инструментов для постэксплуатации PowerShell Runspace

Rasvet0117

Newbie
11.06.2020
1
0
1
p0wnedShell - набор инструментов для постэксплуатации PowerShell Runspace
p0wnedShell - это агрессивное хост-приложение PowerShell, написанное на C #, которое не полагается на powershell.exe, но выполняет команды и функции PowerShell в среде выполнения PowerShell (.NET). В него включено множество оскорбительных модулей и двоичных файлов PowerShell, чтобы упростить процесс постэксплуатации.

Мы пытались создать «универсальный» инструмент для постэксплуатации, который мы могли бы использовать для обхода всех решений по смягчению последствий (или, по крайней мере, некоторых из них), и в который были включены все соответствующие инструменты. Вы можете использовать его для совершения современных атак в средах Active Directory и повышения осведомленности в вашей команде Blue, чтобы они могли разработать правильные стратегии защиты.

Как его скомпилировать:
Чтобы скомпилировать p0wnedShell, вам нужно открыть этот проект в Microsoft Visual Studio и собрать его для платформы x64 / x86. Вы можете изменить следующие параметры AutoMasq перед компиляцией:

public static bool AutoMasq = true;

публичная статическая строка masqBinary = @ "C: \ Windows \ Notepad.exe";

Как это использовать:
Если для AutoMasq установлено значение false, вы просто запускаете исполняемый файл, чтобы он работал нормально. При включенном AutoMasq вы можете переименовать исполняемый файл p0wnedShell как процесс, который вы собираетесь замаскировать (masqBinary), чтобы он выглядел как этот процесс (например, notepad.exe).

Используя необязательный аргумент командной строки «-parent», вы можете запустить p0wnedShell с другим идентификатором родительского процесса. При объединении параметра PEB Masq и другого идентификатора родительского процесса (например, svchost) вы можете придать p0wnedShell вид легитимной службы;)

Примечание. Запуск p0wnedShell с использованием другого идентификатора родительского процесса не работает из сеанса / оболочки Meterpreter. .. еще!
Код:
Changing the Parent Process ID can also be used to spawn a p0wnedShell process
with system privileges,
for example using lsass as the the parent process.
For this you need to have UAC elevated administrator permissions.

C:\p0wnedShell>p0wnedShellx64.exe -parent
 
 [+] Please enter a valid Parent Process name.
 [+] For Example: C:\p0wnedShell\p0wnedShellx64.exe -parent svchost
 
C:\p0wnedShell>p0wnedShellx64.exe -parent lsass
Чтобы работать как двоичный файл x86 и обойти блокировку приложений (кредиты за этот отличный обход идут к Кейси Смит, также известному как subTee):


Код:
cd \Windows\Microsoft.NET\Framework\v4.0.30319 (Or newer .NET version folder)

InstallUtil.exe /logfile= /LogToConsole=false /U C:\p0wnedShell\p0wnedShellx86.exe
Для запуска как двоичного файла x64 и обхода Applocker:


Код:
cd \Windows\Microsoft.NET\Framework64\v4.0.30319 (Or newer .NET version folder)

InstallUtil.exe /logfile= /LogToConsole=false /U C:\p0wnedShell\p0wnedShellx64.exe

Что внутри:
Включены следующие инструменты / функции PowerShell:
  • PowerSploit: Invoke-Shellcode
  • PowerSploit: Invoke-ReflectivePEInjection
  • PowerSploit: Invoke-Mimikatz
  • PowerSploit: Invoke-TokenManipulation
  • PowerSploit: PowerUp and PowerView
  • Rasta Mouse: Sherlock
  • HarmJ0y's: Invoke-Psexec and Invoke-Kerberoast
  • Rohan Vazarkar's: Invoke-BloodHound (C# Ingestor)
  • Chris Campbell's: Get-GPPPassword
  • Tim Medin's: GetUserSPNS
  • Besimorhino's: PowerCat
  • Nishang: Copy-VSS and Invoke-Encode
  • Nishang: Invoke-PortScan and Get-PassHashes
  • Kevin Robertson: Invoke-Tater, Invoke-SMBExec and Invoke-WMIExec
  • Kevin Robertson: Invoke-Inveigh and Invoke-InveighRelay
  • FuzzySecurity: Invoke-MS16-032 and Invoke-MS16-135
Функции Powershell в Runspace загружаются в память из кодированных Base64 и сжатых строк.

Включены следующие бинарные файлы / инструменты:
  • Мимикац из Бенджамина ДЕЛПИ
  • Эксплуатация kekeo MS14-068 Бенджамина ДЕЛПИ
  • Модификация командной строки ReactOS от Дидье Стивенса
  • MS14-058 Использование локальной системы
  • hfiref0x MS15-051 Использование локальной СИСТЕМЫ
Двоичные файлы загружаются в память с помощью ReflectivePEInjection (байтовые массивы сжимаются с помощью Gzip и сохраняются в p0wnedShell как строки в кодировке Base64).


 

Об LS-LA

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

About LS-LA

  • We, a group of like-minded people, whose main goal is to increase the level of knowledge and skills.
    Not forgetting about everyone’s material well-being)

Быстрая навигация

Пользовательское меню