您的位置:首页 > 理论基础 > 计算机网络

[Nmap渗透测试指南]第三章(探索网络)

2017-05-29 11:19 274 查看

3.1端口介绍

是指接口电路中的一些寄存器,这些寄存器分别用来存放数据信息,控制信息和转台信息,相应的端口分为数据端口,控制端口和状态端口

电脑运行的系统程序,就像是一个闭合的圆圈,但是电脑是为人服务的,它需要接受一些指令来调整系统功能来工作,于是就把这个圆圈截成很多段,接口处叫端口。系统运行到端口时,先判断是否打开或者关闭,如果关闭则是绳子接通系统继续往下执行;如果打开,系统就得到命令,有外部数据输入,接受外部数据并执行

端口用来区分众多同时运行的进程的指定一个。

数据的发送进程和接收进程都要开启端口

3.3Nmap识别端口状态





3.4时序扫描







-F的意思是快速的扫描

3.5常用扫描方式

-p|-F
用这个选项可以指定一个端口或者一个范围的端口进行扫描
nmap -p 445 192.168.1.1

如果TCP和UDP端口一起扫描,端口好前面要加T:或者U:。注意同时扫描时,必须指定-sU以及至少一个TCP扫描类型(如-sS(隐蔽扫描),-sF(FIN扫描)或者-sT(tcp端口扫描完整3次握手)),如果没有给定限制则被加到所有协议列表

-F选项
快速的扫描有限的端口,在Nmap中nmap-services包含了默认扫描端口,也可以用--datadir选项指定自己的nmap-services文件

-r选项
使用这个选项不会对端口进行随机顺序扫描,默认情况是随机顺序扫描我们也可以使用--top-ports  端口数             来进行排序



以上结果为扫描100个开放率最高的端口

--ports-ratio
洒满指定一定概率以上的端口,跟--top-ports颇为相似,但是这个选项的参数作为频率使用

3.6 TCP SYN 扫描

-sS 比较常用的高效且非常有用的扫描方式,速度快一秒可以扫描上千个端口,也比较隐蔽不容易被防火墙和管理员发现.如果发现目标断开出现被开发或者过滤情况可以使用SYN扫描,因为它可以很明确区端口的状态

半开放扫描,不进行TCP的三次握手,不容易被主机察觉. 

向目标主机发送SYN包请求,如果收到RST包则说明无法连接主机即目标端口未开放,如果开放则响应一个SYN/ACK包,当Nmap收到响应或,则向目标主机发送一个RST代替ACK,连接结束 ,此时3次握手并没有完成

在SYN扫描不能使用时,TCP连接扫描会使用默认的TCP扫描

3.7 TCP连接扫描

-sT   TCP扫描是最基础,最稳定的扫描方式
Nmap发送一个SYN包请求,如果收到RST包则说明目标端口是关闭的,如果目标主机响应一个SYN+ACK包,Nmap想目标主机发送一个ACK包来确认连接(完整的TCP连接)

3.8 UDP扫描

-sU   UDP扫描非常慢,但是容易发现跟多可以被利用的端口.发送一个空的UDP报文(UDP头没有任何数据),如果返回ICMP端口不可达则认定该端口是关闭的,其他的就可以是认定是被过滤的,如果被响应了则说明目标端口是开放的

因为很慢所以常常使用-p来指定需要扫描的端口,如果从头扫到位会花费大量时间(-p指定多个端口时可以使用逗号进行分割不能用空格分割)

3.9 隐蔽扫描

有3个选项   -sN   -sF   -sX
-sN 是Null扫描(与Xmas相反) ,若目标主机的相应端口时关闭会响应一个RST包,若开发则不会响应任何信息.
-sF 是FIN扫描, 当使用TCP SYN扫描 可能会被目标主机的防火墙发现并阻止使用TCP FIN有很好的穿透效果.工作原理是向目标端口发送一个FIN包,如果目标返回RST则说明端口开发,如果没有收到RST则说明端口关闭  

-sX   Xmas扫描  FIN,PSH,URG标记位打开,如果目标主机端口开放则会响应一个RST标志包   (如果系统不遵循RFC 793  不管是否开放都响应RST)

这些方式可以躲过一些无状态防火墙的过滤,比前面的SYN,UDP等有更好的效果,比他们还要隐蔽,如果扫描不出结果或者被过滤的情况,可以使用这个方式进行扫描

3.10 TCP ACK扫描

-sA   有一个致命的弱点不能确定目标端口是开放还是被过滤  端口open和closed都都会返回RST被Nmap认为unfiltered,所以无法确是否确定   .不响应的端口或者发送特定错误的ICMP消息会被Nmap认为是filtered.

3.11  TCP窗口扫描

-sW    与ACK的扫描方式原理一样  根据RST返回的TCP窗口域来判断目标端口是否开放    正数表示窗口大小,0表示窗口关闭

3.12  TCP Maimon扫描

-sM   与NULL,FULL以及Xmas扫描完全一样,他的发明者注意到许多基于BSD的系统只是丢弃探测报文

nmap -sM -T4 192.168.1.1          (T4可以增加扫描速度)

3.13 自定义TCP扫描

--scanflags  标志位                                         (URG,ACK,PSH,RST,SYN,FIN)

设置标志位进行扫描  可以填入RSTSYNFIN来设置所有标志位,但是对扫描没多大用处.标志位的顺序不重要而且之间没有空格,不指定则默认SYN扫描

nmap -sT  --scanflags SYNURG 192.168.1.1

3.14 空闲扫描

-sI     允许进行端口完全欺骗扫描,攻击在可以利用不活跃的僵尸主机反弹给攻击者一个信道来进行端口扫描,IDS会把僵尸主机当作攻击者从而达到隐藏自身IP目的



上面利用僵尸主机的80端口对目标主机进行扫描.需要注意的是端口不能被自己的Nmap主机或者被目标主机过滤掉并且必须开发,我们可以事先对僵尸主机进行端口扫描

3.15  IP协议扫描
-sO   可以确定目标主机支持哪些IP协议    可以-p  选择选择需要扫描的协议号

3.16 FTP Bounce扫描

-b   允许用户连接一台FTP服务器,然后要求文件送到一台第三方服务器,这种扫描方式已经很少被支持,但也不失是一种躲避防火墙的方颁发,或许用户能得到更多可靠结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: