渗透测试工程师——第一部分 信息扫描实验系列 001主机存活性探测实验

实验目的

  • 熟悉TCP/IP协议、Ping命令基本概念
  • 学习nmap、SuperScan扫描方式及其原理
  • 掌握在Windows和Linux环境下相关网络命令的使用

实验原理

1.TCP/IP协议

TCP/IP协议是一个协议集合,它包括TCP、IP、UDP、ICMP及其他的一些被称为子协议的协议。这里只介绍IP和TCP。

网络协议

IP属于TCP/IP模型的网络层,提供关于数据应如何传输到何处的信息。 IP是一种使TCP/IP可用于网络连接的子协议,即TCP/IP可跨越多个局域网段或通过路由器跨越多种类型的网络。

在一个网际环境中,被连接在一起的单个网络被称为子网,子网是TCP/IP联网的一个重要组成部分,数据帧的IP部分被称为一个IP数据包,IP数据报包括报头和数据,总长度不能超过65535字节。

IP地址是给每一个连接在Internet上的主机分配的一个在全世界范围内唯一的32位地址,由网络地址和主机地址组成。Internet的IP地址分为5类,即A类到E类

IP地址分类
其中有一些私有地址,专门为组织机构内部使用,包括

  • A类10.0.0.0到10.255.255.255
  • B类172.16.0.0到172.31.255.255
  • C类192.168.0.0到192.168.255.255

传输控制协议(TCP)

TCP称为传输控制协议,它提供了一种面向连接的、可靠的数据流服务。面向连接意味着两个使用TCP的应用在彼此交换数据之前必须先建立一个TCP连接。
TCP协议位于IP协议的上层,通过提供校验和、流控制及序列信息弥补IP协议可靠性的缺陷。许多流行的应用程序人Telnet、Rlogin、FTP和SMTP等都使用TCP。

2.Ping命令的原理

Ping是类型为8的ICMP报文,ping程序在Windows、Linux以及unix下都可执行,该程序发送一份ICMP回显(Echo)请求给目标主机,并等待对方返回ICMP回显应答,如果源主机在一定时间内收到应答,则可以认为主机可达,如果不能ping到某台主机,则表明不能和这台主机建立连接。

Ping程序一般用来探测主机与主机之间是否可以通信,并可以根据返回结果估计丢包率和网络时延。在Windows下,对于每个发送报文,默认情况下发送4个回显数据包,每个数据包含32字节的数据,计算机安装TCP/IP协议后即可以使用。在Linux下,默认情况下源主机向目标主机不停发送数据包,直到用户终止。
  
ICMP协议通过IP协议发送,IP协议是一种无连接的、不可靠的数据包协议,因此Ping不通一个地址,并不一定表示这个IP地址存在或者不在网络上,因为对方主机可能做了限制,比如安装了防火墙,针对这种情况,可采用其他的方式进行探测。

实验环境

1.操作系统

  • 操作机:Windows_7
  • 目标机:Linux_Kali
  • 操作机默认用户名:administrator 密码:123456
  • 目标机默认用户名:root      密码:123456

2.实验工具

  1. Nmap
    在这里插入图片描述

Nmap是一款非常流行的扫描软件,分为For windows和For UNIX两个版本。Nmap基本功能有三个,是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;还可以推断主机所用的操作系统。Nmap可用于扫描仅有两个节点的LAN,直至500个节点以上的网络。Nmap 还允许用户定制扫描技巧。通常,一个简单的使用ICMP协议的ping操作可以满足一般需求;也可以深入探测UDP或者TCP端口,直至主机所使用的操作系统;还可以将所有探测结果记录到各种格式的日志中,供进一步分析操作。该软件提供图形界面和命令行两种模式,这里使用图形界面版本。

  1. SuperScan
    在这里插入图片描述
    Ping命令简单易用,但是只能够对单个主机进行扫描,不能扫描多个主机,达到发现网段内存活主机的目的,这里使用SuperScan软件实现这一效果。
    SuperScan具有以下功能:
  • 通过Ping来检验IP是否在线;
  • IP和域名相互转换;
  • 检验目标计算机提供的服务类别;
    • 检验一定范围目标计算机的是否在线和端口情况;
    • 工具自定义列表检验目标计算机是否在线和端口情况;
    • 自定义要检验的端口,并可以保存为端口列表文件;

软件自带一个木马端口列表trojans.lst,通过这个列表我们可以检测目标计算机是否有木马;同时,我们也可以自己定义修改这个木马端口列表.

实验步骤

步骤1:Ping命令(Windows环境下)

1.1 首先打开控制台窗口。具体操作为点击左下角的开始按钮,找到并点击运行

图一 找到“运行
 在弹出窗口中输入cmd,然后回车或者点击“确定”按钮确认,之后就弹出了控制台窗口。
 
图二 输入cmd

图3 控制台窗口
1.2 然后在光标位置输入ping -h来查看帮助,然后再分别尝试输入以下ping以及各种参数的组合,并分别理解各个命令的功能。
  ping命令的基本用法:ping [-参数 参数的值] 目标ip或者域名
  ping命令的常用参数:
  -t:ping指定的主机,直到停止。Ctrl+Break查看统计信息,Ctrl+C停止;
  -n count:要发送的回显请求数
  ping命令的应用举例:
  Ping 100.100.0.14 扫描本机地址
  Ping –n 6 100.100.0.26 扫描6次
  Ping –t 100.100.0.26 不停扫描

图4 ping扫描
 当Ping命令得不到结果的目标主机时,无法判定是否真的不存在,需要利用工具进一步判断。

步骤2:使用Nmap进行多种方式的探测

2.1 桌面上有Nmap的快捷方式,鼠标双击运行Nmap软件,然后在目标位置填写想要扫描的IP地址:100.100.0.26(目标机IP地址)。

图5 在目标栏里输入目标地址
2.2 打开配置–>新的配置或命令,选择需要的扫描方式。

图6 新建配置
图7 Nmap配置页面
2.3 除了在页面进行配置,还可以在命令行设置,直接输入命令对目标进行扫描。如果希望对某台主机进行完整全面的扫描,那么可以使用Nmap内置的-A选项。使用了改选项,Nmap对目标主机进行主机发现、端口扫描、应用程序与版本侦测、操作系统侦测及调用默认NSE脚本扫描。
  命令形式:nmap –T4 –A –v 目标地址
  其中-A选项用于使用进攻性(Aggressive)方式扫描;-T4指定扫描过程使用的时序(Timing),总有6个级别(0-5),级别越高,扫描速度越快,但也容易被防火墙或IDS检测并屏蔽掉,在网络通讯状况良好的情况推荐使用T4;-v表示显示冗余(verbosity)信息,在扫描过程中显示扫描的细节,从而让用户了解当前的扫描状态。
图8 在命令栏里直接输入命令
2.4 或者在命令提示符里输入命令进行扫描。首先在控制台中输入cd C:\Program Files (x86)\Nmap进入nmap的安装目录下,然后输入命令

图9 nmap安装目录
图10 在命令提示符里使用Nmap
2.5 Nmap同时也提供了扫描网段的功能,可以将多个目标主机地址用逗号隔开,或扫描相邻主机,例如,100.100.0.1/24(代表100.100.0.1到100.100.0.255之间的255个地址),100.100.0.1-254(代表以100.100.0开头的所有不以0和255结尾的地址),100.100.0.(所有100.100.0开头的主机)。这里我们将目标主机填写为100.100.0.,其他选项默认,然后点击扫描
图11 使用Nmap扫描网段内的存活主机
2.6 Nmap提供网段内扫描到的存活主机的拓扑图,点击拓扑,可以查看拓扑图。
图12 Nmap生成的拓扑图

步骤3:使用SuperScan扫描网段内的存活主机

Superscan4.0只能在WindowsXP或者Windows2000上运行,对一些老版本的操作系统,必须使用superscan3.0版本。
  本实验主要利用SuperScan对网段内主机进行扫描,确定是否在线。自定义要检验的端口,并保存为端口列表文件。
3.1 工具安装以及注意事项:
  如图,我们找到相应目录之后,找到文件名为“经典端口扫描工具SuperScan3.0中文版.rar”的文件,然后右键选择“解压到当前文件夹”,这样工具就解压到superscan3.0文件夹中了。
  图13 解压superscan
然后进入解压出来的文件夹中,双击scanner.exe即可运行。
图14运行superscan
Superscan3的使用注意事项:
  驱动的时候会有提示“port list file was not found”,这个没关系,点击“确定”以后出现superscan主界面。
  图15注意提示
3.2 读取端口列表的配置文件。点击右上角的“端口列表”按钮,再点击“读取”按钮,选择“scanner.lst”,这个是端口列表文件。

图16读取系统自带的端口列表文件
  在软件目录下找到scanner.lst,右键打开,然后使用记事本方式查看:
图17 查看端口列表文件内容
3.3 进入SuperScan页面,左边IP栏设置要扫描的目的IP或IP段,中间“扫描类型”可以选择不同的扫描方式。

图 18 SuperScan页面
3.4 检测目标机是否在线和通过反应时间判断网络状况。
  在起始IP中填写起始IP,在结束框内填入结束IP,在扫描类型中选择仅仅ping,最后点击开始进行扫描。
  图 19 SuperScan扫描中
 Superscan速度非常快,结果也很准确,一般没有必要改变反应时间设置。

3.5 检测目标机所有端口
如果检测的时候没有特定的目的,只是为了了解计算机的一些情况,可以选择对目标机的所有端口进行检测。但一般不推荐这种检测:

  • 全部端口扫描会对目标机的正常运行造成一定影响,同时也会引起目标机的警觉;
  • 扫描时间长;
  • 浪费网络宽带资源,对网络正常运行造成影响。

在起始和结束IP地址的位置都输入100.100.0.26(目标机IP地址),在扫描类型中选择所有端口定义1到65535,然后点击“开始”进行扫描。
图20 所有端口扫描
 展开所有,可以看到扫描结果,目标机只开了22端口,为ssh服务。
  结果解释:
  第一行是目标机的IP和主机名;
  第二行的小圆点是扫描目标机的活动端口和对该端口的解释;
  第三行的方框是显示提供该服务的系统软件;

3.6扫描目标机的特定端口(自定义端口)

大多数时候我们不需要检测所有端口,只需要检测有限的几个端口就可以了,因为我们的目的只是为了得到目标机提供服务和使用的软件。大部分时候,我们只要检测80(WEB服务)、21(FTP服务)、23(Telnet服务)就可以了。
  点击端口列表,出现以下界面:
  图21 编辑端口列表窗口

本实验中,我们只需要添加21号,22号,23号,80号端口。在选择端口里双击选择需要扫描是端口,端口前面会有“√”标志。选择的时候注意左边的修改/新增/删除端口信息和定义右键帮助程序,这是关于端口的详细说明和所使用的程序。选择需要的端口之后,点击保存,将所选的端口作为端口列表。点击确认回到主列表。

图22 端口设置
 选择扫描类型为:扫描所有在列表中选择的端口,点击开始,如图可以看到只开了tcp 端口,为ssh服务。

图23 自定义端口扫描

步骤4:使用Fping实现网段内的存活主机探测(Linux环境下Ping命令的应用)

Windows和Linux下的Ping命令都只能完成对一个主机存活性的探测,不适合用作扫描网段内的存活主机,Fping是一款用于UNIX的工具,现在也提供了Windows平台下的版本。
  Fping是以并行的方式向列表中的所有IP地址发送ICMP报文回送请求,该工具的实现原理与Ping相同,无法探测到防火墙之后的主机。
  4.1 打开目标机,点击左侧图标新建一个终端。
  图24 新建终端
然后使用fping命令进行主机存活性探测,输入fping –a –g 100.100.0.1 100.100.0.255(目标机所在的网段)
图25 fping进行主机存活性探测

步骤5:使用Nmap扫描

Linux版本的Nmap和Windows版本的Nmap基本相同,在探测主机存活性的命令上基本一致。

5.1 利用nmap进行逐级存活性探测,输入nmap -h 可以获取到nmap的使用帮助

图26 查看nmap帮助
 5.2 扫描单个主机。命令格式为 nmap –sn * 。
  如想要探测100.100.0.14主机的存活性,直接输入其IP地址,,命令为:
  nmap –sn 100.100.0.14(操作机IP地址)图 27 Linux下Nmap的主机存活性探测
 5.3 扫描某个网段内的存活主机。例100.100.0.1-100.100.0.122网段
  输入:
  nmap –sn 100.100.0.1-122
图 28 Linux下扫描某网段上的存活主机
图29 Linux下扫描某网段上的存活主机
至此,实验完毕,关闭相关窗口,结束实验。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值