中国网络渗透测试联盟
标题:
Nmap教程学习笔记
[打印本页]
作者:
admin
时间:
2013-3-14 20:35
标题:
Nmap教程学习笔记
#################################################
#################################################
### ###
### FX-Ti出品教程 ###
### ###
### 望大家支持! ###
### ###
### 菜鸟飞过! ###
### ###
### QQ:1290975089###
#################################################
#################################################
Nmap
扫描:
1.网络扫描
2.端口扫描
3.服务与版本探测
4.操作系统探测
高级特性:
1.隐藏扫描源
2.激活时间特性(扫描工作速率变化)(针对防护设备过流量)
3.逃避防火墙
4.报告
TCP/IP理论:
协议就像是一种特殊的语言
MAC地址为硬件地址
IP地址为逻辑地址
访问IP地址会先行进行ARP解析
待解析到物理地址后再行发包
MAC地址为48位
前24位为厂商ID(借此判断设备)
后24位为厂商自行分配
理解OSI:
7.应用层
(Application Layer)
|
6.表示层
(Presentation Layer)
|
5.会话层
(Session Layer)
|
4.传输层
(Transport Layer)
|
3.网络层
(Network Layer)
|
2.数据链路层
(Data Link Layer)
|
1.物理层
(Physical Layer)
“我们经常讨论7层模型,这个模型的主要用途就是用来讨论整个TCP/IP工作原理的作用的。
对于真实环境的网络工程师来说其实是没有多少作用的,用来讲理论。
真正做软件时可能不会严格按照这个标准来实现,它不过是一个规范。”
1.典型设备:集线器
2.帧:提供有序并且连续的方式发送数据
数据链路层:管理物理地址,同步数据包,流量监控,物理层错误通告
典型设备:交换机:二层交换机降低了发送数据时网络的拥塞
因为它仅仅只会把数据发送到目的计算机所连接到的接口上,单端口转发
3.网络层:三层地址为逻辑地址
重要特点:可路由:将设备规划成各种不同的网段、IP、路由
典型设备:路由器与三层交换机
任务:1.逻辑地址规划
2.路由
4.传输层:有责任在两个点之间传输数据,维护链路
提供在两个点间的数据传输,管理点对点的流量控制、错误检测、错误恢复
主要两大协议:TCP(面向链接)、UDP(没有链接)
面向连接:
“1.打电话给对方通知要发传真了
2.发传真
3.要求对方核查传真”
传输层管理逻辑地址——Port,Port类似于一栋大楼的房间号,决定了数据的去向。
示例的端口列表
Port 协议 服务类型
80 TCP HTTP
443 TCP HTTPS
53 UDP/TCP DNS
25 TCP SMTP
22 TCP SSH
23 TCP Telnet
20(数据信道) TCP FTP
&21(控制信道) TCP FTP
135-139/445 TCP/UDP RPC
500 UDP ISAKMP
5060 UDP SIP
123 UDP NTP
5.会话层:1.插入一个会话层的头部,在两端对话层间同步数据
2.协商全双工与半双工
3.在两个进程间建立连接
6.表示层:1.转换数据/协议转换,转换网络类型,是网络服务操作所在层
2.压缩、加密解密
7.应用层:各种各样的应用程序
网络归类
1.OSI
2.DoD
(应用/进程层
主机到主机层
互联网层
网络访问层
)
3.TCP/IP
(应用层
传输层
互联网层
网络
数据链路层
物理层
)
以太网主要技术
CSMA/CD
全双工工作介绍:
主要协议:IP、TCP、UDP&ICMP
IP头部:
0481216192431版本首部长度服务类型长度认证标志段偏移量TTL协议校验和源IP地址目的IP地址选项 ...
ICMP头部:
消息类型子类型代码
校验和
消息标识
序列号
可选的ICMP数据结构
TCP头部:
其中的保留位正常来说是没有用的,但是可以为入侵来传输一些重要的隐秘信息
同时防火墙对于保留位通常来说也是有一定的防护
三次握手:
SYN
SYN-ACK
ACK
四次FN交换:
FIN+ACK
ACK
FIN+ACK
ACK
RST异常终止
UDP头部:
网络扫描:
1.主机扫描
技术类型:
1.ICMP ECHO Request
2.ICMP Timestamp
3.ICMP Address Mask Request
4.TCP Ping 发TCP SYN或TCP ACK包
5.UDP Ping 如果没开端口,服务器会回ICMP Port Unreachable,开了反倒不回
2.端口服务扫描
技术类型:
1.连接扫描(容易被记录):正经完成三次握手再异常终止
2.半开扫描(主要,无法逃避IPS检测):SYN->|<-SYN-ACK|RST->
3.隐秘扫描:SYN-ACK/FIN/ACK/NULL/XMAS
3.操作系统探测
技术:探测窗口大小、初始化序列号
4逃避
技术类型
1.慢速扫描
2.分片:凭借众多的分片拖垮IPS的缓存
3.欺骗:伪装众多主机进行扫描
4.指定源端口
5.指定IP选项
扫描的用途:
1.安全审计
2.兼容性测试
3.资产管理
4.域内设备清单
Nmap的历史
Nmap于1997被设计
出名于《黑客帝国》
《黑客帝国》中扫描出了SSH端口服务,借由黑客工具获取了Root权限
Nmap在SP2后做出了很多的改变来应付OS、IPS的变化
内部检测用途:
1.测试防火墙的开放端口
2.对工作站IP地址进行扫描,决定是否任何未授权的网络应用被安装
3.判断是否正确的Web服务器版本被安装到DMA区域
4.探测哪些系统开放了文件共享端口
5.探测未授权的FTP服务器、打印机和操作系统
Nmap命令介绍:
-sV判断主机版本号,客户端安装的软件(通过端口扫描发包报文判断)
-n关闭DNS解析(常用)
-sP主机发现 | nmap -sP 192.168.1.1-254
-oG + 文件名 | 输出报告结果为文件
-A 综合扫描
-iL + 文件名 | 调用医药的扫描报告结果文件
-p + 端口号 | 指定端口
-f 分片(未细讲)
显示指令强度:
-v 一般强度
-d 第二强度
--reason 报告判断原因回溯
-debug 判断过程回溯
--packet-trace 最强
安全审计用途:
1.统计防火墙,确认防火墙的过滤策略
2.扫描便捷设备开放的端口号
3.对服务的适当版本进行扫描
4.利用OS扫描技术,找到过时的OS和未授权的系统
5.发现未授权的应用和服务
Nmap高级功能
1.自定义TCP扫描的Flag
2.包分片
3.欺骗IP和MAC
4.添加伪装的源IP地址
5.源端口指定
6.添加随机数据到发送的包中
7.操作TTL
8.发送任意TCP、UDP效验和的包
自定义Flag
使用PSH和SYN两种不同的扫描相同主机相同服务得到不同的结果
原因(发PSH服务器回RST,发SYN它回SYN-ACK,Nmap只看RST判断端口是否Close/Open)
PSH:nmap -n --scanflags PSH -p 135 1.1.1.1
SYN:nmap -n --scanflags SYN -p 135 1.1.1.1
默认行为扫描(命令:nmap IP)
1.主机发现
2.SYN端口扫描(随机端口枚举)(识别靠内建的端口/服务对应表判断,未发包确认)
-A:
1.OS判断
2.版本检查
3.脚本扫描
4.traceroute
如何扫描Windows自身:-sT/-PN(主要)
IP:127.0.0.1
指定目标的技巧
nmap 192.168.1.0/24(网段) | 192.168.100.10-25(范围) | myhost.xyz.com(域名)
nmap 192.168.5,10,15-16.10,20(用逗号分隔)(对应序列类似握手问题)
nmap -sP --exclude web.xyz.com,dns.xyz.com,mail.xyz.com 192.168.100.0/24(排除在外)
nmap -sV -iL scan_host_list.txt(使用文件)
nmap --excludefile exclude_scan_host_list.txt 192.168.100.0/16(排除HOST文件,最好排列一个DHCP分发的地址)
nmap -p443 -iR 10(随机扫描)
目的制定命令格式
-iL <filename> 使用指定文件
-iR <number of targets> 随机指定数量
--exclude <host1,host2,host3> 排除在外
--excludefile <filename> 排除在外的文件
发现主机
nmap -sP 192.168.1.0/24
直连网络:发送ARP request,进行DNS解析
跨网络发送:ICMP ECHO request & TCP 80
注意:-sP参数表名制作主机发现而不做进一步扫描,只配置-sP表示使用默认方式实施主机扫描。
也可以跟上-PS -PA -PP -PM等等参数实施主机扫描,但是如果只配置-PS -PA -PP......参数,不仅没主机发现,
还会对active端口实施端口扫描
-PE ICMP ECHO request扫描=ping(code8|code0)
-PP 时间请求(code13|code14)
-PM 掩码请求(code17|code18)
-PS S为SYN(TCP)SYN同步扫描 发送SYN80 回送SYN-ACK
可能被防火墙干掉
I
-PA A为ACK 发送ACK的包 正常服务器回送RST
ACK包过不了防火墙,防火墙(状态监控防火墙)直接给RST
II(穿越失败就可以确认正在穿越状态监控防火墙)(控制列表类型可以过)
-PU 用UDP扫描,连接UDP高端口——31338 服务器正常状态下回应一个ICMP的端口不可达,如果目标主机见鬼的开了这个高端口,那么就没反应了。。。
防火墙不一定放
-PO 扫描协议号:1.ICMP相当于Ping(ICMP ECHO request)
-sL 没有发任何的包,只对于域进行DNS解析
-sN 关闭主机发现。。。
----------------------------------------------------------------------------------------------补充部分------------------------------------------------------------------------------------------
-PM Must请求
-PR ARP的Ping(网络直连时都缺省ARP Ping)
-R 启用DNS解析(默认启用)
--dns-server + NDS serveice 指定DNS服务器
--system-dns 系统自己的DNS服务器(缺省)
--send.ip 直连网络不想做ARP Ping,指定用IP包
网络协议号
十进制序号 关键词 协议 参考文献
----------- ------- -------- ----------
0 HOPOPT IPv6 Hop-by-Hop Option [RFC1883]
1 ICMP Internet Control Message [RFC792]
2 IGMP Internet Group Management [RFC1112]
3 GGP Gateway-to-Gateway [RFC823]
4 IP IP in IP (encapsulation) [RFC2003]
5 ST Stream [RFC1190,RFC1819]
6 TCP Transmission Control [RFC793]
7 CBT CBT [Ballardie]
8 EGP Exterior Gateway Protocol [RFC888,DLM1]
9 IGP any private interior gateway [IANA]
(used by Cisco for their IGRP)
10 BBN-RCC-MON BBN RCC Monitoring [SGC]
11 NVP-II Network Voice Protocol [RFC741,SC3]
12 PUP PUP [PUP,XEROX]
13 ARGUS ARGUS [RWS4]
14 EMCON EMCON [BN7]
15 XNET Cross Net Debugger [IEN158,JFH2]
16 CHAOS Chaos [NC3]
17 UDP User Datagram [RFC768,JBP]
18 MUX Multiplexing [IEN90,JBP]
19 DCN-MEAS DCN Measurement Subsystems [DLM1]
20 HMP Host Monitoring [RFC869,RH6]
21 PRM Packet Radio Measurement [ZSU]
22 XNS-IDP XEROX NS IDP [ETHERNET,XEROX]
23 TRUNK-1 Trunk-1 [BWB6]
24 TRUNK-2 Trunk-2 [BWB6]
25 LEAF-1 Leaf-1 [BWB6]
26 LEAF-2 Leaf-2 [BWB6]
27 RDP Reliable Data Protocol [RFC908,RH6]
28 IRTP Internet Reliable Transaction [RFC938,TXM]
29 ISO-TP4 ISO Transport Protocol Class 4 [RFC905,RC77]
30 NETBLT Bulk Data Transfer Protocol [RFC969,DDC1]
31 MFE-NSP MFE Network Services Protocol [MFENET,BCH2]
32 MERIT-INP MERIT Internodal Protocol [HWB]
33 DCCP Datagram Congestion Control Protocol [RFC-ietf-dccp-spec-11.txt]
34 3PC Third Party Connect Protocol [SAF3]
35 IDPR Inter-Domain Policy Routing Protocol [MXS1]
36 XTP XTP [GXC]
37 DDP Datagram Delivery Protocol [WXC]
38 IDPR-CMTP IDPR Control Message Transport Proto [MXS1]
39 TP++ TP++ Transport Protocol [DXF]
40 IL IL Transport Protocol [Presotto]
41 IPv6 Ipv6 [Deering]
42 SDRP Source Demand Routing Protocol [DXE1]
43 IPv6-Route Routing Header for IPv6 [Deering]
44 IPv6-Frag Fragment Header for IPv6 [Deering]
45 IDRP Inter-Domain Routing Protocol [Sue Hares]
46 RSVP Reservation Protocol [Bob Braden]
47 GRE General Routing Encapsulation [Tony Li]
48 MHRP Mobile Host Routing Protocol[David Johnson]
49 BNA BNA [Gary Salamon]
50 ESP Encap Security Payload [RFC2406]
51 AH Authentication Header [RFC2402]
52 I-NLSP Integrated Net Layer Security TUBA [GLENN]
53 SWIPE IP with Encryption [JI6]
54 NARP NBMA Address Resolution Protocol [RFC1735]
55 MOBILE IP Mobility [Perkins]
56 TLSP Transport Layer Security Protocol [Oberg]
using Kryptonet key management
57 SKIP SKIP [Markson]
58 IPv6-ICMP ICMP for IPv6 [RFC1883]
59 IPv6-NoNxt No Next Header for IPv6 [RFC1883]
60 IPv6-Opts Destination Options for IPv6 [RFC1883]
61 any host internal protocol [IANA]
62 CFTP CFTP [CFTP,HCF2]
63 any local network [IANA]
64 SAT-EXPAK SATNET and Backroom EXPAK [SHB]
65 KRYPTOLAN Kryptolan [PXL1]
66 RVD MIT Remote Virtual Disk Protocol [MBG]
67 IPPC Internet Pluribus Packet Core [SHB]
68 any distributed file system [IANA]
69 SAT-MON SATNET Monitoring [SHB]
70 VISA VISA Protocol [GXT1]
71 IPCV Internet Packet Core Utility [SHB]
72 CPNX Computer Protocol Network Executive [DXM2]
73 CPHB Computer Protocol Heart Beat [DXM2]
74 WSN Wang Span Network [VXD]
75 PVP Packet Video Protocol [SC3]
76 BR-SAT-MON Backroom SATNET Monitoring [SHB]
77 SUN-ND SUN ND PROTOCOL-Temporary [WM3]
78 WB-MON WIDEBAND Monitoring [SHB]
79 WB-EXPAK WIDEBAND EXPAK [SHB]
80 ISO-IP ISO Internet Protocol [MTR]
81 VMTP VMTP [DRC3]
82 SECURE-VMTP SECURE-VMTP [DRC3]
83 VINES VINES [BXH]
84 TTP TTP [JXS]
85 NSFNET-IGP NSFNET-IGP [HWB]
86 DGP Dissimilar Gateway Protocol [DGP,ML109]
87 TCF TCF [GAL5]
88 EIGRP EIGRP [CISCO,GXS]
89 OSPFIGP OSPFIGP [RFC1583,JTM4]
90 Sprite-RPC Sprite RPC Protocol [SPRITE,BXW]
91 LARP Locus Address Resolution Protocol [BXH]
92 MTP Multicast Transport Protocol [SXA]
93 AX.25 AX.25 Frames [BK29]
94 IPIP IP-within-IP Encapsulation Protocol [JI6]
95 MICP Mobile Internetworking Control Pro. [JI6]
96 SCC-SP Semaphore Communications Sec. Pro. [HXH]
97 ETHERIP Ethernet-within-IP Encapsulation [RFC3378]
98 ENCAP Encapsulation Header [RFC1241,RXB3]
99 any private encryption scheme [IANA]
100 GMTP GMTP [RXB5]
101 IFMP Ipsilon Flow Management Protocol [Hinden]
102 PNNI PNNI over IP [Callon]
103 PIM Protocol Independent Multicast [Farinacci]
104 ARIS ARIS [Feldman]
105 SCPS SCPS [Durst]
106 QNX QNX [Hunter]
107 A/N Active Networks [Braden]
108 IPComp IP Payload Compression Protocol [RFC2393]
109 SNP Sitara Networks Protocol [Sridhar]
110 Compaq-Peer Compaq Peer Protocol [Volpe]
111 IPX-in-IP IPX in IP [Lee]
112 VRRP Virtual Router Redundancy Protocol [RFC3768]
113 PGM PGM Reliable Transport Protocol [Speakman]
114 any 0-hop protocol [IANA]
115 L2TP Layer Two Tunneling Protocol [Aboba]
116 DDX D-II Data Exchange (DDX) [Worley]
117 IATP Interactive Agent Transfer Protocol [Murphy]
118 STP Schedule Transfer Protocol [JMP]
119 SRP SpectraLink Radio Protocol [Hamilton]
120 UTI UTI [Lothberg]
121 SMP Simple Message Protocol [Ekblad]
122 SM SM [Crowcroft]
123 PTP Performance Transparency Protocol [Welzl]
124 ISIS over IPv4 [Przygienda]
125 FIRE [Partridge]
126 CRTP Combat Radio Transport Protocol [Sautter]
127 CRUDP Combat Radio User Datagram [Sautter]
128 SSCOPMCE [Waber]
129 IPLT [Hollbach]
130 SPS Secure Packet Shield [McIntosh]
131 PIPE Private IP Encapsulation within IP [Petri]
132 SCTP Stream Control Transmission Protocol [Stewart]
133 FC Fibre Channel [Rajagopal]
134 RSVP-E2E-IGNORE [RFC3175]
135 Mobility Header [RFC3775]
136 UDPLite [RFC3828]
137 MPLS-in-IP [RFC4023]
138-252 Unassigned [IANA]
253 Use for experimentation and testing [RFC3692]
254 Use for experimentation and testing [RFC3692]
255 Reserved [IANA]
端口扫描
Open端口:
1.潜在的安全的弱点
2.提供应用与服务的清单
3.确认软件策略的强度
Closed端口:
1.主机发现
2.操作系统判断
对Nmap而言的6种端口状态
1.Open 开放了在线应用程序在接受TCP和UDP的包
2.Closed 端口可以被访问,但没有应用程序在侦听
3.Filtered 没有回应,去的包或回的包可能被过滤掉
4.Unfiltered 没有被过滤,ACK扫描专用
情况是:ACK scan,open&closed回应都是RST,不好判断,只能说主机是活动的
5.Open|filtered (UDP,IP Proto, FIN, Null, Xmas scans)
开放的UDP端口不回应,或者回应的ICMP被过滤
6.Closed|filtered IP ID Idle scan
基础端口扫描
SYN扫描的不同结果:
->SYN | <-SYN-ACK ——Open
| <-RST ——Closed
| <-ICMP Unreachable ——Filtered(被访问控制列表过滤,由访问控制列表发出)
nmap -sS SYN同步扫描(TCP)
探测服务结果依旧靠内建的表来判断,不做确认
-P0 不做主机发现
-sT TCP连接扫描
-sU UDP扫描,对算有UDP的端口进行扫描
-sV 确认版本
-sO 协议扫描
额外的高级扫描
RFC定义:如果一个包内不包含SYN、RST、ACK中的任何一个Flag,回送RST
三种特殊扫墙:
1.TCP Null scan 没有Flag的扫描 -sN
2.TCP FIN scan Flag为FIN的扫描 -sF
3.Xmas scan 反着来,Flag置为FIN, PSH, URG -sX
这些扫描一般来说都逃避不了IDS的检测,
-sW 探测窗口大小,一般来说窗口大小取决于目标主机的缓存大小,也与操作系统有关系,不同操作系统对winows处理有区别
FIN+ACK的扫描
-sM
Idle scan -sL 完全隐藏的扫描,神!很有想象力
利用IP头部的ID位数进行判断实施扫描
指定Flag
--scanflags URGPSH
扫描范围
默认扫描端口范围为内建的服务映射表扫描端口(随机扫描)
-r 顺序扫描
-p -100 从一到一百
-p 60000- 大于六万
-p- 所有
且关联文件:
-p ftp, http*
文件内ftp, http*关联的端口
nmap -sU -sS -p U:53, T:80, 134-139 192.168.1.0/24 指定UDP、TCP扫描端口
-p [6000-6100] 6000到6100之间的
-p + 网络协议号
操作系统探测方法
1.初始化序列号
2.IP ID
3.ECN
4.窗口大小
报告:
1.厂商
2.具体版本
3.设备
-O扫描操作系统 --osscan-guess尽量猜
探测服务和应用版本
1.服务协议
2.应用名
3.版本号
4.主机名称
5.设备类型
6.操作系统家族
7.细节杂项
8.端口状态
--allport
--version-all最高强度
Nmap脚本引擎
1.增强的网络发现
2.增强的版本探测
3.脆弱节点探测
4.恶意软件探测
5.漏洞利用
--scritp=<script_filename>
性能优化
速率调整
-T +次数 最低为0,慢的不可思议
0-5
逃避和欺骗
1.分片
-f 8个字节
2.混淆攻击
-D <IP, IP,ME>乱写IP
--spoof-mac 0 随意伪装MAC | D-Link伪装成D-Link的MAC
--source-port 53 伪装53源端口
--mtu
--badsum 错误的效验和
导出数据
-oN + 名字 myscan-%D-%T.nmap | %D日期, %T时间(周期性扫描用)
--open只显示open的端口号
--append-output 在之前的输出文件后继续添加之后扫描的报告
杂项:
1.-6 IPv6扫描
2.-A全面扫描
3.-O OS检测
4.-sV服务版本检查
5.-sC脚本扫描
6.-traceroute
Zenmap部分就直接跳过了。。。
既然学黑了,就下用命令行的决心!
Nmap操作系统指纹
OS指纹技术:
1.主动
主动发包,大概15种探针
利用TCP、UDP和ICMP协议
结果包含:
1.窗口大小
2.windows 位
3.IP DF
4.时间戳
5.ECN flag
6.SN
7.TTL
2.被动
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2