展示网站模板下载,自然志wordpress下载,苏州建网站的公司一站式服务公司,网站托管套餐1Masscan介绍1.1 Masscan简介1) nmap是端口扫描仪的合法王位#xff0c;而今天仍然是最通用的选择。但对于纯粹的速度也有一些已经超越了它#xff0c;包括scanrand#xff0c;unicornscan#xff0c;zmap#xff0c;和现在的masscan(https://github.com/robertdavidgraha… 1Masscan介绍1.1 Masscan简介1) nmap是端口扫描仪的合法王位而今天仍然是最通用的选择。但对于纯粹的速度也有一些已经超越了它包括scanrandunicornscanzmap和现在的masscan(https://github.com/robertdavidgraham/masscan)。2) masscan相比nmap之所以快很多masscan采用了异步传输方式无状态的扫描方式。nmap需要记录tcp/ip的状态os能够处理的TCP/IP连接最多为1500左右。3) masscan是为了尽可能快地扫描整个互联网而创建的根据其作者robert graham这可以在不到6分钟内完成每秒大约1000万个数据包。1.2 Masscan的基本功能1) 端口扫描(Port Scanning)采用了无状态的扫描技术没有进行完整的TCP三次握手因此扫描速度极大提升。基本功能是扫描发现主机的开放端口1.3 Massca的扫描原理1) Masscan不建立完整的TCP连接收到SYN/ACK之后发送RST结束连接(类似于nmap的TCP SYN scanning选项--banners除外。)2 Masscan安装2.1 Linux下Masscan安装(kali系统已自带Masscan)1) 在Debian/Ubuntu系统中安装方法如下# sudo apt-get install git gcc make libpcap-dev# git clone https://github.com/robertdavidgraham/masscan# cd masscan# make2) Windows下安装请参考https://www.4hou.com/penetration/6173.htmlhttps://github.com/robertdavidgraham/masscan/3Masscan基本扫描命令3.1.命令参数-p [ports,–ports]指定端口进行扫描--banners获取banner信息支持少量的协议--rate [packets-per-second]指定发包的速率-c [filename], --conf [filename]读取配置文件进行扫描--echo将当前的配置重定向到一个配置文件中-e [ifname] , --adapter [ifname]指定用来发包的网卡接口名称--adapter-ip [ip-address]指定发包的IP地址--adapter-port [port]指定发包的源端口--adapter-mac [mac-address]指定发包的源MAC地址--router-mac [mac address]指定网关的MAC地址--exclude [ip/range]IP地址范围黑名单防止masscan扫描--excludefile [filename]指定IP地址范围黑名单文件--includefile-iL [filename]读取一个范围列表进行扫描--ping扫描应该包含ICMP回应请求--append-output以附加的形式输出到文件--iflist列出可用的网络接口然后退出--retries发送重试的次数以1秒为间隔--nmap打印与nmap兼容的相关信息--http-user-agent [user-agent]设置user-agent字段的值--show [open/close]告诉要显示的端口状态默认是显示开放端口--noshow [open/close]禁用端口状态显示--pcap [filename]将接收到的数据包以libpcap格式存储--regress运行回归测试测试扫描器是否正常运行--ttl [num]指定传出数据包的TTL值默认为255--wait [seconds]指定发送完包之后的等待时间默认为10秒--offline没有实际的发包主要用来测试开销-sL不执行扫描主要是生成一个随机地址列表--readscan [binary-files]读取从-oB生成的二进制文件可以转化为XML或者JSON格式--connection-timeout [secs]抓取banners时指定保持TCP连接的最大秒数默认是30秒 注[options] 括号内为可选参数3.2使用示例3.2.1使用方法1) 使用方法类似于nmap扫描指定网段范围的指定端口# masscan -p80 192.168.1.0/24 2) 这条命令将完成如下工作:a) 扫描192.168.1.0子网b) 扫描端口80(也可以指定端口段例如8000-8100)c) 打印结果到标准输出也可以重定向到一个文件3) 使用 --echo 可以将当前的配置输出到配置文件也可使用 -c 来制定配置文件进行扫描# masscan -p80 192.168.1.0/24 --echo xxx.conf# masscan -c xxx.conf --rate 10003.2.2 Banner获取1) masscan不仅仅只是测试端口是否开放它还能在完成TCP连接的同时获取目标应用程序的Banner信息。# masscan -p80 192.168.1.0/24 --banners 这条命令的意思是扫描192.168.1.0网段80端口的开放信息并且获取banner信息。2) 您可以通过配置防火墙来防止masscan的返回不了信息的情况。a) Linux的配置如下# iptables -A INPUT -p tcp --dport 60000 -j DROP# masscan 192.168.1.0/24 -p80 --banners --source-port 60000b) MAC OS X和BSD的配置如下# sudo ipfw add 1 deny tcp from any to any 60000 in# masscan 192.168.1.0/24 -p80 --banners --source-port 60000(source-port指源端口)3) 您也可以检查其他类型的信息例如心脏滴血漏洞--heartbleed方法和获取banner是一样的。3.2.3扫描全网1) Masscan号称可以在三分钟内扫描整个互联网的所有端口您当然可以做一下测试。使用的命令如下# masscan 0.0.0.0/0 -p0-655352) 但是有时候扫描一些网段可能会让你获得被请去喝茶的机会。所以我们可以通过设置排除名单来让扫描器扫描时忽略一些网段。使用的命令如下:#masscan 0.0.0.0/0 -p0-65535 --excludefile exclude.txt3) 你也可以把扫描的结果不输出到命令行-oX可以将结果输出到指定文件中# masscan 0.0.0.0/0 -p0-65535 -oX scan.xml4) 扫描器使用的默认速率是100包/秒如果扫描全网的话需要提高速度# masscan 0.0.0.0/0 -p0-65535 --max-rate 100000这条命令将以每秒10万包的速率进行扫描5) 当然在命令一条条的敲命令显得有点麻烦我们可以通过创建配置文件并用加载配置文件的方式运行。配置文件的内容如下所示rate 100000output-format xxxoutput-status alloutput-filename xxx.xxxports 0-65535range 0.0.0.0-255.255.255.255excludefile exclude.txt扫描时使用之前提到的 -c 参数加载配置文件这样你进行重复扫描会省很多的力气。3.2.4 结果输出1) 主要有5种输出的格式a) XML 默认格式 使用-oX 或者使用 –output-format xml 和 –output-filename 进行指定b) binary masscan内置格式c) grepable nmap格式 使用 -oG 或者 –output-format grepable 和 –output-filename 进行指定d) json 使用 -oJ 或者 –output-format json 和 –output-filename 进行指定e) list 简单的列表,每行一个主机端口对。使用-oL 或者 –output-format list 和 –output-filename 进行指定3.2.5传输速度1) 在机器性能和宽带性能较高的前提下masscan的发包速度非常快在windows中它的发包速度可以达到每秒30万包在Linux中速度可以达到每秒160万。masscan在扫描时会随机选择目标IP所以不会对远程的主机造成压力。2) 默认情况下masscan的发包速度为每秒100包为了提高速度可以设置为 –rate 100000。4结语masscan的扫描结果类似于nmap在内部它更像scanrand, unicornscan, and ZMap采用了异步传输的方式。它和这些扫描器最主要的区别是它比这些扫描器更快。而且masscan更加灵活它允许自定义任意的地址范和端口范围。