`
tianshibaijia
  • 浏览: 1124964 次
文章分类
社区版块
存档分类
最新评论

DNAT:网络漏洞扫描器厂商的梦魇

 
阅读更多

网络漏洞扫描器在销售时通常将可扫描的IP的地址范围作为License的重要部分,购买10个IP和100个IP的价格相差不小,对于网络环境不固定的使用者需要购买大量的IP,这里介绍的方法是针对那些买了正版扫描器的使用者,可以减少购买IP的个数,理论上如果对并行扫描要求不是太高,只需要购买一个IP就可以对任意的机器进行扫描。
其实方法很简单,自己配一个防火墙,使用DNAT(目的地址映射技术),将扫描流量映射到目标机器上即可
如购买的某Scanner的许可IP为192.168.0.1,需扫描的目标为1.1.1.1,可以配置防火墙的的网口地址分别为192.168.0.1、1.1.1.2,并在上面做一个192.168.0.1->1.1.1.1的DNAT,在扫描时对防火墙的192.168.0.1地址进行扫描即可。
当你购买了包含若干个IP的license,那么恭喜你,可以进行并行扫描了。比如你购买了两个IP:192.168.0.1、192.168.0.2,需扫描的目标为1.1.1.1和2.2.2.1,可以配置防火墙的的网口地址分别为192.168.0.1、192.168.0.2和1.1.1.2、2.2.2.2,并在上面做一个192.168.0.1->1.1.1.2和192.168.0.2->2.2.2.1的DNAT,在扫描时对防火墙的192.168.0.1和192.168.0.2地址进行扫描即可。
以上方法的唯一不足之处是需要记住IP之间的对应关系。

具体在使用时,可以在自己的笔记本上装一个Linux的虚拟机,两块虚拟网卡都映射到笔记本的真实网卡上,在虚拟机中配置iptables规则,扫描时对着虚拟机的IP进行扫描即可。

具体的DNAT的配置方法请见我的另一篇文章iptables中DNAT的配置方法

当然,这种方法比较的费事,但是对付这种方法也不容易,我能想到的方法有:

1.目标机器指纹鉴别

每台机器都有自己一定的特征,如网卡MAC、硬盘号等,扫描时往往可以得到这些特征,所以在第一次扫描时记住这些特征和IP的对应关系,如果下次扫描时发生了较大改变,则认为进行了IP欺骗,不过这种方法只适用于硬件扫描器,软件的话重新安装一遍就可以了。

2.在目标机器安装License控制器

只有安装了License控制器的目标机器才能被扫描,这种方法太复杂,需要开发不同平台下的客户端,有些设备如交换机什么的很难开发。

3.DNAT探测

这个需要研究了,能否通过什么手段发现网络中是否使用了DNAT。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics