0x00 前言
如下图所示:
这个问题,每隔段时间,都会在各个论坛或者其他地方看到有人在提问。大部分同学就是代理通道建立之后,一股脑的上扫描,结果跑来说为什么没有结果呢?
不论更换了多少代理工具,结果都是一样的。根本原因是使用的扫描器默认使用 ICMP 进行存活扫描。那最本质的原因呢?则是上层流量无法代理下层流量。
0x01 回顾 TCP/IP 5层模型
互联网的实现,分成好几层。互联网协议按照功能不同分为 TCP/IP 四层或 TCP/IP 五层或 OSI 七层 。
就当前而言,我们以 5 层体系结构进行一些简单的说明。首先先明确,数据通信是从上层往下层进行传输。来看下表
应用层最直观的体现是我们使用浏览器浏览网页内容,其协议就是通过 http 协议进行完成。而传输层的 TCP 则负责将 http 协议进行数据传递。以此类推。这里我们讲这个 5 层架构的目的则是为了说明,数据通信是由上而下进行的。
0x02 为什么代理不了 PING?
首先,ping 程序是用来探测主机到主机之间是否可通信,如果不能 ping 到某台主机,表明不能和这台主机建立连接。关键的是:ping 使用的是ICMP 协议。
然后,我们所搭建的代理,通常是 Socks4a/5 代理,是属于传输层协议。
那么从 TCP/IP 5层模型可以看出,由于流量是从上而下进行传输的,因此 ICMP 是没有办法去走传输层协议的。这就是在代理环境中,ping 等操作无法完成的原因。本质原因已经解释清楚,那么怎么解决扫描问题呢?
0x03 怎么解决?
其实大部分扫描器都有去除 ICMP 存活扫描选项的参数。我这里将常用的扫描的禁 ping 选项给列一列:
•Nmap:-Pn•fscan:-np•ladon:-noping
但其实我自写的工具,都没有加入 ICMP,因为都是精准扫描端口才用的。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...