【Masscan】互联网范围扫描SSDP主机
从 这个博客得知Masscan是可以扫描UDP端口的,于是用以下命令扫描某/8网段开放了SSDP服务的主机:
扫描信息如下:
这张图显示了扫描的时候使用了SYN Stealth Scan,我觉得很奇怪,扫描UDP端口为什么还要用SYN,于是用tcpdump抓包分析了一下这些扫描包,如下图所示,都是SSDP的扫描包,不存在SYN包。我也不清楚扫描软件为什么会显示这个信息。
我查看了这些扫描包,如下图所示,是SSDP协议的M-SEARCH请求包,这说明Masscan对不同UDP端口会针对性地使用该端口协议的探测包,这一点应该和Nmap类似。这个USER-AGENT字段直接显示这是masscan的扫描包,所以在被动流量很容易判断masscan的扫描包。
接下来我查看了扫描的结果,发现有很多重复结果。如下图所示,同一个IP出现了10次。
于是我又查看了扫描数据包,发现是SSDP回复了10个数据包,masscan又是一个无状态异步的扫描器,所以就记录了10次。
这里有一个小灵感,统计结果中的各IP出现的次数,出现次数多说明回复包比较多,因此这个IP可以作为SSDP反射放大器,以此类推,NTP反射放大器也可以通过这种方式统计到。
nmap和masscan 在半开放模式下扫描速度的对比分析
一、扫描命令和参数:
1、nmap x.x.x.x -sS -sU -Pn -p T:80, --source-port 58914 --min-rate 100 --max-rate 100 -n -v -T3 --open --stats-every 5s --min-hostgroup 100 --max-hostgroup 100
2、masscan x.x.x.x --ports T:80, --source-port 58914 --rate 100 --wait 1
带宽都是100,端口都是T:80。都为半开放扫描(其中masscan默认半开放扫描,nmap -sS 指定为半开放扫描)。
二、扫描结果:
1、masscan扫描时会回RST包,有时会回两次RST。
masscan扫描80端口
多回了一个RST包。
masscan扫描C段的80、443端口
用时:
masscan扫描C段的全部常用端口
用时
2、nmap半开放扫描时不回RST包,等待服务器自己关闭。
nmap扫描一个ip的80端口
nmap扫描C段的80、443端口
目标地址会重试连接并返回RST包。
用时:
nmap扫描C段的全部常用端口
三、对比:
经过对比发现,masscan有时会多回一个RST包,而nmap根本不回RST包让目标服务器自己关闭。
由此可以看出,nmap对每个目标会少发一到两个RST包,用时会更少,nmap扫描较快。
四、外网对比:
masscan默认不开启重试。nmap在网络性能差的情况下会触发重试机制,可以设置--max-retries=0关闭重试
1、masscan扫描C段全部常用端口,用时
2、nmap扫描C段全部常用端口,用时
扫描C段全部常用端口,用时
nmap扫描C段全部常用端口,关闭重试,用时
外网扫描速度比较:nmap关闭重试扫描 masscan默认扫描 nmap默认扫描
外网扫描端口存活数据比较:nmap默认扫描存活数 masscan默认扫描存活数 nmap关闭重试扫描存活数
有
masscan 默认扫描哪些端口
masscan是一个快速的端口扫描工具大概说一下它的使用方法,既有原创也有翻译欢迎补充扫描10.x.x.x的网络:masscan10.0.0.0/8-p80程序将自动探测网络的接口和适配器设置,如果失败,你可以手动设置参数如:--adapter-ip192.168.10.123--adapter-ip00-11-22-33-44-55--router-mac66-55-33-22-11参数可以通过命令行和配置文件设置,上述适配器的设置在配置文件中显示如下adapter-ip=192.168.10.123adapter-mac=00-11-22-33-44-55router-mac=66-55-44-33-22-11所有的单点参数如'-p80'有一个拼写出来的双冲当量所有,'-p80'就和--p80一样的效果(或者配置文件中的port=80)要使用配置文件,则可以这样:masscan-c从当前设置中生成配置文件,可以使用--echo选项这个使程序从当前运行中产生中断,然后使用改变的配置文件代替运行这是一个有用的方法来生成你的第一个配置文件或者你看到一个不知道的参数列表,如:masscan-p1234--echo来试试使用方法吧,比如,程序自带的例子:usage:masscan-p80,8000-810010.0.0.0/8--rate=10000一直搞不明白这个8000和8100是什么鬼,所以使用masscan-p80,8000-8100--echo输出如下:(省略了其中部分结果)#TARGETSELECTION(IP,PORTS,EXCLUDES)ports=80,8000-8100然后恍然大悟,原来是扫描80和8000到8100的端口下面是masscan的用法:masscan-p80202.203.122.122--rate=10000扫描202.203.122.122的80端口,速率为10Kppsmasscan-p0-8100202.203.122.122--banners-oBoutput.txt扫描202.203.122.122的0-8100的端口,扫描结果输出到output.txt(二进制)(--banners选项值旗标,或者指纹)masscan--open--banners--readscanoutput.txt-oX2.txt打开显示模式,读取output.txt中的数据,并以xml的格式写到2.txt中还有许多高级的设置和选项,大家可以进配置文件去修改和配置
如何扫描某一计算机开放的所有端口
在命令提示符中输入netstat -an可以扫描某一计算机开放的所有端口,具体步骤如下:
工具/材料:电脑
1、打开电脑,右键单击左下角开始,然后点击运行。
2、在运行的输入框里面输入cmd,然后点击确定。
3、在弹出的cmd.exe中输入netstat -an,然后敲击回车,这样就可以看到这个计算机所有开放的端口了。
Masscan教程和入门手册
masscan是为了尽可能快地扫描整个互联网而创建的,根据其作者robert graham,这可以在不到6分钟内完成,每秒大约1000万个数据包。
MASSCAN不建立完整的TCP连接,收到SYN/ACK之后,发送RST结束连接。选项--banners除外。
单个端口扫描
扫描443端口的B类子网
多端口扫描
扫描80或443端口的B类子网
扫描一系列端口
扫描22到25端口的B类子网
快速扫描
默认情况下,Masscan扫描速度为每秒100个数据包,这是相当慢的。为了增加这一点,只需提供该-rate选项并指定一个值。
扫描100个常见端口的B类子网,每秒100,000个数据包
你可以扫描的速度取决于很多因素,包括您的操作系统(Linux扫描扫描远远快于Windows),系统的资源,最重要的是您的带宽。为了以高速扫描非常大的网络,您需要使用百万以上的速率(--rate 1000000)。
扫描结果保存
其他扫描方式后续跟新。
0条大神的评论