摘要:课程编写
课程编写 |
||
类别 |
内容 |
|
实验课题名称 |
Nmap工具使用 |
|
实验目的与要求 |
利用Nmap工具进行端口扫描 |
|
实验环境 |
VPC1(虚拟PC) |
操作系统类型:linux,网络接口:eth0 |
VPC1 连接要求 |
PC 网络接口,本地连接与实验网络直连 |
|
软件描述 |
1、学生机要求安装java环境 |
|
实验环境描述 |
1、学生机与实验室网络直连; |
|
预备知识 |
Nmap是一个综合的、功能全面的端口扫描工具,并被专业人员广泛使用。该工具由fyodor编写并维护。由于其具备稳定性和灵活性,是渗透测试人员必备的工具。
除了端口扫描外nmap还具备以下功能:
主机发现:nmap可以用来查找目标网络中在线主机。默认情况下,nmap通过icmp回应请求、向443端口发送TCP SYN包、向80端口发送TCP ACK包和icmp时间戳请求方式发现目标主机
服务/版本识别:nmap发现端口后,可以进一步检查服务协议、应用程序名称、版本号、主机名、设备类型和操作系统信息。
操作系统识别:nmap向远程主机发送系列数据包,并检查回应。然后与操作系统指纹数据库进行比较,并打印出匹配结果的细节。
网络路由跟踪:他通过尽可能到达目标系统的方式确定目标系统的端口和协议。Nmap路由跟踪从较高的生存时间开始,并逐步递减直到ttl达到0
Nmap脚本引擎:使用此功能,nmap也可以用于检查网络服务中漏洞、枚举目标系统资源等 |
|
实验内容 |
使用Nmap具进行端口扫描 |
|
实验步骤 |
学生登录实验场景的操作 1、学生单击实验拓扑按钮,进入实验场景,进入bt5目标主机,(第一次启动目标主机,还需要安装java控件),如图所示: 2、打开目标主机bt5,进入如下命令行模式,然后输入startx进入图形界面。 新手我们建议进入图形界面进行相应的操作。如图所示:
3、打开图形界面后,我们点击菜单栏上的terminal。打开命令终端。如图:
4、通过apt-get install nmap命令经常更新nmap是一个很好的习惯。如图:
5、要启用nmap,可在菜单中选择application——“backtrack”——“information gather”——“network analysis”——“network scanners”——“nmap”。如图:
6、可以直接使用命令nmap,该命令显示所有选项及其说明,对于nmap使用新手来说,可能很难找到有用的选项,但实际上仅需指定目标主机即可完成扫描。如图: 这里扫描的ip可是为同一网段的任意ip(前提是他们之间是连通的)
7、现在开始我们扫描192.168.1.0/24网段的地址,为监控nmap发送的数据包,我们需要一个抓包工具,例如tcpdump。打开linux目标主机,输入用户名:root,密码:123456.如图:
8、输入命令tcpdump –nnX tcp and host 192.168.1.119 Ip地址192.168.1.119是运行nmap机器的地址,请根据实际情况调整配置。如图:
9、返回bt5主机,打开一个新的控制台,并执行nmap 192.168.1.0/24命令。 (由下图可知nmap默认从256个ip地址中扫描1000个端口。)如图:
10、返回linux,你将看到包捕获结果。如图: 这是我机器上发送的数据包,请注意使用的同步(syn)标志,这是nmap在特权用户(如UNIX系统的root用户)下默认使用的标志。 以下为从远程机器上收到的回应包:
11、下面我们来介绍Nmap TCP选项。Nmap的大多选项只有特权用户才能使用(如:linux下的root,windows下的administrator),这主要为接收和发送原始数据包,默认情况下nmap使用tcp syn扫描,但若不是运行与特权用户下将会采用tcp连接扫描。 使用-sT来实现tcp连接扫描。该选项将于目标端口进行三次握手,尝试建立连接,如果建立连接成功,则说明端口开放,由于对每个端口都进行三次握手,所以扫描方式比较慢。此次扫描时间是53.35s。如图:
12、SYN扫描(-sS):该选项也称为“半开连接”或者“SYN stealth”。采用该选项,nmap发送syn包后等待回应,如果接收SYS/ACK包说明端口开放,如果收到RST包,说明端口关闭;如果没有回应或者回应icmp不可达错误消息,则说明端口被过滤。时间为4.96秒,比连接扫描的时间短很多。如图:
13、我们可以使用nmap --help命令查看nmap的帮助文档,查看nmap后面可以使用哪些参数。如图:
14、Nmap UDP扫描选项。 相对于tcp多种类型的扫描方式,udp扫描仅有一种扫描方式(-sU),虽然udp扫描没tcp扫描可靠,但渗透测试者不能因此而轻视该扫描方式。由于linux内核限制icmp端口不可达信息在1秒内响应一次,对65536个端口完成扫描耗时超过18小时,所以udp扫描问题在于如何提高扫描速度。(192.168.1.119为本机的ip地址)如图: 有以下几种方法可以帮助解决扫描慢的问题: 1、 并行运行扫描udp扫描 2、 先扫描常用端口 3、 在防火墙后面扫描 4、 设置——host-timeout选项以跳过相应慢的主机
15、Nmap端口指定: 下面的使用NULL方式来扫描22、25、80、3360端口。如图:
16、Nmap的输出选项。 Nmap的输出结果可以保存到外部文件中,保存的格式可以是: 交互式输出:这是默认输出,是标准输出,一般是输出到控制台 正常输出(-oN filename):与交互式输出类似,但是不包括运行信息和警告信息 XML输出(-oX filename):改格式可以转化成html、能够被nmap用户图形接口解析并支持导入数据库,推荐使用改格式。 Grep输出(-oG filename):该方式已经过时 下面我们使用-oX输出:
17、使用ls命令查看文件hh.xml是否存在,然后使用cat hh.xml命令查看文件中的内容。如图:
18、由于html文件的可读性比xml更好,所以我们将xml格式转换成html格式。程序xsltproc可以完成这一转换。如图:
19、使用cat hh.html查看源代码。如图:
20、也可以使用浏览器打开hh.html文件。如图:
21、实验到此结束,关闭实验环境。 |
最新评论