• SEO文章推广! 合作联系qq:122325244 正式全面改版 !免费SEO地址:https://www.seozhan.cn/tool 站长QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏SEO站长博客吧

Masscan及Nmap实现对阿里云ECS的外网端口监控

脚本编程 SEO站长博客 4个月前 (08-01) 65次浏览 已收录 0个评论

摘要

Nmap 作为一个开源的互联网端口扫描及安全审计工具,大家并不陌生,许多系统及网络管理员利用它进行网络探测、端口扫描端口服务管理等。但是在遇到大网段端口范围的场景时,nmap的扫描能力就受到了限制,扫描周期长就成为了其弊端。

要实现外网端口监控,首先就要保证端口扫描的近实时性,对向外暴露的高危端口及时处理,那么如何解决大网段端口扫描的场景呢?此时就需要用到 Masscan,一个大网段端口扫描神器。首先我们简单熟悉一下这款扫描神器。

Masscan 采用了异步数据传输的方式,能够灵活的自定义任意地址范围和端口范围。

masscan端口扫描速度之所以能够如此之快,一是其基于无状态的急速扫描技术,无状态连接是指无关心 TCP 状态,不占用系统 TCP/IP 资源;二是其发包速度非常快,并可以灵活配置,在 windows 中,它的发包速度可以达到每秒 30 万包;在 Linux 中,速度可以达到每秒 160 万;默认情况下masscan的发包速度每秒 100 包,为了提高速度,可以通过参数–rate 设置发包速度。尤其是在应对大网段端口扫描的时候,这个参数就发挥了其快速的特点。

那么如何利用 Masscan 和nmap实现对阿里云 ECS 的外网端口监控呢?

大体思路是利用masscan对阿里云公网 IP 进行全 IP 全端口定期进行快速扫描,同时针对扫描出的结果再结合nmap进行端口服务探测和安全扫描。

首先需要收集阿里云所有 ECS 外网地址,这里通过阿里云 ECS API 获取所有 ECS 外网 IP 并写入文件,此文件将作为masscannmap的扫描输入。贴出部分代码如下:

收集了阿里云 ECS 所有外网 IP 地址之后,接下来就该masscan出场了,将 IP 文件作为扫描输入,对 1~65535 的端口进行全端口扫描,输出结果保存的文件有多种形式,-oL 文本格式;-oX xml 格式;-oJ json 格式;执行命令运行 msscan 扫描:

masscan -iL ip.txt -p1-65535 -oL result–rate 1000

或者利用 python 的系统命令接口执行:

Import os

Os.system(“masscan -iL ip.txt-p1-65535 -oJ result –rate 1000″)

–rate 参数指定发送扫描包的个数,扫描大网段全端口范围时,建议该值设置大一些,提高发包速率,能够提升扫描速度。

masscan 执行结果如下(json 格式):

masscan 强大之处在于其端口扫描的速度快,但是针对扫描出的端口无法探测其对应的服务及主机操作系统类型,这个时候nmap就派上用场了,可以利用nmap对已经扫描出的 IP 和端口进行服务探测和安全检查,这里采用 redis 临时存储 masscan 的扫描结果,nmap 对 masscan 的结果再次进行扫描,将最终开放的端口及服务探测结果写入文件保存。

   总结

针对阿里云上的外网端口监控,采用 masscan 和 nmap 相结合的方式,进行功能互补,并实现半自动化端口监控,还有许多需要提升和优化的空间,例如如何实现全自动化,实现起来不难,这里只是抛砖引玉,同时如何提升监控实时性,针对危险端口实现报警预告,另外可以结合可视化,实现监控可视化,后续会不断优化,敬请期待。 weinxin


SEO站长博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Masscan及Nmap实现对阿里云ECS的外网端口监控
喜欢 (0)
[h4ck3st@126.com]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址