Exp5 信息搜集与漏洞扫描

1.实践目标

  • 掌握信息搜集的最基础技能与常用工具的使用方法。

2.实践内容

  • (一)各种搜索技巧的应用

  • (二)DNS IP注册信息的查询

  • (三)基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)

  • (四)漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)

(一)各种搜索技巧的应用

(1)搜索网址目录结构

  • 原理:暴力破解一般就是指穷举法,它的原理就是使用攻击者自己的用户名和密码字典,一个一个去枚举,尝试是否能够登录。因为理论上来说,只要字典足够庞大,枚举总是能够成功的!(本实验以dir_scanner模块为例,获取网站目录结构)
  • 方法:使用kali,依次输入如下指令:可以找到如下目录!
msfconsole
use auxiliary/scanner/http/dir_scanner
set THREADS 20
set RHOSTS www.baidu.com
exploit

(2)检测特定类型的文件

  • 原理:
filetype 能对搜索结果的文件类型进行限定,格式为“ 检索词 filetype:文件类型 ”
“-”能在检索结果中获取检索词的补集,格式为“ 检索词 -词语 ”
 site 能限制检索结果的来源,格式为“ 检索词 site:限制域名 ”(不要在“:”后的域名中输入“http:”和“www.”)
 inurl 能在网址中进行搜索,格式为“ 检索词inurl:检索词 ”
“|”表示布尔逻辑中的或者(or)关系,使用格式为“ 关键词1 | 关键词2 ”
空格表示布尔逻辑中的交集(and)关系,使用格式为“ 关键词1 关键词2 ”
  • 方法:

打开百度,设置高级搜索界面,高级搜索界面的入口在搜索引擎首页右上角“设置”->“高级搜索”输入


(3)使用traceroute命令进行路由侦查

  • 原理:traceroute命令利用ICMP协议定位用户计算机和目标计算机之间的所有路由器。TTL值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP呼叫报文的TTL值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。本实验以侦查百度为例。
  • 方法:打开cmd输入命令tracert www.baidu.com

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

(二)DNS IP注册信息的查询

(1)whois查询

  • 原理:whois用来进行域名注册信息查询。
  • 方法:在kali中进入root模式,在终端输入 whois gitee.com 可查询到3R注册信息,包括注册人的姓名、组织和城市等信息。
  • 注:进行whois查询时去掉www等前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到。

(2)nslookup,dig域名查询

(a)nslookup
  • 原理:nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。
  • 方法:在终端输入 nslookup gitee.com

(b)dig
  • 原理:dig可以从官方DNS服务器上查询精确的结果。
  • 方法:在终端输入 dig gitee.com

  • 除此之外,dig命令还有很多查询选项,每个查询选项被带前缀(+)的关键字标识。例如:
  • +search :使用搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

  • +trace :切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。

  • +identify :当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。

  • +stats :该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。

(3)IP2Location 地理位置查询

(a)www.maxmind.com
  • 原理:www.maxmind.com网站可以根据IP查询地理位置。
  • 步骤:
  • 在主机上利用ping www.baidu.com的查看百度的IP地址

  • 打开网站网页www.maxmind.com在网站下方输入IP

(b)www.ip-adress.com(查看更加详细地址信息)
  • 查看自己的ip地址,熟悉一下界面,输入自己想查询的ip地址

(c)www.whatismyipaddress.com
  • 这个网站可以查询到更详细的关于IP的信息。点击图中内容即可查看自身ip地址


(三)基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)

(a)主机发现

  • 1.ping
  • 原理:ping命令用发送ICMP报文的方法检测活跃主机
  • 方法:输入命令 ping www.baidu.com

  • 2.metasploit中的arp_sweep模块和 udp_sweep 模块
  • 原理arp_sweep和udp_sweep都是metasploit中位于modules/auxiliary/scanner/discovery中的模块。arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机;udp_sweep模块除了可以探测到存活主机之外,还可以获得主机名称信息
  • 方法一:arp_sweep
msfconsole

use auxiliary/scanner/discovery/arp_sweep //进入arp_sweep 模块

set RHOSTS 主机地址 //用set进行hosts主机段设置

set THREADS 50 //加快扫描速度

show options //查询模块参数

run //执行run进行扫描


  • 方法二:udp_sweep

(b)端口扫描

  • 1.nmap
扫描类型:
-sT:TCP connect扫描
-sS:TCP syn扫描
-sF/-sX/-sN:通过发送一些标志位以避开设备或软件的检测
-sP:ICMP扫描
-sU:探测目标主机开放了哪些UDP端口
-sA:TCP ACk扫描
扫描选项:
-Pn:在扫描之前,不发送ICMP echo请求测试目标是否活跃
-O:辨识操作系统等信息
-F:快速扫描模式
-p<端口范围>:指定端口扫描范围
  • 原理:nmap -xx参数可以用来探测某网段的活跃主机
  • 方法:进入root模式->输入命令 nmap
  • 分析:如下图所示,对制定网段的主机端口都检测了
  • PU,扫描UDP端口

  • 使用nmap -sT -p 1-1024 +主机地址,使用TCP connect扫描1-1024端口

  • 2.msf 中的 portscan 模块

  • 主要可以扫描以下几种端口:
ack:通过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测
ftpbounce:通过FTP BOUNCE攻击的原理对TCP服务进行枚举
syn:使用发送TCP SYN标志的方式探测开放的端口
tcp:通过一次完整的TCP链接来判断端口是否开放
xmas:一种更为隐蔽的扫描方式,通过发送FIN,PSH,URG标志能够躲避一些TCP标记检测器的过滤
  • 对TCP端口进行探测
msfconsole
use auxiliary/scanner/portscan/tcp 
set RHOSTS 主机地址
set THREADS 100 
set PORTS 1-1024 
run

(c)OS及服务版本探测

  • 1.nmap -O
  • 可以通过nmap -O ip对操作系统进行识别,获取目标机的操作系统和服务版本等信息
  • 2.nmap -sV
  • 可以通过nmap -sV ip查看操作系统详细信息

(d)具体服务的查点

  • 1.Telnet服务扫描

  • telnet命令用于登录远程主机,对远程主机进行管理
use auxiliary/scanner/telnet/telnet_version
set RHOSTS 主机地址
set THREADS 100
run


  • 2.SSH服务

  • SSH(“安全外壳”)协议是用于从一个系统安全远程登录到另一个的方法。用户通过客户端 - 服务器架构格式的不安全网络使用安全通道,用于将SSH客户端与SSH服务器连接起来
use auxiliary/scanner/ssh/ssh_version 
set RHOSTS 主机地址
set THREADS 100
run

  • 3.Oracle数据库服务查点

use auxiliary/scanner/oracle/tnslsnr_version
set RHOSTS 192.168.247.137/24
set THREADS 100
run

(四)漏洞扫描(OpenVAS)

  • 安装

apt-get update
apt-get dist-upgrade


apt-get install openvas


apt install gvm

sudo gvm-setup//这步时间非常非常非常长,找个网好的地方装,网千万别断,很容易出bug


gvm-feed-update
  • 初始密码是随机的,可以修改

sudo runuser -u _gvm -- gvmd --user=admin --new-password=password #admin填入你想要更改的用户名,最后的password填你要设置的密码
  • 使用 gvm-check-setup 来检查是否安装完成

  • 在终端输入sudo gvm-start 开启这个软件,等待几秒即可自动打开浏览器并访问网站

  • 登陆之后,点击 scan->Tasks,然后点击Task Wizard

  • 输入所需要扫描的IP地址

  • 选择“Full and fast”查看

  • 点击 NTV Families->任意漏洞(以Buffer overflow为例) 来查看具体漏洞信息

3.实验后回答问题:

(1)哪些组织负责DNS,IP的管理。

全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理。全球根域名服务器:绝大多数在欧洲和北美(全球13台,用A~M编号),中国仅拥有镜像服务器(备份)。
  • 地址支持组织(ASO)负责IP地址系统的管理
  • 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
  • 协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配
全球一共有5个地区性注册机构:
  • ARIN主要负责北美地区业务
  • RIPE主要负责欧洲地区业务
  • APNIC主要负责亚太地区业务
  • LACNIC主要负责拉丁美洲美洲业务
  • AfriNIC负责非洲地区业务

(2)什么是3R信息。

  • 注册人(Registrant) →注册商(Registrar) →官方注册局(Registry)

(3)评价下扫描结果的准确性。

  • 扫描结果多数还是准确的,但是还是有部分端口无法扫出

4.实验总结与体会

本次实验难度不高,但是我们学到了很多搜集信息的方法,以后可以对网站进行针对性的信息搜集,还有就是我对信息搜集与漏洞分析有了更深的理解。。在OpenVas的安装过程中,遇到不少困难,好在有课题负责人的实验报告的指导,并且我在网上查询资料,一一解决了困难。还有一点就是OpenVas下载时间太久,下载时中途断电还导致下载失败出现bug。

posted @ 2023-04-18 21:08  20201224吴卓航  阅读(60)  评论(0)    收藏  举报