文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

端口扫描工具合集

2024-12-13 21:58

关注

一个优秀的端口扫描工具,最核心功能就是可以百分之百将开放的端口识别出来,无论是通过 TCP SYN 扫描还是通过全连接扫描。接下来就总结一下有哪些开源工具可用。

1. 业界冠军:Nmap

nmap 是最古老的端口扫描工具,也是如今使用最多最为广泛的工具,无论是安全从业者还是运维、研发人员,都知道它并且在实际的工作中使用它来验证远程服务是否正常,端口是否开放等。

经历了多年的发展,它不仅仅验证端口是否开放,而且还可以根据不同的端口发送特定 payload 来抓取端口返回信息,从而识别端口指纹,判断其运行的服务类型,除此之外还集成了脚本引擎,可以做一些漏洞探测的工作,直接实现从端口扫描到漏洞检测的完整流程。

nmap 官方网站:https://nmap.org/

2. 业界新秀:masscan

masscan 是以互联网全端口扫描而诞生,扫描速度极快,它的核心思想是异步扫描,与 Nmap 的同步扫描相反,异步扫描可以同时发送和处理多个网络连接。

理论上一次最多可以处理 1000 万个数据包,限制在于 TCP/IP 的堆栈处理能力,以及运行扫描工作的主机系统能力。

其优点是扫描速度快以及独特的探针随机化功能,其缺点是只能扫描 IP 或者 IP 段,无法指定域名目标。

项目地址:https://github.com/robertdavidgraham/masscan ​

3. Naabu

Naabu 是一款比较新的扫描器,是由一家开源软件公司开发,其专注于 web 应用程序安全和漏洞狩猎。Naabu 是用 GO 语言编写,毕竟 Go 工具往往拥有运行速度快和出色的稳定性。

该工具的特点是其设计考虑到了功能,他的目标在于与 Project Discovery 库中的其他工具以及 Nmap 等常用工具结合使用,所以输出的结果非常灵活。

除此之外,它还可以通过端口扫描自动将 IP 的重复数据删除来减少扫描资源的浪费,这对于 web 渗透来说是非常有用的,而且还集成了 nmap 的端口服务指纹识别能力。

项目地址:https://github.com/projectdiscovery/naabu

4. Rustscan

Rustscan 被称为现代端口扫描器,使用 Rust 语言编写,速度极快,能够在三秒内将一个 IP 的全端口(65535)扫描完成。

虽然只是简单的 SYN 和 Connect 扫描,但是它拥有完整的脚本引擎支持结果导出到 nmap 来进行详细的扫描。其还有个特点是在不改变参数的情况下,可以根据系统的性能来自动调整扫描速度,从而达到一个最佳扫描状态。

其扫描原理是通过对内部线程的管理,为了实现异步扫描的功能,在扫描过程中,每个端口扫描创建一个线程,每次可以创建数千个线程,而线程的多少取决于系统允许打开的最大文件数。

项目地址:https://github.com/RustScan/RustScan

5. 其他小工具

(1) Scanrand ,最早的异步扫描工具之一,其开发了两个独立的进程,一个用于发送探测包,一个用于接受探测包,不幸的是这个工具很久没有更新了。

(2) Knocker,写于 2002 年,通过引入多线程处理的端口扫描器,同样是很长时间不更新。

https://github.com/gabgio/knocker

(3) PNScan,与 Knocker 类似,它的特点是可以根据系统性能动态调整线程的数量来获得最佳扫描状态。

https://github.com/ptrrkssn/pnscan

(4) Unicornscan,相对较新的端口扫描器,理论上,通过将端口扫描相关的网络连接处理从内核转移到用户分配的处理资源,从而获得更好的性能,其拥有可以 Nmap 相媲美的功能,但是该工具已不再维护。

6. 特殊场景的扫描器

(1) Zmap,专门为了全网端口扫描而设计的工具,Zmap 工具本身可用于短时间内对大量网络地址进行特定端口的扫描,而且可以与 Zgrab2 结合使用,后者可以获取端口的指纹信息,缺点是只能针对单端口,而不像其他工具那些对多个端口。

https://github.com/zmap/zmap

(2) AngryIP Scanner,该工具一审计为重点,无需安装就可以使用,因为有大量黑客使用,从而导致它出现在大量设备的黑名单中,它也是少数具有 GUI 界面的端口扫描工具,能够输出优质的扫描报告。

https://angryip.org/

(3) Scantron,集成 nmap 和 masscan 的分布式扫描器,利用 SSH 隧道来实现分布式控制扫描节点

https://github.com/opsdisk/scantron

(4) Scanless,一个命令行工具,调用第三方端口扫描服务的 API 来实现间接端口扫描

https://github.com/vesche/scanless

(5) Unimap,针对大量子域进行端口扫描时,有非常多的域名指向相同的 IP,那么就会出现重复扫描的情况,使用这个工具可以先通过解析获取 IP,去重之后再发送给 Nmap 进行扫描,从而提高扫描的速度。

https://github.com/Edu4rdSHL/unimap

(6) Advanced Port Scanner,windows 下的一款 GUI 版端口扫描器。

https://www.advanced-port-scanner.com/

7. 总结

其实做端口扫描,使用 nmap 可以解决大部分场景的工作,而其他的一些工具会有一些特殊场景使用,比如单个目标,使用 nmap 用不了多久就可以扫描完成,而如果你要扫描的是几千,几万甚至百万级目标,还能只使用 nmap 吗,一定是要先使用类似 zmap、masscan 等快速扫描工具,确定端口开放,然后再使用 namp 做进一步的验证以及指纹识别,从而提升扫描速度。

以上不是所有端口扫描工具的合集,还有非常多其他优秀的扫描工具,比如 goby 等,还有一些自定的脚本,当然自己也可以编写属于自己的脚本和工具,集成到自己的自动化系统中。更多有意思的功能,还需大家在使用的时候进行挖掘。

参考网站:https://s0cm0nkey.gitbook.io/port-scanner-shootout/port-scanner-shootout-part-2-the-contenders

来源:信安之路内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯