【PSAttackv1.9】
PSAttack介绍
PSAttack是一款开源的PowerShell脚本框架,其中包含有目前安全社区中多款最优秀的项目。最有趣的地方就在于,这个攻击性PowerShell框架并不依赖于powershell.exe,用户可以直接通过.NET框架来调用PowerShell,这就使得企业环境更加难以阻止这个脚本框架的运行了。其次,该框架中包含的模块都经过了加密处理,而且不会在磁盘上存储,当我们在使用PSAttack时,工具会在系统内存中动态解密这些模块,因此它还可以绕过反病毒产品的检测。
PSAttack中包含有超过一百多种用于提权、侦察和数据提取的命令,而且我们还可以从以下著名的工具中导入其他模块和命令:
PowerSploit
Nishang
Powercat
Inveigh
Invoke-TheHash
PowershellMafia
PSAttack的功能
代码执行
Invoke-Shellcode.ps1: 向制定进程ID或正在运行的PowerShell进程中注入shellcode;
Invoke-WMICommand.ps1: 利用WMI(作为纯C2信道)在目标计算机中执行PowerShell脚本块;
Invoke-WMIExec.ps1: 使用NTLMv2绕过哈希认证并在目标主机中执行WMI命令;
Invoke-SMBExec.ps1: 支持SMB1和SMB2(无论有无SMB签名),可利用NTLMv2绕过哈希认证并执行SMBExec风格的命令;
数据提取
Invoke-NinjaCopy.ps1: 获取到服务器管理员权限之后,可读取和拷贝NTFS格式磁盘中的文件;
PowerView.ps1: 以线程安全的方式导出一个.csv文件;
Do-Exfiltration.ps1: 这个脚本可以从目标主机中提取数据;
Powercat.ps1: Powershell版本的Netcat;
KeePassConfig.ps1: KeePass密码提取工具;
Invoke-SMBClient.ps1: 执行基本文件共享任务,该模块仅支持SMB2(2.1);
文件工具
VolumeShadowCopyTools.ps1: 列出所有本地磁盘快照的设备路径,还可创建/删除/挂载新的磁盘快照;
PowerView.ps1: 提供Set-MacAttribute、Copy-ClonedFile、Get-PathAcl、Find-InterestingFile、Get-NetFileServer、Get-DFSshare和Invoke-FileFinder命令;
网络、提权&后门
PowerView.ps1: 枚举出当前用户的代理服务器和WPAD内容;
Gupt-Backdoor.ps1: Gupt是Nishang中的一个后门,它可以从制定的无线网络获取并执行命令和脚本;
PowerUp.ps1: 支持Get-ServiceFilePermission、Write-HijackDll、Get-RegAlwaysInstallElevated、Get-UnattendedInstallFile和Get-Webconfig;
密码
Invoke-Mimikatz.ps1: 该脚本利用Mimikatz.0和Invoke-ReflectivePEInjection在内存中加载Mimikatz,并允许攻击者在不需要向磁盘写入mimikatz代码的情况下导出用户凭证。该脚本还提供了一个ComputerName参数,我们可指定多台目标计算机;
Get-GPPPassword.ps1: 获取目标账号的明文密码和其他信息;
PowerUp.ps1: 该脚本可通过目标系统中的applicationHost.config文件恢复加密的应用程序池和虚拟目录密码;
Get-WLAN-Keys.ps1: 可导出WLAN配置密钥的Nishang Payload;
Inveigh.ps1: 可进行PowerShell LLMNR/NBNS欺骗,支持Invoke-Inveigh、Get-Inveigh、Get-InveghLog、Get-InveighNTLM、Get-InveighNTLMv1、Get-InveighNTLMv2、Get-InveighStats、Stop-Inveigh和Watch-Inveigh命令;
Invoke-mimikittenz.ps1: 该脚本利用Windows函数ReadProcessMemory()和正则表达式从目标进程的内存中提取信息;
KeePassConfig.ps1: 支持Find-KeePassConfig、Get-KeePassConfigTrigger、Add-KeePassConfigTrigger和Remove-KeePassConfigTrigger命令;
总结
这是一款多合一的攻击框架,不过在将它下载到我们的系统之前,请先关闭反病毒产品,不过当我将它添加到白名单之后,所有的运行都不会再出问题了。该框架还提供了一个PS > Attack build Tool,我们可以用它来下载和更新不同的模块,并使用单独的密钥来对这些模块进行加密,然后把它们重新编译成一套完整工具集。