当前位置:TranBon博客 > 首页 > 技术 > 端口扫描工具

端口扫描工具

adminis3年前 (2021-02-21)技术27030

一:Netcat工具(nc命令)

nc号称是网络工具中的瑞士军刀,功能强大,可以做很多很多事情。如果系统没有安装的话,

安装netcat:
yum install -y nc

实例:测试www.test.com的80到443端口是否开放
nc -vz -w 2 www.test.com 80-443
nc -z -v 192.118.20.95 22

适用格式
重要的参数,略做介绍:
-4,-6 表示ipv 4和ipv6模式
-u 表示扫描UDP端口,默认是TCP端口
-o -x 结果输出到文件,x表示以二进制格式。
-v 结果的详细程度,可以多个v,比如-vv –vvv 数量越多表示结果越详细
-p –s 表示指定扫描源地址和ip。
-z 表零IO模式,表示扫描时不发送任何数据
-w 秒数 设置超时

二:nmap 是端口扫描之王

描述
Nmap (“Network Mapper(网络映射器)”) 是一款开放源代码的 网络探测和安全审核的工具。 它的设计目标是快速地扫描大型网络,当然用它扫描单个主机也没有问题。Nmap以新颖的方式使用原始 IP报文来发现网络上有哪些主机,那些主机提供什么服务(应用程序名和版本),那些服务运行在什么操作系统(包括版本信息), 它们使用什么类型的报文过滤器/防火墙,以及一堆其它功能。虽然 Nmap 通常用于安全审核,许多系统管理员和网络管理员也用它来做一些 日常的工作,比如查看整个网络的信息, 管理服务升级计划,以及监视主机和服务的运行。
Nmap 输出的是扫描目标的列表,以及每个目标的补充信息,至于是哪些信息则依赖于所使用的选项。 “所感兴趣的端口表格”是其中的关键。那张表列出端口号,协议,服务名称和状态。状态可能是 open(开放的),filtered(被过滤的), closed(关闭的),或者 unfiltered(未被过 滤的)。Open(开放的)意味着目标机器上的应用程序正在该端口监听连接/报文。 filtered(被过滤的) 意味着防火墙,过滤器或者其它网络障碍阻止了该端口被访问,Nmap无法得知它是open(开放的) 还是closed(关闭的)。closed(关闭的)端口没有应用程序在它上面监听,但是他们随时可能开放。当端口对 Nmap 的探测做出响应,但是Nmap 无法确定它们是关闭还是开放时,这些端口就被认为是unfiltered(未被过滤的) 如果Nmap报告状态组合open|filtered 和closed|filtered时,那说明Nmap无法确定该端口处于两个状态中的哪一个状态。当要求 进行版本探测时,端口表也可以包含软件的版本信息。当要求进行 IP 协议扫描时 (-sO),Nmap提供关于所支持的 IP 协议而不是正在监听的端口的信息。除了所感兴趣的端口表,Nmap还能提供关于目标机的进一步信息,包括反向域名,操作系统猜测,设备类型,和Mac 地址。

Nmap 所识别的 6 个端口状态。 open(开放的)
应用程序正在该端口接收 TCP 连接或者 UDP 报文 发现这一点常常是端口扫描 的主要目 标。安全意识强的人们知道每个开放的端口 都是攻击的入口。攻击者或者入侵测试者想 要发现开放的端口。 而管理员则试图关闭它们或者用防火墙保护它们以免妨碍了合法用 户。 非安全扫描可能对开放的端口也感兴趣,因为它们显示了网络上那些服务可供使用
closed(关闭的)
关闭的端口对于 Nmap 也是可访问的(它接受 Nmap 的探测报文并作出响应), 但没有应用 程序在其上监听。 它们可以显示该 IP 地址上(主机发现,或者 ping 扫描)的主机正在运 行 up 也对部分操作系统探测有所帮助。 因为关闭的关口是可访问的,也许过会儿值得 再扫描一下,可能一些又开放了。 系统管理员可能会考虑用防火墙封锁这样的端口。 那 样他们就会被显示为被过滤的状态,下面讨论。
filtered(被过滤的)
由于包过滤阻止探测报文到达端口, Nmap 无法确定该端口是否开放。过滤可能来自专业 的防火墙设备,路由器规则 或者主机上的软件防火墙。这样的端口让攻击者感觉很挫折 因为它们几乎不提供 任何信息。有时候它们响应 ICMP 错误消息如类型 3 代码 13 (无法 到达目标: 通信被管理员禁止),但更普遍的是过滤器只是丢弃探测帧, 不做任何响应 这迫使 Nmap 重试若干次以访万一探测包是由于网络阻塞丢弃的。 这使得扫描速度明显 变慢。
unfiltered(未被过滤的)
未被过滤状态意味着端口可访问,但 Nmap 不能确定它是开放还是关闭。 只有用于映射 防火墙规则集的 ACK 扫描才会把端口分类到这种状态。 用其它类型的扫描如窗口扫描, SYN 扫描,或者 FIN 扫描来扫描未被过滤的端口可以帮助确定 端口是否开放。
open|filtered(开放或者被过滤的)
当无法确定端口是开放还是被过滤的,Namp 就把该端口划分成 这种状态。开放的端口不 响应就是一个例子。没有响应也可能意味着报文过滤器丢弃 了探测报文或者它引发的任 何响应。因此 Nmap 无法确定该端口是开放的还是被过滤的。 UDP,IP 协议, FIN,Null 和 Xmas 扫描可能把端口归入此类。
closed|filtered(关闭或者被过滤的)
该状态用于 Nmap 不能确定端口是关闭的还是被过滤的。 它只可能出现在 IPID Idle 扫 描中。

一个典型的 Nmap 扫描如 Example 1, “一个典型的 Nmap 扫描”所示。在这个例子中,唯一的选 项是-A, 用来进行操作系统及其版本的探测,-T4 可以加快执行速度,接着是两个目标主机名
nmap -A -T4 192.168.1.1

timing 参数可以指定 nmap 扫描的速度。其中各个选项如下:

T0 => paranoid 慢速网络扫描,串行扫描,两次扫描间隔 5 分钟。扫描速度极慢。
T1 => Sneky 慢速网络扫描,串行扫描,两次扫描间隔 15 秒,扫描速度较慢。
T2 => Polite 中速网络扫描,串行扫描,两次扫描间隔 400 毫秒,扫描速度慢。
T3 => Normal 中速网络扫描,并行扫描,两次扫描间隔 0 秒,扫描速度正常。
T4 => Aggressive 快速网络扫描,并行扫描,两次扫描间隔 0 秒,扫描速度较快。
T5 => Normal 快速网络扫描,并行扫描,两次扫描间隔 0 秒,扫描速度极快。

-sS 使用SYN+ACK的方法,使用TCP SYN,
-sT 使用TCP的方法, 完成3次握手
-sU 使用UDP的方法
-sP ICMP ECHO Request 送信,有反应的端口进行调查
-sF FIN SCAN
-sN 全部FLAG OFF的无效的TCP包送信,根据错误代码判断端口情况
-P0 无视ICMP ECHO request的结果,SCAN
-p scan port range 指定SCAN的目端口的范围1-100, 或者使用25,100的方式
-O 侦测OS的种类
-oN 文件名 通常格式文件输出
-oX 文件名 通过DTD,使用XML格式输出结果
-oG 文件名,grep容易的格式输出
-sV 服务的程序名和版本SCAN

#ARP扫描,探测本网段存活的设备:
nmap -PR 192.168.1.0/24

#完成后,查看ARP表:
cat /proc/net/arp

#进行ping扫描,列出对扫描做出响应的主机:
nmap -sP 172.16.26.0/24

#仅列出指定网络上的每台主机,不发送任何报文到目标主机,被动
nmap -sL 192.168.1.0/24

#探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS 22,23,25,80):
nmap -PS 192.168.1.234

#使用UDP ping探测主机:
nmap -PU 192.168.1.0/24

#使用频率最高的扫描选项(SYN扫描,又称为半开放扫描),它不打开一个完全的TCP连接,执行得很快:
nmap -sS 192.168.1.0/24

#SYN扫描,指定IP范围指定端口。
nmap -sS 192.168.1.1-30 -p 80

#探测端口的服务和版本
nmap -sV 192.168.1.1 -p 1-65535

#探测操作系统类型和版本

nmap -O 192.168.1.1
nmap -A -T4 192.168.1.1

#扫描路由器

#Nmap内部维护了一份系统与设备的数据库(nmap-os-db),能够识别数千种不同系统与设备。所以,可以用来扫描主流的路由器设备。

#扫描思科路由器
nmap -p1-25,80,512-515,2001,4001,6001,9001 10.20.0.1/16

#思科路由器会在上述端口中运行了常见的服务。列举出上述端口开放的主机,可以定位到路由器设备可能的IP地址及端口状态。

#扫描路由器操作系统

#与通用PC扫描方式类似,使用-O选项扫描路由器的操作系统。-F用于快速扫描最可能开放的100个端口,并根据端口扫描结果进一步做OS的指纹分析。
nmap -O -F -n 192.168.1.1

#扫描指定IP开放端口
nmap -sS -p 1-65535 -v www.xxx.com
-sS: 半开扫描,很少系统会把它计入系统日记。但是要root权限。
-p:指定端口。
-v:显示扫描过程,推荐使用。

#探测主机操作系统
nmap -O www.xxx.com

#全面探测系统
nmap -v -A www.xxx.com
-A: 全面系统检测,启用脚本检测。

#穿透防火墙进行扫描
nmap -Pn -A www.xxx.com

#实例脚本引擎
nmap -p 80 --script=xxx.nse www.xxx.com

#扫描57.182.0.0/21的2048 IP地址的80端口是是否开放,并只显示开放的主机。
nmap -sT -p 80 -oG – –open 57.182.0.0/21

#扫描57.182.0.0/21的2048 IP地址的80端口是是否开放,并只显示开放的主机。
nmap -sT -p 80 -oG – –open 57.182.0.0/21

#扫描IP.TXT文件里所有IP的开放80端口的主机。

#有5000个左右的IP需要扫描80端口,(可以一行一条写在文本文档里。)
nmap -p 80 -iL “E:\\ip.txt” –open

#扫描116.148.0.0/18下的所有IP的8080端口,并把扫描结果保存入D盘nmap.txt。

#在Windows命令行下使用nmap扫描一个IP段,并把结果导入指定的TXT文件。
nmap -sS -p 8080 -T4 -Pn –open -oG d:\nmap.txt 116.148.0.0/18

渗透案例:
https://xianzhi.aliyun.com/forum/topic/72
http://blog.csdn.net/zmeixuan/article/details/77587521

nmap详细指引
https://www.kancloud.cn/wizardforcel/nmap-man-page/141686

三:zmap扫描最快的工具

XXXX

四:Masscan熊掌鱼扫描器

XXX

有道云笔记 https://note.youdao.com/ynoteshare1/index.html?id=bcdac087d03c275ae3ea13142933c7b6&type=note#/

第6条随机版权

扫描二维码推送至手机访问。

版权声明:本文由TranBon博客发布,如需转载请注明出处。

本文链接:https://bk.tranbon.com/?id=274

相关文章

在Centos 7 上安装Zabbix监控

在Centos 7 上安装Zabbix监控

一、关闭selinux和iptables && 安装Zabbix rpm包仓库 && 安装zabbix-server-mysql和zabbix-web-mysql &a...

centos固定网卡、网卡名会变、网卡名错乱,解决方法

centos固定网卡、网卡名会变、网卡名错乱,解决方法

cd /etc/udev/rules.d/ vi /etc/udev/rules.d/70-persistent-net.rules echo "SUBSYSTEM==\"...

cnetos系统mysql配置my.cnf文件,跳过密码认证登录并设置远程登录(不一定有效)

cnetos系统mysql配置my.cnf文件,跳过密码认证登录并设置远程登录(不一定有效)

cnetos手动安装mysql没有my.cnf配置文件时, 1.可以从其它服务器把my.cnf文件拷贝到需要的服务器上,2.可以touch创建my.cnf文件 这边是直接使用touch命令my.c...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。