2019-2020-2 20175208张家华《网络对抗技术》Exp5 信息搜集与漏洞扫描

2019-2020-2 20175208张家华《网络对抗技术》Exp5 信息搜集与漏洞扫描

实验内容

  • (1)各种搜索技巧的应用
  • (2)DNS IP注册信息的查询
  • (3)基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)
  • (4)漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)

实验过程

实验准备即相关知识

信息搜集
  • 间接收集
    • 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团体字符串),我们可以提取系统重启时间,系统上的用户名,系统网络信息,运行的服务等各种有价值的信息。
    • HTTP(auxiliary/scanner/http/)
    • 漏洞探测:探测服务是否有相应漏洞
    • NMAP:也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。
  • 社会工程学
  • 漏洞扫描与Openvas

基础问题回答

(1)哪些组织负责DNS,IP的管理
  • 全球根服务器均由美国政府授权的因特网技术协调机构ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理。
  • 全球一共有5个地区性注册机构:ARIN主要负责北美地区业务,RIPE主要负责欧洲地区业务,APNIC主要负责亚太地区业务,LACNIC主要负责拉丁美洲美洲业务,AfriNIC负责非洲地区业务。
  • ICANN负责协调管理DNS各技术要素以确保普遍可解析性
    • 地址支持组织(ASO)负责IP地址系统的管理
    • 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
    • 协议支持组织(PSO):负责涉及Internet协议的唯一参数的分配。
    • 国家代码域名支持组织(CNNSO):负责国家顶级域名分配
(2)什么是3R信息。
  • 注册人(Registrant)
  • 注册商(Registrar)
  • 官方注册局(Registry)
(3)评价下扫描结果的准确性。
  • 我自以为扫描结果还是很准确的,不过不同方式对于同一方面来说扫描出的结果还是会有些小差异

详情参见

任务一、各种搜索技巧的应用

一、使用Google Hacking
  • Google提供了高级搜索功能。GHDB数据库包含了大量使用Google从事渗透的搜索字符串,许多我们之前用过的模块和代码网站上都有

     

     

二、检测特定类型的文件
  • 有些网站会链接通讯录,订单等敏感的文件,可以进行针对性的查找
    • 方法:输入site:edu.cn filetype:xls 信息安全


    • 点击后可以下载这些xls文件

 

 

 (这个是其中之一)

三、搜索网络目录结构
  • 就是使用暴力模块进行暴力猜解。这里以dir_scanner为例
msfconsole
use auxiliary/scanner/http/dir_scanner
set THREADS 20
set RHOSTS www.baidu.com
exploit

  

  • 可以观察到如下目录

     

     

四、使用IP路由侦查工具traceroute
  • 在kali中输入命令traceroute www.baidu.com

  • 不过由于虚拟机的连接方式,无法反向NAT将消息路由传递回来,所以显示都是*号

     

  • 回到主机下输入命令tracert www.baidu.com

     

     

     

任务二、DNS IP注册信息的查询

一、whois域名注册信息查询
  • 在终端中输入命令whois baidu.com(此处查询试需要去掉www的前缀)可以查到注册人姓名、组织等注册信息

     

     

     

     

二、nslookup,dig域名查询
  • 使用nslookup

    • nslookup baidu.com以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。
  • 使用dig

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

       

      比如说:

      www.baidu.com

       

  • dig命令还有很多查询选项,可以在关键字前加前缀+进行标示

  • +[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。
  • +[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
  • +[no]identify:当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。
  • +[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
  • 试着使用+short再用+ifentify,可以看见提供应答的 IP 地址和端口号。

     

     

三、IP2Location地理位置查询
  • www.maxmind.com网站可以根据IP查询地理位置,输入之前ping到的百度的地址就可以查询

     

     

  • 可以利用之前返回的IP地址,去纯真IP库里查

     

     

     

任务三、基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点

一、主机发现
  • 1.ping

    • ping www.baidu.com命令用发送ICMP报文的方法检测活跃主机


  • 2.metasploit中的模块(此后对端口的扫描需要在root模式下进行)

  • arp_sweep

msfconsole
use auxiliary/scanner/discovery/arp_sweep
set RHOSTS 192.168.233.0/24
set THREADS 50 
run

  • udp_sweep
msfconsole
use auxiliary/scanner/discovery/udp_sweep
set RHOSTS 192.168.233.0/24
set THREADS 50 
run

  • 3.nmap -sn

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

  • 输入命令nmap -sn 192.168.233.0/24
二、端口扫描
  • 输入命令nmap -PU 192.168.233.0/24
三、版本探测
  • nmap -O

    • 输入命令nmap -O 192.168.1.5


  • nmap -sV

    • 输入命令nmap -sV -Pn 192.168.1.5,其中-Pn是在扫描之前,不发送ICMP echo请求测试目标
四、具体服务的查点

metasploit中有许多相关工具,大部分都在Scanner辅助模块,常以[service_name]_version(用以遍历主机,确定服务版本)和[service_name]_login(进行口令探测攻击)命名。

  • Telnet服务扫描
    • telnet命令用于登录远程主机,对远程主机进行管理。
msfconsole
use auxiliary/scanner/telnet/telnet_version 
set RHOSTS 192.168.233.0/24 
run

 

 

 

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

 

 

 

  • Oracle数据库服务查点
msfconsole
use auxiliary/scanner/oracle/tnslsnr_version
set RHOSTS 192.168.233.0/24 
run

任务四、漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞

OpenVAS
  • 1.安装
apt-get update
apt-get dist-upgrade
apt-get install openvas
openvas-setup

  

  • 安装完成后,通过openvas-check-setup检测安装是否成功,出现It seems like your OpenVAS-9 installation is OK 表示安装成功

  • 若出现问题,则尝试一步一步按照FIX中给出的提示不断运行

  • 2.登录

  • openvas-start启动OpenVAS,打开浏览器输入生成的地址https://127.0.0.1:9392

  • 输入账号密码

  • 3.开始扫描

  • 登录之后选择ScansTasks点击紫色烟花Task Wizard新建任务,输入要扫描的目标主机的IP地址,开始扫描

  • 4.等待一段时间后,可以得到扫描完成的结果

  • 点击扫描完成后的结果中的IP地址,可以查看到扫描结果的详细信息

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

     

 

  • 在漏洞族中在任意选择一个漏洞,可以查看漏洞的影响以及补救方法


 

  •  在Summary处为该漏洞的描述


  • Solution处可看到解决方案

          

 

实验结果

实验中遇到的问题:

1.在安装OpenVAS,运行openvas-check-setup时出现:

No users found.

 

 

 

 解决方法:按提示运行

openvasmd --create-user=20175208 --role=Admin && openvasmd --user=20175208 --new-password=010736
创建用户和密码

2.在安装OpenVAS,运行openvas-check-setup时出现:

No OpenVAS SCAP database found.

  

 

 

 解决方法:运行

greenbone-scapdata-sync
同步SCAP数据

3.在安装OpenVAS,运行openvas-check-setup时出现:

一些服务未打开的问题:

 

 

 解决方法:运行一下命令开启相关的服务:

 service redis-server start
 service openvas-scanner start
 service openvas-manager start
 gsad

 

 

实验总结与反思

    • 通过本次实验还是学习到了一些常用的信息收集方法,这次实验总体来说非常浪费时间了,我下载安装OpenVAS弄了一天。。。大大小小好多的问题,大的问题都已经在上述中写出来了,小的问题太多了,就不一一列举了。。。不过这样看来我们掌握的方法在一些小范围上都能利用起来,但是面对网上如此多的数据量需要整合和筛选,实战起来却也有好多需要补充。
posted @ 2020-04-23 21:31  20175208-张家华  阅读(183)  评论(0编辑  收藏  举报