2018-2019-2 20165330《网络对抗技术》Exp6 信息搜集与漏洞扫描

目录


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

返回目录


实验内容
---------- - [各种搜索技巧的应用](#1) - [使用搜索引擎](#5) - [搜索网址目录结构](#6) - [检测特定类型的文件](#7) - [路由侦查](#8) - [DNS IP注册信息的查询](#2) - [whois查询域名注册信息](#9) - [nslookup,dig域名查询](#10) - [IP2Location 地理位置查询](#11) - [基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点](#3) - [活跃主机扫描](#12) - [端口扫描](#13) - [OS扫描及服务版本探测](#14) - [具体服务的查点](#15) - [漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞](#4) - [配置OpenVAS](#16) - [扫描操作](#17)

返回目录


基础问题
---------- - 哪些组织负责DNS,IP的管理。 >- 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理. >- 全球一共有5个地区性注册机构:ARIN主要负责北美地区业务,RIPE主要负责欧洲地区业务,APNIC主要负责亚太地区业务,LACNIC主要负责拉丁美洲美洲业务,AfriNIC负责非洲地区业务。
  • 什么是3R信息。
  • 3R指注册人(Registrant)注册商(Registrar)官方注册局(Registry)
  • 3R注册信息:分散在官方注册局或注册商各自维护数据库中
  • 评价下扫描结果的准确性。

见实验步骤的分析。

返回目录


相关知识
---------- - 信息搜集 - 尽可能多的查找关于目标的信息 - 是渗透测试中首先要做的重要事项之一 - 方法:间接信息搜集 直接信息搜集 社会工程学 - 间接信息搜集 - 不接触目标,使用第三方信息源 - 使用辅助模块中信息搜集类:`auxiliary/gather/..` - DNS记录扫描和枚举:`use auxiliary/gather/enum_dns` - CorpWatch:`auxiliary/gather/corpwatch_lookup_name` - 搜索引擎子域名搜集器:`auxiliary/gather/searchengine_subdomains_collector` - 直接信息搜集 - 建立逻辑连接并获取信息 - 主机扫描:`auxiliary/scanner/discovery` - 端口扫描:`auxiliary/scanner/portscan` - 版本探测:探测端口上的运行服务 - 漏洞探测:探测服务是否有相应漏洞 - OpenVAS漏洞扫描器:开放式漏洞评估系统,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题 - 社会工程学 - 类似于被动信息收集,主要是针对人为错误,信息以打印输出、电话交谈、电子邮件等形式泄露 - NMAP - Linux下的网络扫描和嗅探工具包 - 基本信息扫描:`nmap targethosts` - 对主机全面扫描:`nmap –T4 –A –v targethost`

返回目录


实验步骤
---------- ####
各种搜索技巧的应用
#####
(一)使用搜索引擎
>[Google Hacking](https://www.exploit-db.com/google-hacking-database) >- GHDB (又名谷歌黑客数据库)使用的先进的JavaScript技术搜索黑客所需的信息,它包含了大量使用Google从事渗透的搜索字符串,拥有很多常用的模块,还有我们之前使用过的各个平台下的shellcode,也可以从这里获取。 >- 在侧边栏选中`SHELLCODES`即可看到一些发布的shellcode ![image](https://img2018.cnblogs.com/blog/1291750/201904/1291750-20190424211454075-1234935812.png)

zoomeye

  • ZoomEye是一款针对网络空间的搜索引擎,收录了互联网空间中的设备、网站及其使用的服务或组件等信息
  • 进入zoomeye注册账号
  • 开始搜索:如搜索中输入apache +country:"CN"即查找中国地区的apache
    image
  • 点击IP地址我们就可以看到更详细的信息
    image
  • 全球视角我们可以看到apache的分布
    image
  • 在MSF中也可以找到它,msf利用zomeye的API来实现搜集信息,可使用use auxiliary/gather/zoomeye_search进入模块
  • 与之类似的shodan的用法也是差不多的,在我的上篇博客有所尝试。可见利用庞大的搜索引擎,其结果也是十分精确而又详细的!
(二)搜索网址目录结构
  • 利用metasploitdir_scanner辅助模块,暴力猜解,获取网站目录结构
  • 进入msfconsole输入以下命令
    use auxiliary/scanner/http/dir_scanner //进入该辅助模块
    info //查看需配置的信息
    set THREADS 50 
    set RHOSTS www.baidu.com
    exploit
    
  • 可以查询到网站的目录结构
    image
    • 可以看到百度的这几个隐藏目录
    • 其中返回代码302表示服务器找不到请求的网页
    • 返回代码200表示成功处理了请求
    • 其他状态码意义可参考这里
(三)检测特定类型的文件
  • 有些网站会链接通讯录,订单等敏感的文件,可以进行针对性的查找, 如Googlesite:XXX.com filetype:xls
  • 我们使用百度,在搜索框输入site:edu.cn filetype:xls
    image
    出现如上一堆文件格式为XLS/Microsoft Excel的网址
  • 也可以加入关键字搜索,如site:edu.cn filetype:xls 大学搜索与大学有关的XLS文件
    image
  • 下载上面看到的鞍山师范学院xls文件可看到其中信息
    image
(四)路由侦查

tracert命令进行路由侦查

  • tracert可用于对经过的路由进行探测
  • windows下打开cmd,输入命令:tracert www.baidu.com
    image
  • 说明:
    • 第一列代表了“生存时间”(每途经一个路由器结点自增1)
    • 第二至第四列表示“三次发送的ICMP包返回时间”(共计3个,单位为毫秒ms)
    • 第五列表示“途经路由器的IP地址”(如果有主机名,还会包含主机名)
    • 带有星号(*)的信息表示该次ICMP包返回时间超时。
    • 另外发现侦察过程中显示了www.a.shifen.com这个地址,查了下原因:这是百度为其域名加的外壳,以免被攻击 ,属于网络安全范畴。

traceroute命令进行路由侦查

  • kali下输入traceroute www.baidu.com对经过的路由进行探测
    image
  • 说明:我的kali为桥接模式
    • 记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,
    • 每行有三个时间,单位是ms,是探测数据包向每个网关发送三个数据包后,网关响应后返回的时间
    • 有一些行是以*表示,可能是防火墙封掉了ICMP的返回信息,所以我们得不到什么相关的数据包返回数据

DNS IP注册信息的查询

(一)

whois查询域名注册信息

  • 通过whois查询可以获得它的ip地址,域名信息,子域信息,服务器位置信息等
  • 打开终端输入:whois baidu.com(注意:进行whois查询时去掉www等前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到)
  • 可以查询到3R信息
    image
    image

(二)

nslookup,dig域名查询

  • nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。dig可以从官方DNS服务器上查询精确的结果
  • kali终端输入:nslookup gitee.com
    image
  • kali终端输入:dig gitee.com
    image
    • 1~7:显示了dig的基本设置信息,e.g. java -version
    • 8~9:显示了查询内容,这里查询的是域名gitee.com的A记录
    • 10~12:显示了查询结果,域名gitee的A记录是218.11.0.86(A(Address)记录是用来指定主机名(或域名)对应的IP地址)
    • 13~15:授权信息,域名gitee.cpm的NS(nameserver)是yundunddos的域名服务器
    • 21~24:统计信息
    • 更多用法可参考dig常用命令

(三)

IP2Location 地理位置查询

  • www.maxmind.com网站可以根据IP查询地理位置
  • 先通过cmd进行ping www.baidu.com查看百度IP地址
  • 进入网站www.maxmind.com下拉查询IP,得到结果
    image
  • IP2反域名查询
    • 通过IP-ADDRESS网站,查询更详细的关于某共有IP的信息
      image
  • shodan进行反域名查询
    • 通过shodan可以搜索到该IP的地理位置、服务占用端口号,以及提供的服务类型
    • 如查询百度
      image

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

(一)活跃主机扫描
  • ICMP ping命令
    image
  • 利用metasploit中的模块
    • 位于modules/auxiliary/scanner/discovery主要有arp_sweepipv6_multicast_pingipv6_neighboripv6_neighbor_router_advertisementudp_probe,udp_sweep
    • 我们使用arp_sweep,即用ARP请求枚举本地局域网的活跃主机
    • 进入msfconsole输入以以下命令
      use auxiliary/scanner/discovery/arp_sweep //进入arp_sweep 模块
      info //查看设置参数信息
      set RHOSTS 10.0.0.0/24 //设置主机段
      set THREADS 50 //加快扫描速度
      run //扫描
      
    • 扫描结果如下
      image
  • nmap -sn探测某网段的活跃主机
    • kali终端中输入:nmap -sn 10.0.0.0/24
    • 结果如下
      image
(二)端口扫描
  • 利用msf中的udp_sweep模块对UDP端口进行探测
    • 进入msfconsole,输入以下命令
      use auxiliary/scanner/discovery/udp_sweep //进入udp_sweep 模块
      info //查看设置参数信息
      set RHOSTS 10.0.0.0/24 //设置主机段
      set THREADS 50 //加快扫描速度
      run //扫描
      
    • 结果如下
      image
      这与nmap -PU的作用一样,
  • 使用nmap -sT对指定主机TCP端口进行探测
    • kali终端输入:nmap -sT -p 1-1024 10.0.0.216(-p参数设置端口范围)
      image
  • 利用msf中的portscan模块对TCP端口进行探测
    • 进入msfconsole,输入以下命令
      use auxiliary/scanner/discovery/tcp //进入udp_sweep 模块
      info //查看设置参数信息
      set RHOSTS 10.0.0.216 //设置主机段
      set THREADS 50 //加快扫描速度
      set PORTS 1-1024 //设置端口范围
      run //扫描
      
    • 结果如下
      image
  • 也可使用nmap -sU对UDP端口进行探测
(三)OS扫描及服务版本探测
  • kali下使用nmap -O 10.0.0.216获取目标机的操作系统等信息
    image
  • 使用-sS选项进行TCP SYN扫描
    • kali下使用nmap -sS -Pn 10.0.0.216命令(-sS表示TCP SYN扫描,-Pn表示在扫描之前,不发送ICMP echo请求测试目标 )
      image
  • 使用-sV查看目标机子的详细服务信息
    • kali下使用nmap -sV -Pn 10.0.0.216命令(-sV用来查看目标机子的详细服务信息)
      image
(四)具体服务的查点
  • Telnet服务扫描
    • telnet命令用于登录远程主机,对远程主机进行管理
    • 进入msfconsole输入以下命令
      use auxiliary/scanner/telnet/telnet_version //进入telnet模块
      info //查看设置信息
      set RHOSTS 10.0.0.0/24 //扫描主机网段
      set THREADS 100 //提高查询速度
      run //扫描
      
    • 结果如下
      image
      可见大多数主机都没有开启这个服务,需要自己去设置手动开启。
  • SMB网络服务扫描
    • SMB (Server Message Block,服务器消息块) 提供了 Windows 网络中最常用的远程文件与打印机共享网络服务。
    • 进入msfconsole输入以下命令
      use auxiliary/scanner/smb/smb_version //进入模块
      info //查看设置信息
      set RHOSTS 10.0.0.0/24 //扫描主机网段
      set THREADS 100 //提高查询速度
      run //扫描
      
    • 结果如下
      image
  • NetBios网络服务扫描
    • NetBIOS (Network Basic Input/Output System,网络基本输入输出) 为局域网内 Windows 系统上的应用程序实现会话层之间的通信提供基本支持。
    • 进入msfconsole输入以下命令
      use auxiliary/scanner/netbios/nbname //进入模块
      info //查看设置信息
      set RHOSTS 10.0.0.0/24 //扫描主机网段
      set THREADS 100 //提高查询速度
      run //扫描
      
    • 结果如下
      image
  • 口令猜测与嗅探
    • 进入msfconsole输入以下命令
      use auxiliary/scanner/ssh/ssh_login //进入ssh_login模块
      info //查看设置信息
      set RHOSTS 10.0.0.0/24 //扫描主机网段
      set USERNAME root //设置目标系统的管理员账号
      set PASS_FILE /root/password.txt //设置破解的字典
      set THREADS 200 //提高查询速度
      run //扫描
      

漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞

(一)配置OpenVAS
  • 因为Kali 2.0系统中已经不默认安装OpenVAS,使用openvas-check-setup检查状态会提示没有此命令
  • 先更新软件包列表:apt-get update
  • 获取到最新的软件包:apt-get dist-upgrade(不建议时间很长!)
  • 安装OpenVAS工具:apt-get install openvas
  • 重复多次运行openvas-check-setup检查状态,一般会有不同的报错,一一进行修复
    • 错误1:The NVT collection is very small.
      image

      解决:按提示运行sudo greenbone-nvt-sync同步漏洞库

    • 错误2: No users found.
      image

      解决:按提示运行openvasmd --create-user=admin --role=Admin && openvasmd --user=admin --new-password=158138创建用户和密码

    • 错误3:The number of NVTs in the OpenVAS Manager database is too low
      image

      解决:运行openvassd启动扫描器,在openvasmd --rebuild 生成数据库

    • 错误4:No OpenVAS SCAP database found.
      image

      解决:运行greenbone-scapdata-sync同步SCAP数据

  • 当看到It semms like your OpenVAS-9 installation is OK即安装成功。
(二)扫描操作
  • 开启服务:openvas-start,自动打开浏览器主页https://127.0.0.1:9392,点击Login进入
    image
  • 新建任务扫描
    • 点击Scans-Tasks
    • 进入后点击左上角处紫色的烟花,选择Task Wizard新建一个任务向导。
    • 在弹框中输入待扫描主机的IP地址10.1.1.109,点击Start Scans开始扫描。
      image
  • 扫描完成
    image
  • 点击Name下名称,查看扫描的详细信息
    image
  • 点击红框中Full and fast
  • 我们选择其中的Buffer overflow分析
    image
    • 进入后会发现每个漏洞都标有危险等级,我们选择一个危险等级较高的漏洞
      image
    • Summary处为该漏洞的描述
      image
    • Solution处可看到解决方案
      image
  • 更详细的漏洞可在微软技术中心中查看

返回目录


实验总结与体会
---------- - 通过本次实验,初步掌握了如何进行信息的搜集,在利用各种技术来实践收集并分析信息的过程中,让我不断掌握了漏洞的扫描和分析的基本方法,也在这些不同的尝试中感受到现在信息的搜查强度,自己的信息真的很容易就可以被别人搜到呀~

参考资料

posted @ 2019-04-26 18:20  20165330张羽昕  阅读(530)  评论(0编辑  收藏  举报