网络端口扫描(5分钟内扫描整个Internet)

网络端口扫描(5分钟内扫描整个Internet)(1)

Masscan号称是世界上最快的扫描软件,传输速度可以达到2500万个数据包/秒,足以在不到5分钟的时间内扫描整个互联网。实现的这样的系统只需要一台4核Sever,双端口10G网卡。

Masscan传输原理

Masscan使用自定义TCP / IP堆栈,除简单端口扫描之外的任何其他操作都将导致与本地TCP / IP堆栈冲突。因此MASSCAN不建立完整的TCP连接,收到SYN/ACK之后,发送RST结束连接。

备注:banners除外。

网络端口扫描(5分钟内扫描整个Internet)(2)

Masscan是一种典型的“async / syn-cookie”扫描仪,它的扫描结果类似于nmap,在内部结构上,它更像unicornscan和ZMap,都采用了异步传输的方式。对比unicornscan和ZMap,Masscan的优势在于:

  • 速度快,在使用双端口卡的情况下,Masscan能够达到每秒3000万个数据包。
  • 灵活性强,“加密的单调递增索引”,它允许自定义任意的地址范和端口范围,大大的增加了masscan的灵活性。
  • 兼容性强,支持运行在Windows,Macintosh,Linux,OpenBSD各类系统。
Masscan安装

在Debian/Ubuntu系统中,安装方法如下:

$ sudo apt-get install git gcc make libpcap-dev $ git clone https://github.com/robertdavidgraham/masscan $ cd masscan $ make

安装完成后的可执行程序在masscan/bin中,因为源包含许多小文件,建议使用多线程加快地构建:

$ make -j

PF_RING

如果你也想获得超过两百万每秒的速度,首先你需要一个英特尔10-Gbps网卡和一个被称为PF_RING DNA(http://www.ntop.org/products/pf_ring/)的特殊驱动程序。masscan使用PF_RING不要进行重建,你只需要建立以下组件即可:

libpfring.so (安装于 /usr/lib/libpfring.so) pf_ring.ko (pf_ring自己的内核驱动) ixgbe.ko (英特尔10-gbps网卡驱动)

你不要建立自己的libpcap.so

当masscan检测到网卡为dna0时,将自动切换为PF_RING模式

网络端口扫描(5分钟内扫描整个Internet)(3)

使用示例

扫描给定再往中的某个端口,比如(192.168.1.0/24)中的(-p22,80,445 )

root@kali:~# masscan -p22,80,445 192.168.1.0/24 Starting masscan 1.0.3 (http://bit.ly/14GZzcT) at 2014-05-13 21:35:12 GMT -- forced options: -sS -Pn -n --randomize-hosts -v --send-eth Initiating SYN Stealth Scan Scanning 256 hosts [3 ports/host] Discovered open port 22/tcp on 192.168.1.217 Discovered open port 445/tcp on 192.168.1.220 Discovered open port 80/tcp on 192.168.1.230

更多介绍和使用,请参考:https://github.com/robertdavidgraham/masscan

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页