1. 理论
Nmap是一款基于C语言开发的开源网络扫描和安全审计工具。它可以通过扫描目标主机的端口、协议、应用程序版本等信息,帮助安全管理员评估网络和主机的安全性,并检测漏洞。Nmap支持的操作系统:Linux、Windows、MacOSX等操作系统。开源免费
Nmap支持多种扫描技术,包括TCP SYN扫描、TCP连接扫描、UDP扫描、ICMP扫描等。它还支持指定特定端口或范围的扫描,跨越多个子网的扫描,脚本扫描,版本探测,操作系统探测等。
Nmap的实现原理主要是基于TCP/IP协议栈的用法来研究和探测目标主机和网络设备的各种信息和状态。TCP/IP协议栈:Nmap是基于TCP/IP协议栈的网络扫描工具,可以通过对目标主机和网络设备的TCP/UDP端口进行快速扫描,实现对目标主机和网络设备的服务和状态探测。扫描策略:Nmap的实现策略主要是通过TCP SYN、TCP Connect、UDP和ACK等多种扫描方式进行网络扫描,从而快速地发现网络设备和主机的各种状态和信息。
2. 扫描IP地址 - nmap -sn 192.168.120.0/24 192.168.120.100-254
复制代码
3. 扫描端口 - nmap -sS 192.168.120.85 #基于SYN的一个扫描端口 scan SYN
- nmap -sA 192.168.120.85 #基于ACK包的扫描 基本扫描
- nmap -Pn 192.168.120.85 #不进行ping扫描 和sS效果一样
-
- nmap -sV 192.168.120.85 #重要,扫描端口并显示对应服务的版本信息
- nmap -p6370-6380 192.168.120.85 #扫描对应端口范围
复制代码
4. 扫描系统 - nmap -O 192.168.120.85 #重点
复制代码
5. 其他命令 - nmap -A 192.168.120.85 #更多详细信息
- nmap -F 192.168.120.85 #FAST扫描
- nmap -sP 192.168.120.0/24 #scan ping网段
- nmap --traceroute www.woniuxy.com #跟踪路由并扫描端口
复制代码
6. 扩展命令
绕过防火墙 - IP欺骗:设置源IP地址为别的IP,nmap -S
- MTU分片:将数据包切分成多个片段进行发送,nmap -f
- MAC欺骗:--spoof-mac
- 设置延时:为了绕过阈值验证、
-
- nmap -D RND:10 www.woniuxy.com
- nmap -D 192.168.17.23 www.woniuxy.com 192.168.17.23 #伪装源地址
- nmap -e 网络接口
- nmap -f www.woniuxy.com
- nmap --mtu 8 www.csdn.net
- nmap --spoof-mac 0 www.woniuxy.com #mac欺骗,mac不能随便写
- nmap --ttl 128 www.baidu.com
- nmap -T 4 47.108.235.197
复制代码
7. 其他端口状态信息展示
1、open(开放的)
应用程序正在该端口接收TCP 连接或者UDP报文。发现这一点常常是端口扫描 的主要目标。安全意识强的人们知道每个开放的端口 都是攻击的入口。攻击者或者入侵测试者想要发现开放的端口。 而管理员则试图关闭它们或者用防火墙保护它们以免妨碍了合法用户。 非安全扫描可能对开放的端口也感兴趣,因为它们显示了网络上那些服务可供使用。
2、closed(关闭的)
关闭的端口对于Nmap也是可访问的(它接受Nmap的探测报文并作出响应), 但没有应用程序在其上监听。 它们可以显示该IP地址上(主机发现,或者ping扫描)的主机正在运行up 也对部分操作系统探测有所帮助。 因为关闭的关口是可访问的,也许过会儿值得再扫描一下,可能一些又开放了。 系统管理员可能会考虑用防火墙封锁这样的端口。 那样他们就会被显示为被过滤的状态,下面讨论。
3、filtered(被过滤的)
由于包过滤阻止探测报文到达端口, Nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由器规则 或者主机上的软件防火墙。这样的端口让攻击者感觉很挫折,因为它们几乎不提供 任何信息。有时候它们响应ICMP错误消息如类型3代码13 (无法到达目标: 通信被管理员禁止),但更普遍的是过滤器只是丢弃探测帧, 不做任何响应。 这迫使Nmap重试若干次以访万一探测包是由于网络阻塞丢弃的。 这使得扫描速度明显变慢。
4、unfiltered(未被过滤的)
未被过滤状态意味着端口可访问,但Nmap不能确定它是开放还是关闭。 只有用于映射防火墙规则集的ACK扫描才会把端口分类到这种状态。 用其它类型的扫描如窗口扫描,SYN扫描,或者FIN扫描来扫描未被过滤的端口可以帮助确定 端口是否开放。
5、open|filtered(开放或者被过滤的)
当无法确定端口是开放还是被过滤的,Nmap就把该端口划分成 这种状态。开放的端口不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃 了探测报文或者它引发的任何响应。因此Nmap无法确定该端口是开放的还是被过滤的。 UDP,IP协议, FIN,Null,和Xmas扫描可能把端口归入此类。
6、closed|filtered(关闭或者被过滤的)
该状态用于Nmap不能确定端口是关闭的还是被过滤的。 它只可能出现在IPID Idle扫描中。
8. 其他常用端口
端口 | 服务 | 描述 |
---|
20/TCP,UDP | FTP [Default Data] | 文件传输协议 - 默认数据端口 | 21/TCP,UDP | FTP [Control] | 文件传输协议 - 控制端口 | 22/TCP,UDP | SSH | SSH(Secure Shell) - 远程登录协议,用于安全登录文件传输(SCP,SFTP)及端口重新定向 | 23/TCP,UDP | Telnet | Telnet终端仿真协议 - 未加密文本通信 | 25/TCP,UDP | SMTP | SMTP(简单邮件传输协议) - 用于邮件服务器间的电子邮件传递 | 43/TCP | WHOIS | WHOIS协议 | 53/TCP,UDP | DNS | DNS(域名服务系统) | 67/UDP | BOOTPs | BOOTP(BootStrap协议)服务;同时用于动态主机设置协议 | 68/UDP | BOOTPc | BOOTP客户端;同时用于动态主机设定协议 | 69/UDP | TFTP | 小型文件传输协议(小型文件传输协议) | 80/TCP | Http | 超文本传输协议(超文本传输协议)- 用于传输网页 | 110/TCP | POP3 | 邮局协议,“邮局协议”,第3版 - 用于接收电子邮件 | 113/TCP | Windows验证服务 | Ident - 旧的服务器身份识别系统,仍然被IRC服务器用来认证它的用户 | 123/UDP | NTP | NTP(Network Time Protocol) - 用于时间同步 | 137/TCP,UDP | NetBIOS Name Service | NetBIOS NetBIOS 名称服务 | 138/TCP,UDP | NetBIOS Datagram Service | NetBIOS NetBIOS 数据报文服务 | 139/TCP,UDP | NetBIOS Session Service | NetBIOS NetBIOS 会话服务 | 143/TCP,UDP | IMAP | 因特网信息访问协议(Internet信息访问协议 4) - 用于检索 电子邮件s | 161/TCP,UDP | SNMP | 简单网络管理协议 (简单网络管理协议) | 179/TCP | Bgp | 边界网关协议 (边界网关协议) | 194/TCP | | IRC(互联网中继聊天) | 220/TCP,UDP | IMAP3 | 因特网信息访问协议,交互邮件访问协议第3版 | 389/TCP,UDP | LDAP | 轻型目录访问协议 LDAP | 443/TCP | Https | 超文本传输安全协议 - 超文本传输协议 over TLS/SSL(加密传输) | 546/TCP,UDP | | DHCPv6客户端 | 547/TCP,UDP | | DHCPv6服务器 | 631/TCP,UDP | CUPS | 互联网打印协议 | 636/TCP,UDP | LDAPS | LDAP over SSL(加密传输,也被称为LDAPS) | 991/TCP,UDP | | NAS (Netnews Admin System) | 1080/tcp | SOCKS | SOCKS代理 | 1194/udp | | OpenVPN | 1433/tcp,udp | SQL Server | Microsoft SQL 数据库系统 | 1434/tcp,udp | SQL Server monitor | Microsoft SQL 活动监视器 | 1521/tcp | Oracle | Oracle数据库 default listener, in future releases official port 2483 | 3306/tcp,udp | MySQL | MySQL数据库系统 | 3389/tcp | RDP | 远程桌面协议(RDP) | 5432/tcp | PostgreSQL | PostgreSQL database system |
更多常用端口见:
https://www.cnblogs.com/lihaiyan/p/4356748.html
网络常用端口号_5355端口_姜亚轲的博客-CSDN博客
参考资料:
Nmap扫描原理与用法_nmap设备名称_AspirationFlow的博客-CSDN博客 |