端口扫描神器:Masscan
一、介绍
Masscan 是一款快速、高性能的开源端口扫描工具,旨在以极高的速度扫描整个互联网的 IPv4 地址空 间。它的设计目标是快速、灵活且适用于大规模的端口扫描任务。以下是 Masscan 的一些主要特点和功 能:
- 极高的扫描速度: Masscan 被设计为一种非常快速的端口扫描工具。它能够在极短的时间内扫描 大量的目标。
- 支持多种扫描模式: Masscan 支持多种扫描模式,包括 TCP 扫描、UDP 扫描、SCTP 扫描等。用 户可以根据需要选择不同的扫描模式。
- 多线程处理: 工具使用多线程技术,可以同时处理多个目标,提高扫描效率。
- 灵活的配置选项: Masscan 提供丰富的配置选项,用户可以灵活配置扫描参数,包括端口范围、 速率限制、输出格式等。
- 异步扫描: Masscan 使用异步扫描技术,能够同时发送和接收多个扫描请求,提高并行处理能 力。
- 原始输出格式: 扫描结果以原始文本格式输出,可以方便地进行后续处理或集成到其他工具中。
- IPv6 支持: Masscan 支持 IPv6 地址空间的扫描。
- 免费开源: Masscan 是一款免费开源的工具,用户可以根据需要查看和修改其源代码。
请注意:
在进行端口扫描任务时,应当遵循法律和道德规范,仅在有授权的范围内使用该工具。非法和未授权的 端口扫描活动是违法的,并可能导致法律责任。
二、基础使用
语法
|
|
其他参数详解:
--excludefile filename
:排除文件中的选项-oX filename
:输出到filename的XML-oG filename
:输出到filename在的grepable格式-oJ filename
:输出到filename在JSON格式。
三、使用详解
1、扫描指定网段范围的指定端口
|
|
这条命令将完成以下工作:
- 扫描10.x.x.x 子网,大约有1600万个地址
- 扫描顿口80和8000 - 8100范围的端口段
- 打印结果到标准输出,也可以重定向到一个文件
可以 -echo
将当前的配置输出到一个配置文件,利用 -c
来制定配置文件进行扫描
|
|
2、Banner 信息获取
Banner 信息 是网页或数字界面中用于展示信息、吸引用户注意的横幅广告或宣传栏,常见于网站首页顶 部,通过图文结合传递关键信息并引导交互。
|
|
这条命令的意思是扫描 10.x.x.x 网段 80 端口的开放信息,并且获取 banner 信息。 -source-ip
是指源 IP,这个 IP 必须指定独立有效的 IP 地址。
3、配置防火墙
可以通过配置防火墙防止 masscan 返回不了信息
linux 配置
|
|
MAC OS X 和 B SD 配置
|
|
4、扫描全网
可以对整个互联网发起扫描,使用的命令如下:
|
|
该命令慎用,会扫到敏感网段。可以设置黑名单让扫描器忽略一部分网段,语法如下:
|
|
可以把扫描结果输出到指定文件:
|
|
该命令将扫描结果保存在一个 .xml 文件中
当前的扫描器使用的是默认的速率100包/秒,如果是扫描全网的话,需要提高速度。
|
|
该命令将以10万包的速率进行扫描
上述命令输入比较麻烦,可以通过创建配置文件,使用加载配置文件的方式运行。配置文件内容如下:
|
|
扫描时,用 -c
加载配置文件,避免重复扫描时重复输入同样的参数。
结果输出:
主要有5种输出格式
- XML 默认格式,使用
-oX
或者使用-output - format xml
和-output - filename
进行指定 - binary masscan 内置格式
- grepable nmap 格式,使用
-oG
或者-output - filename
进行指定 - json 使用
-oJ
或者-output - format json
和-outuput - filename
进行指定 - list 简单的列表,每行一个主机端口对。使用
-oL
或者-output - format list
和-output - filename
传输速度
masscan 的发包速度非常快,在 windows 中,它的发包速度可以达到每秒30万宝;在linux中,速度可 以达到每秒 160 玩。masscan 在扫描时会随机选择目标 IP ,所以不会对远程的主机造成压力。 默认情况下,masscan 的发包速度每秒 100 包,为了提高速度,可以设置为 -rate 10000
四、详细参数
IP 地址范围,有三种有效格式
- 单独的 IPv4 地址
- 类似 10.0.0.1 - 10.0.0.223 的范围地址
- CIDR地址,类似于 0.0.0.0/0 多个目标可以用逗号隔开