1.4 万 Star!迄今为止速度最快的端口扫描器

Masscan 是一款高性能的端口扫描器,每秒可扫描百万个数据包,能够在6分钟内扫描完整个互联网。它使用异步传输,支持自定义端口和IP范围,具有很高的灵活性。Masscan 具有自己的TCP/IP栈,与其他扫描器可能存在冲突,需要通过配置IP或端口避免。此外,它支持PF_RING驱动以实现高速扫描,还提供多种操作系统平台的构建和性能测试方法。
摘要由CSDN通过智能技术生成

【导语】:Masscan 是一个批量端口扫描器,程序运行在单机上,每秒传输 1 千万个数据包,可以在 6 分钟之内扫完整个互联网。它是迄今为止,速度最快的端口扫描器。

简介

Masscan 的输入输出类似于 nmap,如果对工具的性能将信将疑,可以手动去尝试一把。

该工具使用异步传输,类似于scanrand、unicornscan 和 ZMap 等扫描器。并且它更加灵活,允许自定义端口和 IP 地址范围。

注意:masscan 使用它自己的 TCP/IP 栈,可能会和其他的端口扫描器冲突。这意味着,你要么使用 --src-ip 选项来配置一个与本地不同的 IP 地址 ,要么使用 --src-port 选项来配置 Massscan 使用的源端口。也可以配置内部防火墙(比如pf或者iptables)将操作系统的其他端口墙在外面。

这个工具免费,但是大家的爱心捐助可以帮助它更好的发展;比特钱包地址如下:

1MASSCANaHUiyTtR3bJ2sLGuMw5kDBaj4T

项目地址:

https://github.com/robertdavidgraham/masscan

构建

在Debian/Ubuntu,使用如下命令安装:

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

Massscan程序默认在masscan/bin子目录下。如果你想把这个程序安装在系统的其他地方,例如/usr/local/bin,需要自己手动复制。

该项目由大量的小文件组成,可以使用多线程来完成快速构建:

$ make -j

虽然 Linux 是该工具的主要运行平台,但是它也可以在其他的操作系统上很好的运行。

下面是一些其他的构建信息:

  • Windows w/ Visual Studio: 使用 VS10

  • Windows w/ MingGW: 使用make

  • Windows w/ cygwin: 不支持

  • Mac OS X /w XCode: 使用 XCode4

  • Mac OS X /w cmdline: 使用make

  • FreeBSD: 使用gmake

  • 其他系统: 尝试把所有的文件一起编译

PF_RING驱动安装

如果发包量要超过20万/秒,需要因特尔的网卡,网卡要求10Gbps。除此之外,还需要一个驱动,名字叫PF_RING ZC。

要想使用PF_RING ZC,还需要安装下面的组件:

  • libpfring.so (安装在/usr/lib/libpfring.so)

  • pf_ring.ko (PF-RING自己的内核驱动)

  • ixgbe.ko (因特尔10-gbps网卡驱动)

此外,还需要构建libpcap.so文件。当Masscan探测到网卡为zc:enp1s0时,就会自动切换到PF_RING ZC模式。

回归测试

这个工具内嵌自测组件,可以自己进行测试:

$ make regress
bin/masscan --regress
selftest: success!

以上的回归测试涵盖大量的复杂代码,你应该在构建后再尝试。

性能测试

为了测试工具性能,可以执行下面的命令:

$ bin/masscan 0.0.0.0/4 -p80 --rate 100000000 --router-mac 66-55-44-33-22-11

选项--router-mac虚拟出来一个假的路由mac地址,所以发送的数据包都在本地,不会跑到互联网上。

你也可以测试offline模式,看看在没有网络开销的情况下,这个程序能跑多快:

$ bin/masscan 0.0.0.0/4 -p80 --rate 100000000 --offline

在offline模式下,进行性能测试,这个程序就会使用PF_RING,几乎没有网络开销。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值