20201306 Exp5 信息搜集与漏洞扫描

发布时间 2023-04-19 15:53:31作者: 非主流子

目录
一、实践目标及实践内容

  1. 实践目标
  2. 实践内容
    二、实践原理
    三、实践过程记录
    1、各种搜索技巧的应用
    搜索网址目录结构
    利用搜索引擎搜索特定类型的文件
    使用traceroute命令进行路由侦查
    2、DNS IP注册信息的查询
    whois查询
    nslookup查询
    dig查询
    LP2Location地理位置查询
    IP2反向域名查询
    3、基本的扫描技术
    主机发现
    OS及服务版本探测
    端口扫描
    具体服务的查点
    4、漏洞扫描
    四、基础问题回答
    五、实验总结与体会
    一、实践目标及实践内容
  3. 实践目标
    掌握信息搜集的最基础技能与常用工具的使用方法
  4. 实践内容
    各种搜索技巧的应用
    DNS IP注册信息查询
    基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)
    漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)
    二、实践原理
  5. 信息搜集
    信息搜集:渗透测试中首先要做的重要事项之一,搜集关于目标机器的一切信息

间接搜集
DNS记录扫描和枚举
CorpWatch:auxiliary/gather/corpwatch_lookup_name
搜索引擎子域名搜集器auxiliary/gather/searchengine_subdomains_collector
在线搜索工具
GHDB
设备搜索:shodan,censys,zoomeye
viewdns
间接搜集
主机扫描:发现网络上的活动主机 modules/auxiliary/scanner/discovery
端口扫描:发现主机上的开放端口,通过 search portscan 命令查看MSF中的端口扫描模块
版本探测:探测端口上的运行服务
SMB auxiliary/scanner/smb/smb_ 一种在 Microsoft Windows系统中使用网络文件共享的协议,已被证明是最容易被攻击的协议之一,它允许攻击者枚举目标文件和用户,甚至远程代码执行。
SSH auxiliary/scanner/ssh 一个广泛使用的远程登录程序。
FTP auxiliary/scanner/ftp
SMTP auxiliary/scanner/smtp/smtp_
SNMP auxiliary/scanner/snmp/snmp_enum用于管理网络设备的协议,比如监控设备的状态信息,接口信息,网络接口的数据吞吐量等,通过SNMP扫描器可以找到特定系统的大量信息。如果目标系统为Windows且配置了SNMP(通常是RO/RW团体字符串),我们可以提取系统重启时间,系统上的用户名,系统网络信息,运行的服务等各种有价值的信息。
HTTPauxiliary/scanner/http/
漏洞探测:探测服务是否有相应漏洞
NMAP:也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。
社会工程学
漏洞扫描与Openvas

三、实践过程记录
1、各种搜索技巧的应用
搜索网址目录结构
实践原理
暴力破解一般就是指穷举法,它的原理就是使用攻击者自己的字典,一个一个去枚举,理论上来说,只要字典足够庞大,枚举总是能够成功的。以 dir_scanner 模块为例,获取网站目录结构。
实践步骤
msfconsole
use auxiliary/scanner/http/dir_scanner
set THREADS 20

set RHOSTS www.baidu.com
exploit

利用搜索引擎搜索特定类型的文件
实践原理
filetype 能对搜索结果的文件类型进行限定,格式为 检索词 filetype:文件类型

  • 能在检索结果中获取检索词的补集,格式为 检索词 - 词语
    site 能限制检索结果的来源,格式为 检索词 site:限制域名 (不要在“:”后的域名中输入“http:”和“www.”)
    inurl 能在网址中进行搜索,格式为 检索词inurl:检索词
    | 表示布尔逻辑中的或者(or)关系,使用格式为关键词1 | 关键词2
    空格表示布尔逻辑中的交集(and)关系,使用格式为关键词1 关键词2
    高级搜索界面:高级搜索界面的入口在搜索引擎首页右上角设置 -> 高级搜索
    实践步骤1
    搜索到xls格式的Excel表格 :在搜索框内输入site:edu.cn filetype:xls

点开一个网页,即可下载并查看检索到的文件的相关信息

实践步骤2
打开百度的高级搜索界面,具体步骤如下图

在弹出的搜索框内输入site:edu.cn filetype:xls 身份证号

修改搜索条件百度一下

即可查询到相关信息

使用traceroute命令进行路由侦查
实践原理
traceroute命令利用ICMP协议定位用户计算机和目标计算机之间的所有路由器。TTL值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP呼叫报文的TTL值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。
traceroute是Linux和Mac OS等系统默认提供的路由追踪小程序,Tracert是Windows系统默认提供的路由追踪小程序。二者的功能相同,都能探测数据包从源地址到目的地址经过的路由器的IP地址。Traceroute/Tracert的实现都借助了TTL:通过向目的地址发送一系列的探测包,设置探测包的TTL初始值分别为1,2,3…,根据返回的超时通知(ICMP Time Exceeded Message)得到源地址与目的地址之间的每一跳路由信息。虽然两者输出结果一致,但在实现原理上还有着显著的差别。
实践步骤
Windows中输入命令tracert www.baidu.com

分析:从左到右的5条信息分别代表了“生存时间”(每途经一个路由器结点自增1)、“三次发送的ICMP包返回时间”(共计3个,单位为毫秒ms)和“途经路由器的IP地址”(如果有主机名,还会包含主机名)。其中带有星号(*)的信息表示该次ICMP包返回时间超时。
在kali中输入命令 traceroute www.baidu.com

Traceroute/tracert路由追踪程序是用来追踪数据包到达网络主机所经过的路由信息的重要工具,虽然路由追踪效果一致,但实现原理略有不同:前者借助UDP协议,后者借助ICMP协议。
2、DNS IP注册信息的查询
whois查询
实践原理
whois 用来进行域名注册信息查询。
进行whois查询时去掉www等前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到。
实践步骤
在终端中输入指令

查看域名的注册信息和3R注册信息

nslookup查询
实践原理
nslookup可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用哪个DNS服务器进行解释。在已安装TCP/IP协议的电脑上面均可以使用这个命令。主要用来诊断域名系统 (DNS) 基础结构的信息。Nslookup(name server lookup)( 域名查询):是一个用于查询 Internet域名信息或诊断DNS 服务器问题的工具。
实践步骤
在kali中输入 nslookup baidu.com

dig查询
实践原理
Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具。Dig可以让你有效地查询DNS,最常用的查询是A记录,TXT(文本注释),MX记录,NS记录,或者任意综合查询。
参考网址
实践步骤
输入dig baidu.com

此外,dig指令的更多种使用方法(以百度为例):
dig baidu.com A +noall +answer查找baidu.com的A记录:(此处一定是域而不是主机)
dig baidu.com MX +noall +answer查找baidu.com MX记录的列表
ig baidu.com NS +noall +answer查找baidu.com的权威DNS
dig baidu.com ANY +noall +answer查询上面所有的记录
除此之外,dig命令还有很多查询选项,每个查询选项被带前缀(+)的关键字标识:
+search使用搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

+trace切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
+identify当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。

+stats该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
LP2Location地理位置查询
www.maxmind.com
根据IP地址查询地理位置
在Windows中输入ping www.baidu.com 获取百度的IP地址

打开网站,输入IP,查看IP信息

IP-ADDRESS
查询更详细的关于某共有IP的信息

IP2反向域名查询
shodan搜索引擎
反域名查询,可以搜索到该IP的地理位置、服务占用端口号,以及提供的服务类型

3、基本的扫描技术
主机发现
使用ICMP Ping命令
在Windows中执行ping www.baidu.com

在Kali中执行ping www.baidu.com

metasploit中的arp_sweep模块
arp_sweep和udp_sweep都是metasploit中位于modules/auxiliary/scanner/discovery中的模块。arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机;udp_sweep模块除了可以探测到存活主机之外,还可以获得主机名称信息,执行命令如下:
msfconsole
use auxiliary/scanner/discovery/arp_sweep //进入arp_sweep 模块
set RHOSTS 192.168.153.132/21 //用set进行hosts主机段设置
set THREADS 50 //加快扫描速度
run //执行run进行扫描

发现报错,于是重新输入指令sudo msfconsole ,其余指令同上。

nmap探索活跃主机:在Linux下使用 nmap -sn 192.168.153.132/21 寻找该网段下的活跃主机
nmap的相关参数如下:

复制代码
-sS:TCP SYN扫描,可以穿透防火墙;
-sA:TCP ACK扫描。有时候由于防火墙会导致返回过滤/未过滤端口;
-sP:发送ICMP echo探测;
-sT:TCP connect扫描,最准确,但是很容易被IDS检测到,不推荐;
-sF/-sX/-sN:扫描特殊的标志位以避开设备或软件的监测;
-O:启用TCP/IP协议栈的指纹特征信息扫描以获取远程主机的操作系统信息;
-sV:获取开放服务的版本信息;
复制代码

OS及服务版本探测
Nmap对目标的操作系统进行识别:nmap -O 192.168.153.132

端口扫描
使用-sS选项进行TCP SYN扫描:nmap -sS -Pn 192.168.153.132 。其中-sS 是TCP SYN扫描,-Pn 是在扫描之前,不发送ICMP echo请求测试目标

使用-sV查看目标机的详细服务信息:nmap -sV -Pn 192.168.153.132 。其中-sV 用来查看目标机子的详细服务信息

具体服务的查点
Telnet服务扫描:telnet命令用于登录远程主机,对远程主机进行管理。
msfconsole
use auxiliary/scanner/telnet/telnet_version //进入telnet模块
set RHOSTS 192.168.153.132/21 //扫描网段
set THREADS 50 //提高查询速度
run

SSH服务:SSH(“安全外壳”)协议是用于从一个系统安全远程登录到另一个的方法。用户通过客户端 - 服务器架构格式的不安全网络使用安全通道,用于将SSH客户端与SSH服务器连接起来。
msfconsole
use auxiliary/scanner/ssh/ssh_version //进入ssh模块
set RHOSTS 192.168.153.132/24 //扫描网段
set THREADS 50 //提高查询速度
run

Oracle数据库服务查点
msfconsole
use auxiliary/scanner/oracle/tnslsnr_version //进入tnslsnr模块
set RHOSTS 192.168.153.132/24 //扫描网段
set THREADS 50 //提高查询速度
run

4、漏洞扫描
安装Openvas,指令如下(参考链接):
复制代码
//环境准备(root权限下)
apt-get update //更新软件库
apt-get upgrade //升级软件
apt-get dist-upgrade //升级系统
apt-get clean
apt-get install gvm //安装gvm

gvm-setup //初始化gvm

gvm-check-setup //安装完整性检测

复制代码
在安装过程中遇到了如下问题:
虚拟机空间不足。在尝试网上的软链接、分区挂载的方法后均失败,于是迫不得已选择了另一台kali......
用户名、密码

在检查安装情况时报错,按照提示解决

安装成功!!!
输入gvm-start 运行

打开火狐浏览器,输入网址 https:\127.0.0.1:9392 ,点击高级>>接受风险并继续

输入账号密码

新建任务,点击scans>>Tasks ,点击魔仙棒选择 Task Wizard

输入主机的IP地址,点击start scan

查看信息,分析扫描结果

选择 Full and fast ,可以看到很多的漏洞族,选择一个漏洞族进行查看

扫描到的漏洞结果无法显示,出错原因为:The SCAP database is required.
解决方法:在尝试各种解决方法之后均无效(无语...),于是最后拷贝了同学的虚拟机进行漏洞扫描。
主机IP地址变为192.168.43.59 ,具体步骤同上。

选择一个高风险的漏洞查看相关信息:

Summary:该主机运行3CTftpSvc TFTP服务器,容易出现缓冲区溢出漏洞。
Insight:该缺陷是由于加工过程中的边界误差造成的;TFTP读写请求报文类型。这可能会导致堆栈;通过发送一个具有过长的模式字段的特别制作的包来实现缓冲区溢出。
Impact:成功的攻击将允许攻击者造成,应用程序崩溃,拒绝为合法用户提供进一步服务。
Solution:解决方案类型:不会解决。自该漏洞被披露以来,至少有一年没有任何已知的解决方案可用。很可能再也不会提供了。一般的解决方案选项是升级到新版本,禁用各自的特性,删除产品或更换另一种产品。
选一个风险等级较低的漏洞分析:

Summary:这个主机安装了AbsoluteFTP,并且易于缓冲区溢出漏洞。
Insight:该缺陷是由于边界误差时,处理一个过度长命令列表。这可能会导致基于堆栈的缓冲区通过一个特别制作的FTP列表命令溢出。
Impact:成功的利用可以允许远程攻击者执行应用程序上下文中的任意代码。攻击失败可能导致拒绝服务的条件。
Solution:解决方案类型:不会解决。自消息披露以来,至少一年内都没有任何已知的解决方案。这个漏洞很可能再也不会提供了。一般的解决方案选项是升级到更新的
发布、禁用相应的功能、移除产品或用另一个产品替换该产品。

四、基础问题回答
哪些组织负责DNS,IP的管理?
全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理。
地址支持组织(ASO)负责IP地址系统的管理
域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配
什么是3R信息?
注册人(Registrant)
注册商(Registrar)
官方注册局(Registry)
评价下扫描结果的准确性?
结果比较准确,但各种扫描方式的侧重点不同,所呈现的扫描结果都不相类似。

五、实验总结与体会
这次的实验难点在于Openvas的安装,以及使用工具搜索信息、扫描漏洞后对得到信息的分析。在Openvas的安装过程中,遇到了很多困难,使用了三台虚拟机均安装失败,最后还是选择拷贝同学的虚拟机进行漏洞扫描。通过这次实践,我认识到了信息搜集的容易性和对个人隐私的巨大威胁,对信息安全有了更深入的理解。