zoukankan      html  css  js  c++  java
  • Exp5 信息搜集与漏洞扫描

    Exp5 信息搜集与漏洞扫描

    一、实践目标

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

    二、实践内容

    1、各种搜索技巧的应用

    1. 搜索网址目录结构

    使用metasploitbrute_dirsdir_listingdir_scanner等辅助模块,用来探测网站的目录结构,便于查找漏洞点。

    • dir_scanner
    use auxiliary/scanner/http/dir_scanner
    set THREADS 50 // 设定扫描线程数
    set RHOST www.baidu.com
    exploit
    
    • image-20210419081352374

    • dir_listing

    use auxiliary/scanner/http/dir_listing
    set THREADS 50
    set RHOST www.baidu.com
    exploit
    

    image-20210419082953907

    • brute_dirs
    use auxiliary/scanner/http/brute_dirs
    set THREADS 50
    set RHOST www.baidu.com
    exploit
    

    image-20210419083638860

    • 通过扫描可以看到百度的一些隐藏目录
      返回代码200表示成功处理了请求
      返回代码302表示服务器重定向
      返回代码404表示服务器找不到请求的网页

    2. 利用搜索引擎

    在开始前,先学习一下搜索引擎的一些查询小技巧:十分钟教你有效运用15种百度检索式:小敏学长

    1、“+”加号 —— 强制包含关键词
    2、“-”非——消除无关性
    3、“|”或——并行搜索
    4、(“”)双引号——精确匹配
    5、“《》”书名号——精确匹配/电影或小说
    6、“『』”——查找论坛版块
    7、“文本方式”——查找论坛内容
    8、利用后缀名来搜索电子书
    9、中英文混合搜索
    10、“开始连接”、“正在连接”——搜索电影
    11、“site”——在特定网站或域中搜索
    12、“inurl”——把搜索范围限定在url链接中
    13、“intitle”——把搜索范围限定在网页标题中
    14、“filetype:”——特定格式的文档检索
    15、“intitle:bookmarks”——查询别人的收藏夹
    

    image-20210419091536729

    3. 路由侦察

    • Windows 使用 tracert 命令进行路由侦查

    image-20210419093113497

    第一列:生存时间,每途经一个路由器结点自增1。
    第二列-第四列:三次发送的ICMP包返回时间,共计3个,单位为毫秒ms。其中带有星号(*)的信息表示该次ICMP包返回时间超时。
    第五列:途经路由器的IP地址,如果有主机名,还会包含主机名。
    带有星号(*)的信息表示该次ICMP包返回时间超时。
    
    • linux 下使用 traceroute 命令进行路由侦查

    image-20210419093549973

    得到的结构和windows的结果差不多,只是第二到第四列的结果和第五列的结果交换了一下。

    2、DNS IP注册信息的查询

    1. whois 查询

    whois 就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商),使用时要去掉www等前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到

    image-20210419094516279

    2. nslookup域名查询

    可以得到DNS解析服务器保存的Cache的结果(有可能出现错误)。

    image-20210419103833805

    3. dig域名查询

    dig可以从官方DNS服务器上查询精确的结果。

    image-20210419103947671

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

    4. IP2Location 地理位置查询

    • maxmind可以通过ip地址查询地理位置。

    image-20210419105137664

    • shodan可以进行反域名查询

    image-20210419105908880

    三、基本的扫描技术

    1. 主机发现

    • 通过PING发现

    image-20210419111950549

    通过域名可以发现主机的ip。

    • metasploit中的arp_sweep模块

      • udp_sweep使用UDP数据包探测,除了可以探测到存活主机之外,还可以获得主机名称信息
      use auxiliary/scanner/discovery/udp_sweep 
      show options 
      set RHOSTS 192.168.242.128/24 
      set THREADS 50 
      run
      

      image-20210419113445339

      • arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机
      use auxiliary/scanner/discovery/arp_sweep 
      show options 
      set RHOSTS 192.168.242.128/24 
      set THREADS 50 
      run
      

      image-20210419113337967

    • nmap -sn

    image-20210419113703174

    2. 端口扫描

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

    image-20210419114104787

    • metasploit的端口扫描模块
    msfconsole
    use auxiliary/scanner/portscan/tcp 
    set RHOSTS 192.168.242.128/24 
    set THREADS 50
    run 
    

    image-20210419155220412

    3. 版本探测

    • 操作系统侦测

    输入 sudo nmap -O 192.168.242.128,指定 nmap 进行 OS 探测

    image-20210419155536219

    • 服务侦测

    输入sudo nmap -sV -Pn 192.168.242.128,查看目标主机的详细服务信息

    image-20210419155633138

    4. 具体服务的查点

    • telenet服务扫描
    use auxiliary/scanner/telnet/telnet_version
    set RHOSTS 192.168.242.128/24
    set THREADS 50
    run
    

    image-20210419155920708

    image-20210419155934922

    • SSH服务扫描
    use auxiliary/scanner/ssh/ssh_version
    set RHOSTS 192.168.242.128/24
    set THREADS 50
    run
    

    image-20210419160212854

    • Oracle数据库服务查点
    use auxiliary/scanner/oracle/tnslsnr_version
    set RHOSTS 192.168.242.128/24
    set THREADS 50
    run
    

    image-20210419160435199

    四、漏洞扫描

    1. 安装openvas

    由于kali新版本的openvas改名为了gvm,所以我们安装gvm进行漏洞扫描。

    • 安装gvm

    apt-get install gvm

    • 初始化gvm

    gvm-setup

    image-20210420131431017

    这是初始化完成的样子,用户名是admin,密码是133c7ca6-3a68-4987-895e-e7b104628bfc

    如果需要修改密码可以输入runuser -u _gvm --gvmd --user=admin --new-password=xxxxx

    • 检查gvm完整性

    gvm-check-setup

    image-20210420160810147

    • 运行gvm

    image-20210420163501873

    • 登陆gvm

    image-20210420163615097

    • 漏洞扫描

    选择导航栏的Scans,点击左上角的第二个图标,选择Task Wizard,再输入主机的ip地址,开始运行。

    image-20210420163750533

    运行一段时间后,得到结果

    image-20210420172627262

    • 选择Last Report展开

    image-20210420172800475

    • 我们选择导航栏上不同的选项查看详细信息。(这里以Posts为例)

    image-20210420174150901

    我们可以看到135和4303端口确实开放了。

    • 查看CVE

    image-20210420174537021

    可以看到,这里扫出了几个高危的漏洞,我们可以点进其中一个查看详细信息。

    image-20210420174705105

    我们可以看到检测方法、感染的软件和操作系统、感染的风险和解决方案。

    实验后回答问题

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

    地址支持组织(ASO)负责IP地址系统的管理,域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理。全球一共有5个地区性注册机构:

    • ARIN主要负责北美地区业务
    • RIPE主要负责欧洲地区业务
    • APNIC主要负责亚太地区业务
    • LACNIC主要负责拉丁美洲美洲业务
    • AfriNIC负责非洲地区业务

    (2)什么是3R信息。

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

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

    扫描结果的准确性是较为准确的,但是存在的问题是随着版本迭代更新,目前大部分漏洞其实都已经被修复了,扫描出来的漏洞利用价值有限。同时,还存在部分没有扫描出来的漏洞。

    实验体会

    这次实验由于是信息收集和漏洞扫描,实际上所需要的专业知识并不是很多,做起来也相对轻松一点,但是难点和消耗的时间主要在于漏洞扫描工具gvm的安装上。以前这个工具叫做openvas,现在在新版本的kali中已经改名为gvm。安装的时候需要联网下载,然后输入指令安装。在输入指令安装时,需要解压大量的数据,在这段时间内如果进行了其他操作,包括下载,息屏等,都会导致安装不完全。最后在check的时候报错,没有完全安装。

    通过进行本次实验,我对信息收集和漏洞扫描又学会了新的姿势,信息收集和漏洞扫描是网络攻击的前提,如果扫不出漏洞,攻击就无从谈起。本次实验,受益匪浅。

  • 相关阅读:
    获取当前div中的所有div的个数和每一个div的ID and 根据屏幕分辨率计算高度
    在当前页获取父窗口中母版页中的服务器控件的ID
    Asp.net C# 获取本周上周本月上月本年上年第一天最后一天时间大全
    C#后台调用前台js方法
    IComparable与排序
    C# 与.NET2.0 中类型Type的GetMethod方法
    下拉菜单及时间段的获取
    黑马程序员——JAVA基础之简述集合collection
    黑马程序员——JAVA基础之基本数据类型包装类和1.5JDK新特性装箱
    黑马程序员——JAVA基础之String和StringBuffer
  • 原文地址:https://www.cnblogs.com/MisakaYuii-Z/p/14682238.html
Copyright © 2011-2022 走看看