云主机端口扫描

Nmap扫描工具       

        扫描器是一种自动检测远程或本地主机安全性弱点的程序。它集成了常用的各种扫描技术,能自动发送数据包去探测和攻击远端或本地的端口和服务,并自动收集和记录目标主机的反馈信息,从而发现目标主机是否存活、目标网络内所使用的设备类型与软件版本、服务器或主机上各TCP/UDP端口的分配、所开放的服务、所存在的可能被利用的安全漏洞。据此提供-份可靠的安全性分析报告,报告可能存在的脆弱性。本任务需要对TCP/IP协议工作过程有比较清晰的理解。

        端口扫描是所有云端安全测试的基础, Nmap就是一款全球 黑客必备的端口扫描利器,虽然Nmap这些年来功能越来越多,它也是从一个高效的端口扫描器开始的,并且那仍然是它的核心功能。Nmap <ngsst> 这个简单的命令扫描主机<ngsst>_上超过1660个TCP端口。许多传统的端口扫描器只列出所有端口是开放还是关闭的,而Nmap把端口分成六个状态,包括open(开放的)、closed(关闭的)、 filtered(被过滤的)、unfiltered(未被过滤的)、openlfiltered(开放或者 被过滤的)、closed|filtered(关闭或者被过滤的)。

        Nmap ( "Network Mapper(网络映射器)”)是网络探测和安全审核的工具。它的设计目标是快速地扫描大型网络,当然也可用于扫描单个主机。

        Nmap的主要功能是用于安全审核,以新颖的方式使用原始IP报文来发现网络上的主机、主机提供的服务(应用程序名和版本)、服务运行的操作系统(包括版本信息)环境,使用的报文过滤器/防火墙类型等。除此之外,许多系统管理员和网络管理员也用它来做一些日常的工作,比如查看整个网络的信息、管理服务升级计划、 以及监视主机和服务的运行等。

        Nmap的主要功能是用于安全审核,以新颖的方式使用原始IP报文来发现网络上的主机、主机提供的服务(应用程序名和版本)、服务运行的操作系统(包括版本信息)环境,使用的报文过滤器/防火墙类型等。除此之外,许多系统管理员和网络管理员也用它来做一些日常的工作,比如查看整个网络的信息、管理服务升级计划、以及监视主机和服务的运行等。

        Nmap输出的是扫描目标的列表,以及每个目标的补充信息,至于是哪些信息则依赖于所使用的选项。"所感兴趣的端口表格” 是其中的关键,表中列出端口号,协议,服务名称和状态。

云主机端口扫描实验

实验任务:

首先,在Vmware中安装Windows 7操作系统。

任务一:Nmap安装和扫描基础

(1)掌握安全扫描的概念、意义及应用分析。。

(2)掌握Nmap扫描器的安装。
(3)针对特定扫描目的,掌握Nmap扫描器的参数方法。

任务二:选择和排除扫描目标

(1)掌握排除扫描目标的命令行用法。

(2)用Nmap指定排除扫描目标。

任务三:扫描发现存活的主机

(1) 掌握Nmap扫描存活主机的意义,相关基础知识。。

(2) 使用Nmap进行存活主机扫描。

任务四:识别目标操作系统

(1) 掌握如何识别远程机器的系统版本。

(2) 使用Nmap扫描并识别远程机器的系统版本。

任务五:识别目标主机的服务及版本

(1) 掌握识别目标主机所开放端口上的应用。

(2) 使用Nmap扫描并识别目标主机所开放端口上的应用。

任务六:绕过防火墙扫描端口

(1) 掌握如何躲过防火墙检测和拦截的相关扫描原理。

(2) 使用Nmap的相关参数躲避防火墙以完成目标主机探测。

实验环境:

( 1 )测试真实的互联网环境

①正常的互联网连接及访问公开请允许使用的测试站点。

②正常运行的Windows或Kali Linux下的Namp及真实的局域网环境。

( 2 )在虚拟机VMware中Windows或Kali Linux中使用Nmap进行局域网内的扫描测试。在VMware中通过自定义桥接模式, 2台或以上安装有Windows ( 2008、xp)、 linux、Kali Linux的虚拟机构成测试用网络环境。云主机端口扫描

任务一、Nmap安装和扫描基础

1.在Windows7虚拟机中安装Nmap

在Nmap官网选择下载与系统匹配的安装包

云主机端口扫描

打开License Agreement界面,单击I Agree,进行下一步。

云主机端口扫描

默认选择Next,进行下一步操作。

云主机端口扫描

选择安装位置

云主机端口扫描

进入安装步骤,默认下一步。

云主机端口扫描

完成安装

云主机端口扫描

2.启动Windows中安装的Nmap来完成若干扫描实例

使用IP地址(主机名也可以)扫描主机    nmap   IP地址

云主机端口扫描

使用“-v”参数显示远程主机更详细的信息    nmap -v

云主机端口扫描

云主机端口扫描

使用“*”通配符来扫描整个子网或某个范围的IP地址   nmap 192.168.1.*

云主机端口扫描

运行带“-iL”选项的nmap命令来扫描文件中列出的所有IP地址

namp -iL master.txt

云主机端口扫描云主机端口扫描

扫描所有主机,并确定系统类型  namp -sS -O

云主机端口扫描

测试某主机是否运行了某些端口,并确认端口运行的应用

云主机端口扫描

随机选择扫描十台主机的80端口

云主机端口扫描

云主机端口扫描

云主机端口扫描

任务二、选择和排除扫描目标

1.用-iR随机扫描三台主机

云主机端口扫描

2.扫描192.168.43.0/24网段的主机但排除192.168.43.11主机

云主机端口扫描

云主机端口扫描

云主机端口扫描

任务三、扫描发现存活的目标主机

用-iL在网络上扫描nesst.com域的主机,仅列出目标域中主机的IP地址并不能区分是否为存活主机。

云主机端口扫描

用-sn参数发现网络中192.168.43.1-20的20台主机中的存活主机。

云主机端口扫描

-Pn参数将所有指定的主机视作开启状态,跳过主机发现的过程,直接报告端口开放情况。

云主机端口扫描

组合参数探测

云主机端口扫描

任务四、识别目标操作系统

使用nmap -O目标主机地址来探测操作系统类型

云主机端口扫描

使用namp -O –osscan-guess目标主机地址来猜测操作系统类型

云主机端口扫描

云主机端口扫描

任务五、识别目标主机的服务及版本

使用-sV IP进行基本的版本扫描

云主机端口扫描

详尽的列出探测过程

nmap -sV --version-trace IP地址

云主机端口扫描

云主机端口扫描

轻量级探测

nmap -sV --version-light IP地址

云主机端口扫描

尝试使用所有probes探测

nmap -sV --version-all IP地址

云主机端口扫描

安装Wireshark工具

运行Wireshark安装包,点击next执行下一步

云主机端口扫描

点击I Agree执行下一步

云主机端口扫描

默认全部安装

云主机端口扫描

选择安装位置

云主机端口扫描

勾选Install USBPcap 1.2.0.4 ,进行安装

云主机端口扫描

任务六、绕过防火墙扫描端口

使用诱饵隐蔽扫描

云主机端口扫描

运行Wireshark工具,查看捕获的数据包

云主机端口扫描

使用-S及-e进行源地址欺骗扫描

云主机端口扫描

使用Wireshark抓包,扫描出的源地址变成了192.168.43.22

云主机端口扫描

硬件地址不足

nmap --spoof-mac 0 192.168.43.128

云主机端口扫描

使用Wireshark抓包,对目标主机进行硬件地址欺骗扫描,硬件地址被Nmap自动补齐的地址代替

云主机端口扫描

总结:

Nmap最著名的功能之一是用TCP/IP协议栈fingerprinting进行远程操作系统探测。

        Nmap使用TCP/IP协议栈指纹来识别不同的操作系统和设备。在RFC规范中,有些地方对TCP/IP的实现并没有强制规定,由此不同的TCP/IP方案中可能都有自己的特定方式。Nmap主要是根据这些细节上的差异来判断操作系统的类型的。具体实现方式如下:

(1)Nmap内部包含了2600多已知系统的指纹特征(在文件Nmap-os-db文件中)。将此指纹数据库作为进行指纹对比的样本库。

(2)分别挑选一个open和closed的端口,向其发送经过精心设计的TCP/UDP/ICMP数据包,根据返回的数据包生成一份系统指纹。

(3)将探测生成的指纹与Nmap-os-db中指纹进行对比,查找匹配的系统。 

如果无法匹配,以概率形式列举出可能的系统。

如何躲过防火墙检测和拦截的相关扫描原理

        为了保证网络安全,通常的方法是使用防火墙来隔离网络,这会导致网络搜索困难,如何绕过防火墙完成扫描是一个关键问题。 Nmap提供了绕过某些较弱的防范机制的手段如尝试哄骗网络,将自己想象成一个攻击者,使用FTP bounce扫描、Idle扫描、分片攻击或尝试穿透自己的代理等技术来攻击自己的网络。

        防御手段不断加强,除通过防火墙限制网络行为外,还使用可以主动阻止可疑恶意行为的入侵预防系统(IPS)等新兴的技术,增强了分析报文的难度。几乎所有主流的IDS和IPS都包含了检测Nmap扫描的规则,Nmap很容易被发现,但可以用于增强安全性。规避原理为:

(1)分片(Fragmentation)

将可疑的探测包进行分片处理(例如将TCP包拆分成多个IP包发送过去),某些简单的防火墙为了加快处理速度可能不会进行重组检查,以此避开其检查。

(2)IP诱骗(IP decoys)

在进行扫描时,将真实IP地址和其他主机的IP地址(其他主机需要在线,否则目标主机将回复大量数据包到不存在的主机,从而实质构成了拒绝服务攻击)混合使用,以此让目标主机的防火墙或IDS追踪检查大量不同IP地址的数据包,降低其追查到攻击机的概率。注意,某些高级的IDS系统通过统计分析仍然可以追踪出扫描者真实IP地址。

(3)IP伪装(IP Spoofing)

IP伪装即将自己发送的数据包中的IP地址伪装成其他主机的地址,让目标机认为是其他主机在与之通信。需要注意,如果希望接收到目标主机的回复包,那么伪装的IP需要位于同一局域网内。如果既希望隐蔽自己的IP地址,又希望收到目标主机的回复包,那么可以尝试使用idle scan或匿名代理(如TOR)等网络技术。