红队信息搜集扫描使用
红队行动中需要工具化一些常用攻击,所以学习一下 nmap 等的常规使用,提供灵感
nmap
帮助
nmap --help
主机扫描
Scan and no port scan(扫描但不端口扫描)。-sn 在老版本中是 -sP,P的含义是 Ping
sudo namp -sn <ip.0/24>
端口扫描
以tcp方式发现端口
–min-rate 指定扫描速度是 10000, -p- 代表扫描全部端口
sudo nmap --min-rate 10000 -p- <ip>
和上一条命令类似,不过以 udp 扫描,以 udp 的方式发现端口
sudo nmap -sU --min-rate 10000 -p- <ip>
扫端口服务详细信息
以 tcp 方式扫描,扫描服务版本,枚举操作系统
sudo nmap -sT -sV -O -p80,111,777等等 <ip>
漏洞脚本扫描
用漏洞脚本扫描,漏洞脚本为 nmap 内置
sudo nmap --script=vuln -p80,111,777等等 <ip>
没有 nmap 的环境中,不能使用 nmap
故考虑非 nmap 的 主机扫描,端口扫描等
用 ping 扫描主机
-sn 是封装的 ping 命令,可以直接使用 ping 扫存货 ip
ping 扫描
-c 是数量 count
-W 是超时时间,wait time
<ip> 想要扫描的ip,用 bash 脚本枚举
for i in {1..254};do ping -c 1 -W 1 172.16.200.$i;done
一不小心扫错了怎么办
终端中 ctrl + z 把当前输出放到后台
kill -9 %1 ,%1表示最近的一条放入后台的进程
筛选字符串
存活 ip 中,输出有字符串 from 的是有效的,故通过 grep 拿到输出
for i in {1..254};do ping -c 1 -W 1 172.16.200.$i;|grep from;done
用 ncat 扫描端口
一般的 kali linux 中默认安装新版的 nc 的新版
旧版使用 nc.traditional
nc.traditional -vv -z 172.16.200.131 1-65535
为了让结果容易观察,应当挑选出我们想要的内容。也就是找关键词
grep -v 参数实现反选。由于 grep 过滤会显示错误信息,所以把错误输出给标准输出,再过一遍
nc 的 -vv 参数表示 verbose (两次或更详细),能输出更多信息
nc.traditional -vv -z 172.16.200.131 1-65535 2>&1 | grep -v refused
这样就好了
伪设备扫描
先看一看当前 kali linux 的 shell 环境
可以看到当前 shell 是 zsh
echo $SHELL
这样切换 shell 为 bash
bash
伪设备扫端口。更纯粹的的方法,用 bash 脚本做
for i in {1..65535};do (echo < /dev/tcp/172.16.200.131/$i) &>/dev/null && printf "\n[+] The opne port is %d" "$i" || printf "." ;done
另外的工具
chisel sshuttle
做代理或隧道等的工具,应当简单学习一下
ipv6
ipv6 相关的工具和技巧
ioxidresolver 工具在 github 上
用法
sudo python3 ./IOXIDResolver.py -t 一个ip地址
nmap 的 ipv6 相关
sudo nmap -6 --min-rate 10000 -p- 一个ip地址
对于一个域控,如果它放在 ipv6 下,我们将考虑 ipv6 相关的攻击
工具 snmpwalk
用法
sudo snmpwalk -v2c -c public 一个ip地址
用法似乎有很多,可以简单学习一下