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

目录


实验目的

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

返回目录html


实验内容

返回目录java


基础问题

  • 哪些组织负责DNS,IP的管理。linux

    • 全球根服务器均由美国政府受权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理.
    • 全球一共有5个地区性注册机构:ARIN主要负责北美地区业务,RIPE主要负责欧洲地区业务,APNIC主要负责亚太地区业务,LACNIC主要负责拉丁美洲美洲业务,AfriNIC负责非洲地区业务。
  • 什么是3R信息。ios

    • 3R指注册人(Registrant)注册商(Registrar)官方注册局(Registry)
    • 3R注册信息:分散在官方注册局或注册商各自维护数据库中
  • 评价下扫描结果的准确性。git

    见实验步骤的分析。shell

返回目录数据库


相关知识

  • 信息搜集
    • 尽量多的查找关于目标的信息
    • 是渗透测试中首先要作的重要事项之一
    • 方法:间接信息搜集 直接信息搜集 社会工程学
  • 间接信息搜集
    • 不接触目标,使用第三方信息源
    • 使用辅助模块中信息搜集类: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

返回目录apache


实验步骤

各类搜索技巧的应用

(一)使用搜索引擎

Google Hackingwindows

  • GHDB (又名谷歌黑客数据库)使用的先进的JavaScript技术搜索黑客所需的信息,它包含了大量使用Google从事渗透的搜索字符串,拥有不少经常使用的模块,还有咱们以前使用过的各个平台下的shellcode,也能够从这里获取。
  • 在侧边栏选中SHELLCODES便可看到一些发布的shellcode
    image

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
  • 更详细的漏洞可在微软技术中心中查看

返回目录


实验总结与体会

  • 经过本次实验,初步掌握了如何进行信息的搜集,在利用各类技术来实践收集并分析信息的过程当中,让我不断掌握了漏洞的扫描和分析的基本方法,也在这些不一样的尝试中感觉到如今信息的搜查强度,本身的信息真的很容易就能够被别人搜到呀~

参考资料

相关文章
相关标签/搜索