由 无名小子 在 04-19-2003 00:30 发表:
Linux系统下的扫描器及防范(3)
. 网关审计工具Firewalk
Firewalk是一种利用firewalking技术(使用类似于路由跟踪的IP数据包分析方法,来测定特定的数据包是否能够从攻击者的主机传送到位于包过滤设备之后的目标主机,技术细节请参 http://www.packetfactory.net/Projec...walk-final.html 网络审计工具。它能够测定指定网关允许哪些传输协议的数据包通过。
Firewalk扫描的工作原理是发送IP TTL值比到目标网关跳数(hop)大1的TCP或UDP数据包。如果该网关允许此类网络通信,它将转发此探测包到下一路由器或主机,而此路由器或主机将因为TTL过期而立即向探测主机回送“TTL过期”的消息。如果该网关禁止此类网络通信,则会丢弃该数据包,探测主机将无法得到响应。通过连续发送这种探测数据包和分析监听到的响应,将能够确定该网关上的访问控制列表。
3.1 下载并安装Firewalk
Firewalk可以 http://www.packetfactory.net/Projects/firewalk/ 获得。Firewalk提供了一个GTK图形前端,不过,在RedHat系统中编译图形前端将会出现错误。
#tar zxvf firewalk-1.0.tar.gz
#.cd Firewalk-1.0
#./configure -with-gtk=no&&make&&make install
#man firewalk
3.2 使用Firewalk
Firewalk的探测工作包括了两个阶段:网络探测阶段和扫描阶段。开始,为了得到正确的IP TTL值,需要得到到达网关的跳数(hop)。通过依次递增数据包的TTL值,向目标主机连接发送探测包。一旦得到了到达网关的跳数,将进入下一阶段:实际的扫描。这些扫描其实很简单,Firewalk向目标主机发送带有超时设置的TCP或UDP数据包。如果能够在传输超时前监听到响应,则可以认为该端口是打开的,否则就是关闭的。
#firewalk -n -P1-8 -pTCP 10.0.0.5 10.0.0.20
Firewalking through 10.0.0.5 (towards 10.0.0.20) with a maximum of 25 hops.
Ramping up hopcounts to binding host...
probe: 1 TTL: 1 port 33434: [10.0.0.1]
probe: 2 TTL: 2 port 33434: [10.0.0.2]
probe: 3 TTL: 3 port 33434: [10.0.0.3]
probe: 4 TTL: 4 port 33434: [10.0.0.4]
probe: 5 TTL: 5 port 33434: Bound scan: 5 hops [10.0.0.5]
port 1: open
port 2: open
port 3: open
port 4: open
port 5: open
port 6: open
port 7: *
port 8: open
13 packets sent, 12 replies received
4.网络测绘工具Cheops/cheops-ng
Cheops是一个优秀的网络图形化网络测绘工具,原来由Mark Spencer 开发维护。它能够结合多种工具对网络进行分析(其中包括nmap),然后对扫描结果进行分析,最后以图形方式显示目标网络的拓扑结构以及各个网络节点的信