回归最本质的信息安全

PSattack:一个渗透测试中使用的万能框架

2017年7月13日发布

30,911
1
1

导语:这段时间以来,以powershell为载体,大牛们开发出了很多有趣的东西。比如Invoke-Phant0m日志清除器就在其中。这篇文章就是用来讲述一个将这些渗透测试脚本集合起来的框架:PSattack。

PSAttackLogoBox.png

什么是PSattack?

PSattack是一个开源的,将渗透测试实践过程中所有的脚本结合起来形成的框架。更有趣的是使用攻击类型的PowerShell脚本并不会调用powershell.exe,而是通过.NET框架直接调用的PowerShell。另外,所有的模块都是加密处理的,并且不会写入到硬盘当中,所以在一定程度上可以做到免杀。

PSattack中包括超过100个命令,通过以下工具中的模块进行提权,扫描,以及数据过滤:

PowerSploit
Nishang
Powercat
Inveigh
Invoke-TheHash
PowershellMafia

psattack提供的功能

以下是psattack中包含的模块

代码执行

1. Invoke-Shellcode.ps1:将shellcode注入到对应你选的pid进程当中,或者在正在运行的powershell进程中。
2. Invoke-WMICommand.ps1:在目标计算机上使用WMI作为C2通道执行powershell脚本
3. Invoke-WMIExec.ps1:使用NTLMv2绕过hash认证并且在目标机器上执行WMI命令。
4. Invoke-SMBExec.ps1:使用NTLMv2绕过hash认证并且使用SMBExec方式执行命令。其中Invoke-SMBExec支持SMB1,SMB2,以及未签名的SMB。

数据方面

1. Invoke-NinjaCopy.ps1:此脚本可以通过打开一个读方法,然后进入磁盘比如C盘,然后将文件从NTFS中拷贝出来。不过这一脚本需要用户具有管理员权限。
2. PowerView.ps1:这一脚本可以数据导出为.csv格式
3. Do-Exfiltration.ps1:使用此脚本从目标站点获取数据
4. Powercat.ps1:netcat的powershell版本
5. KeePassConfig.ps1:将KeePass触发器在KeePass.config.xml或者Find-KeepPassConifg中添加或删除。
6. Invoke-SMBClient.ps1:此脚本通过绕过hash值验证执行基本的文件共享任务。这一模块只支持未进行签名的SMB2.1版本。注意,这一脚本与windows客户端中执行,相对较慢。

文件方面

1. VolumeShadowCopyTools.ps1:列出本地所有的盘符,以及其路径。还可以创建,挂载一个新卷,或者将将其删除。
2. PowerView.ps1:除了上述的这一脚本的描述,还包含s Set-MacAttribute, Copy-ClonedFile, Get-PathAcl, Find-InterestingFile, Get-NetFileServer, Get-DFSshare, Invoke-FileFinder这些命

提权,留后门方面

1. powerview.ps1:枚举当前用户所使用的代理服务器,以及WPAD中的内容。以便获取代理服务器。
2. Gupt-Backdoor.ps1:Gupt是nishang中的后门,可以通过特定的网卡名称执行命令以及脚本程序。
3. PowerUp.ps1:支持Get-ServiceFilePermission, Write-HijackDll, Get-RegAlwaysInstallElevated, Get-UnattendedInstallFile, Get-Webconfig 以上命令。

获取密码方面:

1. Invoke-Mimikatz.ps1:这一脚本利用MImikatz2.0以及Invoke-ReflectivePEInjection脚本将mimikatz注入内存当中。这就可以让你直接从内存中获取数据,不需要在磁盘中写入任何文件。这一脚本有一个ComputerName参数,可以同时对多个计算机执行命令。
2. Get-GPPPassword.ps1:可以检测到通过组策略首选项推送的明文密码或者其他信息。
3. PowerUp.ps1:这一脚本可以从系统上的applicationHost.config对加密应用进行解密以及找到虚拟目录的密码。
4. Get-WLAN-Keys.ps1:nishang中用于将本地wifi密码导出的脚本
5. Inveigh.ps1:此脚本可以通过欺骗LLMNR/NBNS对发送到SMB的HTTP(s)或者SMB数据包进行捕获。包括的命令为:Invoke-Inveigh, Get-Inveigh, Get-InveghLog, Get-InveighNTLM, Get-InveighNTLMv1, Get-InveighNTLMv2, Get-InveighStats, Stop-Inveigh, Watch-Inveigh.
6. Invoke-mimikittenz.ps1:使用windows函数ReadProcessMemory()从内存中挖掘更多信息。
7. KeePassConfig.ps1:支持Find-KeePassConfig, Get-KeePassConfigTrigger, Add-KeePassConfigTrigger, Remove-KeePassConfigTrigger这些命令。
8. Invoke-Kerberoast.ps1:此脚本将对本机请求可管理的服务票据,并且返回它提取的hash值。

所以你以后在渗透测试过程中只需要这一个工具就可以了。不过惟一的一个问题是如果在我的电脑下载PSattack,杀毒软件就会对它进行查杀。但是如果把PSattack框架单独放到白名单中,他所携带的恶意脚本就不会被查杀。这一框架还包括一个PSattack build tool,这一工具负责实时更新模块,下载文件、加密文件等操作。

工具地址:

https://github.com/jaredhaight/PSAttack/releases

本文翻译自:http://pentestit.com/psattack-offensive-powershell-console/,如若转载,请注明来源于嘶吼: http://www.4hou.com/info/news/6149.html

点赞 1
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

xnianq

xnianq

HFUT,信息安全

发私信

发表评论

    程白凡
    程白凡 2017-07-14 17:49

    工具集好评,简直就是利器