2019-2020-2 网络对抗技术 20175209 Exp5 信息搜集与漏洞扫描

2019-2020-2 网络对抗技术 20175209 Exp5 信息搜集与漏洞扫描

一、实验原理和实验内容

1. 实验原理

信息搜集:渗透测试中首先要做的重要事项之一,搜集关于目标机器的一切信息

  • 间接收集

    • 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

2. 实验内容概述

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

3. 问题回答

  • 哪些组织负责DNS,IP的管理
    • 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理。
      • 地址支持组织(ASO)负责IP地址系统的管理
      • 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
      • 协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配
  • 什么是3R信息
    • 注册人(Registrant)
    • 注册商(Registrar)
    • 官方注册局(Registry)
  • 评价下扫描结果的准确性
    • 在使用nmap扫描的时候发现始终只有22号端口ssh服务开放,而参考了同学的和学长学姐的博客,发现都开启了很多服务,这应该与实验二遇到的问题时对端口进行过配置有关,所以导致只有一个端口开放,针对操作系统的扫描也明确给出了kali的操作系统,其余的结果都比较准确。

二、 实验步骤

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”
    • 高级搜索界面,高级搜索界面的入口在搜索引擎首页右上角“设置”->“高级搜索”。
  • 在百度中输入site:edu.cn filetype:xls ,能够搜索到xls格式的Excel表格

  • 打开文档可以查看到检索到的文件的具体信息

使用traceroute命令进行路由侦查

  • 原理:traceroute命令利用ICMP协议定位用户计算机和目标计算机之间的所有路由器。TTL值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP呼叫报文的TTL值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。

  • windows中输入命令tracert www.baidu.com

  • kali终端中输入命令traceroute www.baidu.com

2. DNS IP注册信息的查询

whois查询

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

nslookup查询

  • nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。
  • 在终端输入nslookup baidu.com

dig查询

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

LP2Location地理位置查询

  • https://www.maxmind.com可以根据IP地址查询地理位置

    • 在终端中输入ping www.baidu.com 获取百度的ip地址

    • 在网站中输入IP地址可以查看到百度的IP信息

  • IP-ADDRESS,可以查询到更详细的关于某共有IP的信息,我们继续查看百度的信息:

IP2反向域名查询

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

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

主机发现

  • 使用ICMP Ping命令

    • 在winodws中执行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.1.0/24 //用set进行hosts主机段设置
    • set THREADS 50 //加快扫描速度
    • run //执行run进行扫描
  • metasploit中的udp_sweep模块

    • msfconsole
    • use auxiliary/scanner/discovery/udp_sweep //进入udp_sweep 模块
    • set RHOSTS 192.168.1.0/24 //用set进行hosts主机段设置
    • set THREADS 50 //加快扫描速度
    • run //执行run进行扫描

nmap的使用

nmap的相关参数如下:

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

    • 在Linux下使用nmap -sn 192.168.1.0/24 寻找该网段下的活跃主机:
  • 使用-O选项让Nmap对目标的操作系统进行识别:

    • 在Linux下使用nmap -O 192.168.1.107 获取目标机的操作系统等信息:
  • 使用-sS选项进行TCP SYN扫描:

    • 在Linux下使用nmap -sS -Pn 192.168.1.107 命令,其中-sS 是TCP SYN扫描,-Pn 是在扫描之前,不发送ICMP echo请求测试目标:
  • 使用-sV查看目标机的详细服务信息:

    • 在Linux下使用nmap -sV -Pn 192.168.1.107 命令,其中-sV 用来查看目标机子的详细服务信息:

具体服务的查点

       这一部分的内容是在漏洞扫描之后完成的,漏洞扫描的时候在下载opevas需要变更网络,IP地址从192.168.1.107 变为 192.168.0.131

  • Telnet服务扫描:telnet命令用于登录远程主机,对远程主机进行管理。

    • msfconsole
    • use auxiliary/scanner/telnet/telnet_version //进入telnet模块
    • set RHOSTS 192.168.0.131/24 //扫描10.1.1.0网段
    • set THREADS 50 //提高查询速度
    • run

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

    • msfconsole
    • use auxiliary/scanner/ssh/ssh_version //进入ssh模块
    • set RHOSTS 192.168.0.131/24 //扫描网段
    • set THREADS 50 //提高查询速度
    • run
  • Oracle数据库服务查点:

    • msfconsole
    • use auxiliary/scanner/oracle/tnslsnr_version //进入tnslsnr模块
    • set RHOSTS 192.168.0.131 //扫描网段
    • set THREADS 200 //提高查询速度
    • run

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

安装Openvas

apt-get update
apt-get dist-upgrade
apt-get install openvas
openvas-setup

配置Openvas

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

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

  • 检查全部通过之后,添加新的用户名和密码

openvasmd --create-user=20175209 --role=Admin 创建用户20175209 
openvasmd --user=20175209 --new-password=wzh5209 设置新密码(上一步系统会自动生成一个初始密码,为了方便进行更改,也可以不改)

登录

  • 输入openvas-start 启动服务,如果提示关联存在问题,无法打开则手动在浏览器中输入网址https://127.0.0.1:9392

  • 输入刚刚设置的用户名和密码

  • 成功进入界面如下:

进行扫描

  • 新建任务:
    • 在菜单栏Scan 中选择Tasks

    • 点击界面左上角的魔法棒选择Task Wizard

    • 填入待扫描的IP地址192.168.0.131 ,点击Start Scans

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

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

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

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

三、 实验中遇到的问题

Question1 arp_sweet扫描的时候出现了Permission Denied的问题

  • 对端口扫描必须在root模式下进行,需要在root模式下启动msfconsole

Question2 安装openvas更新update的时候出现的问题

  • 在更新update的时候出现了域名暂时无法解析的问题,我查看了网络连接和配置后发现都没有存在问题。我使用的源是清华的源以及kali.org的源,在和同学交流后发现他的kali.org的源在更新的时候也出现全部丢包的情况。
  • 尝试换了连接方式并且更换了网络,但还是没能解决问题,最后不得不换了源,换成了中科大的源又更新了很多配置才能够成功

Question3 Openvas-setup出现持续连接的情况

  • 在执行openvas-setup 指令的时候出现了始终在尝试连接目标主机的80端口的问题,等待了半个小时一直在反复尝试连接

  • 在网上查找了一些资料以及同学的博客,切换了连接模式,将桥接模式改为nat模式连接,同时要更换连接方式改用手机热点(实验中出现了不少的地方都是家里的网上不去必须要用手机热点才行)

Question4 check的时候出现的问题

  • 第一次执行openvas-check-setup 出现问题

    • 按照提示运行openvasmd --rebuild 指令
  • 执行openvas-check-setup 指令的时候出现nvt失败额问题,执行fix中的内容始终提示网络连接不可达

    • 更换网络,需要更换成手机热点才能连接,也不知道为什么
  • 再次执行执行openvas-check-setup 指令的时候出现如下问题

    • 按照FIX中的提示执行greenbone-scapdata-sync 指令得到的结果如下:

    • 再次执行openvas-check-setup 给出的提示还是一样的,之后就一直在这个死循环里面反复尝试都不行,最后能恢复到最初始的状态重新更新镜像再下载不知道为什么就没有这个问题了

四、 实验心得

       本次实验和上一次实验类型相同,都是对漏洞的检测盒防护技术,通过不同的软件进行信息搜集和漏洞分析,主要掌握了其过程,并接触了更多的程序以及检测网站。
       实验的操作难度也比较简单,没有什么过于繁琐的操作。但是在下载和配置方面又花了很多的时间,继实验三的veil和实验四的事件查看器出现的各种问题后,这次实验又花了将近两天的时间去搞定openvas,不得不让我有种泪奔的冲动。好在在自己的努力和同学的帮助下都成功解决了。

五、参考链接

信息搜集与NMAP
漏洞扫描-OpenVAS
kali更新源无法使用的问题
20165101刘天野 2018-2019-2《网络对抗技术》Exp6 信息搜集与漏洞扫描
2018-2019-2 网络对抗技术 20165318 Exp6 信息搜集与漏洞扫描
2019-2020-2 20175310奚晨妍《网络对抗技术》Exp5 信息搜集与漏洞扫描

posted @ 2020-04-21 16:37  5209wzh  阅读(311)  评论(0编辑  收藏  举报