p0wnedShell

PowerShell运行空间后期开发工具包

它是什么:

p0wnedShell是用C#编写的冒犯性的PowerShell主机应用程序,它不依赖powershell.exe,但在PowerShell运行空间环境(.NET)中运行PowerShell命令和函数。它包含了很多令人不快的PowerShell模块和二进制文件,使Post Exploitation过程变得更加简单。我们所尝试的是建立一个“一体化”的后期开发工具,我们可以使用这个工具绕过所有的缓解方案(或者至少一些),并且包含所有相关的工具。您可以使用它在Active Directory环境中执行现代攻击,并在您的Blue团队中创建知名度,以便构建正确的防御策略。

如何编译它:

要编译p0wnedShell,您需要在Microsoft Visual Studio中导入此项目,或者如果您无权访问Visual Studio安装,则可以按如下方式进行编译:

编译为x86二进制文件:

cd \Windows\Microsoft.NET\Framework\v4.0.30319

csc.exe /unsafe /reference:"C:\p0wnedShell\System.Management.Automation.dll" /reference:System.IO.Compression.dll /win32icon:C:\p0wnedShell\p0wnedShell.ico /out:C:\p0wnedShell\p0wnedShellx86.exe /platform:x86 "C:\p0wnedShell\*.cs"

编译为x64二进制文件:

cd \Windows\Microsoft.NET\Framework64\v4.0.30319

csc.exe /unsafe /reference:"C:\p0wnedShell\System.Management.Automation.dll" /reference:System.IO.Compression.dll /win32icon:C:\p0wnedShell\p0wnedShell.ico /out:C:\p0wnedShell\p0wnedShellx64.exe /platform:x64 "C:\p0wnedShell\*.cs"

p0wnedShell使用System.Management.Automation命名空间,所以在编译Visual Studio之外时,确保在源代码路径中包含System.Management.Automation.dll。

Ps:可以直接打开p0wnedShell.sln在VS中编译成控制台程序文件

如何使用它:

只要运行可执行文件或…

以x86二进制形式运行,并绕过Applocker(这个伟大的旁路的信贷去凯西史密斯又名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:调用Shellcode
  • PowerSploit:调用反射PE注入
  • PowerSploit:Invoke-Mimikatz
  • PowerSploit:调用令牌管理
  • PowerSploit:PowerUp和PowerView
  • Rasta老鼠:Sherlock
  • HarmJ0y’s:Invoke-Psexec和Invoke-Kerberoast
  • Rohan Vazarkar’s:Invoke-BloodHound(C#Ingestor)
  • Chris Campbell的:Get-GPPPassword
  • Tim Medin’s:GetUserSPNS
  • Besimorhino的:PowerCat
  • Nishang:Copy-VSS和Invoke-Encode
  • Nishang:调用PortScan和Get-PassHashes
  • Kevin Robertson:Invoke-Tater,Invoke-SMBExec和Invoke-WMIExec
  • Kevin Robertson:调用Inveigh和Invoke-InveighRelay
  • FuzzySecurity:Invoke-MS16-032和Invoke-MS16-135
  • Runspace中的Powershell函数从Base64编码和压缩字符串加载到内存中 。

包括以下二进制文件/工具:

  • 本杰明DELPY的Mimikatz
  • Benjamin DELPY的MS14-068 kekeo Exploit
  • Didier Stevens修改了ReactOS命令提示符
  • MS14-058本地系统漏洞利用
  • hfiref0x MS15-051本地系统漏洞利用

使用ReflectivePEInjection将二进制文件加载到内存中(字节数组使用Gzip压缩并保存在
p0wnedShell中作为Base64编码的字符串)。

Shout-outs:

p0wnedshell主要基于来自Powersploit,Sean Metcalf,SubTee,Nikhil Mittal,Besimorhino,Benjamin Delpy,Breenmachine,FoxGlove Security,Kevin Robertson,FuzzySecurity,James Forshaw和我忘记的其他人的工具和知识。所以,大声喊出来,当然还有我们在雷德蒙的朋友给我们一个非常强大的黑客语言。

去做:

  • 使用TabExpansion2在shell中完成Tab键的完成。
  • 更多的攻击(例如Kerberos Silver Tickets)

转载请注明出处:https://www.freearoot.com/index.php/p0wnedshell.html

文章来源:https://github.com/Cn33liz/p0wnedShell