admin 发表于 2013-3-14 20:35:44

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            
1   ICMP         Internet Control Message         
2   IGMP         Internet Group Management         
3   GGP         Gateway-to-Gateway               
4   IP         IP in IP (encapsulation)         
5   ST         Stream                     
6   TCP         Transmission Control               
7   CBT         CBT                           
8   EGP         Exterior Gateway Protocol   
9   IGP         any private interior gateway         
                     (used by Cisco for their IGRP)
10   BBN-RCC-MON BBN RCC Monitoring                     
11   NVP-II       Network Voice Protocol         
12   PUP         PUP                           
13   ARGUS       ARGUS                                 
14   EMCON       EMCON                                 
15   XNET         Cross Net Debugger            
16   CHAOS       Chaos                                 
17   UDP         User Datagram                  
18   MUX         Multiplexing                     
19   DCN-MEAS   DCN Measurement Subsystems         
20   HMP         Host Monitoring               
21   PRM         Packet Radio Measurement               
22   XNS-IDP   XEROX NS IDP               
23   TRUNK-1   Trunk-1                              
24   TRUNK-2   Trunk-2                              
25   LEAF-1       Leaf-1                              
26   LEAF-2       Leaf-2                              
27   RDP         Reliable Data Protocol         
28   IRTP         Internet Reliable Transaction   
29   ISO-TP4   ISO Transport Protocol Class 4
30   NETBLT       Bulk Data Transfer Protocol   
31   MFE-NSP   MFE Network Services Protocol   
32   MERIT-INP   MERIT Internodal Protocol            
33   DCCP         Datagram Congestion Control Protocol   
34   3PC         Third Party Connect Protocol         
35   IDPR         Inter-Domain Policy Routing Protocol
36   XTP         XTP                                 
37   DDP         Datagram Delivery Protocol            
38   IDPR-CMTP   IDPR Control Message Transport Proto
39   TP++         TP++ Transport Protocol               
40   IL         IL Transport Protocol            
41   IPv6         Ipv6                                  
42   SDRP         Source Demand Routing Protocol      
43   IPv6-Route   Routing Header for IPv6         
44   IPv6-Frag   Fragment Header for IPv6         
45   IDRP         Inter-Domain Routing Protocol   
46   RSVP         Reservation Protocol         
47   GRE         General Routing Encapsulation   
48   MHRP         Mobile Host Routing Protocol
49   BNA         BNA                           
50   ESP         Encap Security Payload            
51   AH         Authentication Header            
52   I-NLSP       Integrated Net Layer Security   TUBA
53   SWIPE       IP with Encryption                     
54   NARP         NBMA Address Resolution Protocol   
55   MOBILE       IP Mobility                     
56   TLSP         Transport Layer Security Protocol   
                     using Kryptonet key management
57   SKIP         SKIP                              
58   IPv6-ICMP   ICMP for IPv6                     
59   IPv6-NoNxt   No Next Header for IPv6         
60   IPv6-Opts   Destination Options for IPv6      
61               any host internal protocol         
62   CFTP         CFTP                           
63               any local network                     
64   SAT-EXPAK   SATNET and Backroom EXPAK            
65   KRYPTOLAN   Kryptolan                           
66   RVD         MIT Remote Virtual Disk Protocol      
67   IPPC         Internet Pluribus Packet Core         
68               any distributed file system         
69   SAT-MON   SATNET Monitoring                     
70   VISA         VISA Protocol                        
71   IPCV         Internet Packet Core Utility         
72   CPNX         Computer Protocol Network Executive   
73   CPHB         Computer Protocol Heart Beat         
74   WSN         Wang Span Network                     
75   PVP         Packet Video Protocol               
76   BR-SAT-MON   Backroom SATNET Monitoring            
77   SUN-ND       SUN ND PROTOCOL-Temporary            
78   WB-MON       WIDEBAND Monitoring                  
79   WB-EXPAK   WIDEBAND EXPAK                        
80   ISO-IP       ISO Internet Protocol               
81   VMTP         VMTP                                 
82   SECURE-VMTP SECURE-VMTP                           
83   VINES       VINES                                 
84   TTP         TTP                                 
85   NSFNET-IGP   NSFNET-IGP                           
86   DGP         Dissimilar Gateway Protocol   
87   TCF         TCF                                 
88   EIGRP       EIGRP                           
89   OSPFIGP   OSPFIGP                     
90   Sprite-RPC   Sprite RPC Protocol            
91   LARP         Locus Address Resolution Protocol   
92   MTP         Multicast Transport Protocol         
93   AX.25       AX.25 Frames                               
94   IPIP         IP-within-IP Encapsulation Protocol   
95   MICP         Mobile Internetworking Control Pro.   
96   SCC-SP       Semaphore Communications Sec. Pro.      
97   ETHERIP   Ethernet-within-IP Encapsulation   
98   ENCAP       Encapsulation Header         
99               any private encryption scheme         
100   GMTP         GMTP                                 
101   IFMP         Ipsilon Flow Management Protocol   
102   PNNI         PNNI over IP                     
103   PIM         Protocol Independent Multicast   
104   ARIS         ARIS                              
105   SCPS         SCPS                                 
106   QNX         QNX                                 
107   A/N         Active Networks                     
108   IPComp       IP Payload Compression Protocol   
109   SNP         Sitara Networks Protocol         
110   Compaq-Peer Compaq Peer Protocol               
111   IPX-in-IP   IPX in IP                           
112   VRRP       Virtual Router Redundancy Protocol
113   PGM         PGM Reliable Transport Protocol   
114               any 0-hop protocol                  
115   L2TP         Layer Two Tunneling Protocol         
116   DDX         D-II Data Exchange (DDX)         
117   IATP       Interactive Agent Transfer Protocol   
118   STP         Schedule Transfer Protocol            
119   SRP         SpectraLink Radio Protocol      
120   UTI       UTI                                 
121   SMP       Simple Message Protocol               
122   SM       SM                                 
123   PTP       Performance Transparency Protocol      
124   ISIS over IPv4                           
125   FIRE                                       
126   CRTP   Combat Radio Transport Protocol      
127   CRUDP   Combat Radio User Datagram         
128   SSCOPMCE                                       
129   IPLT                                       
130   SPS   Secure Packet Shield                  
131   PIPE   Private IP Encapsulation within IP      
132   SCTP   Stream Control Transmission Protocol   
133   FC   Fibre Channel                        
134   RSVP-E2E-IGNORE                              
135   Mobility Header                              
136   UDPLite                                       
137   MPLS-in-IP                                    
138-252 Unassigned                                       
253   Use for experimentation and testing         
254   Use for experimentation and testing         
255               Reserved                           





端口扫描

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之间的
-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.ECNflag

6.SN

7.TTL




2.被动





页: [1]
查看完整版本: Nmap教程学习笔记