暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Web 暴露面扫描

生有可恋 2023-06-01
973

一般在Web服务搭好了,需要对暴露的Web资产进行扫描,从而确定并没有未授权的URL暴露给攻击者。

比如一些注册页面、系统初始化页面,正常情况下我们是通过页面上的链接来访问的。但如果页面上的链接被去掉了,这个页面就变成了隐形页面,URL可以直接访问,但通过正常途径不会访问到。这时URL遍历扫描就可以将这些被遗漏的资源扫出来。

dirsearch 就是这样一款Web暴露面扫描工具,通过对站点进行遍历扫描可以获得可访问的资源。而这些Web资源如果存在漏洞就会给攻击者提供入侵目标。作为防守方则可以利用这款工具了解Web站点暴露出来的资源,从而移除或通过WAF(web application firewall)进行有效防御。

dirsearch 工具的 github 项目地址为:

    https://github.com/maurosoria/dirsearch

    我们使用它来简单地探测一下 WordPress 暴露出来的资源:

      $ dirsearch -u http://192.168.10.200/it -e php --exclude-status 403,301

      通过 dirsearch 扫描发现站点下有不应该出现的.git目录,并且初始化页面和注册页面都可访问:

        [11:25:08] 200 -  676B  - /it/wp-admin/install.php
        [11:25:09] 200 - 20B - /it/wp-config.php
        [11:25:09] 302 - 20B - /it/wp-signup.php

        通过直接访问这些页面提示功能已经关闭,如果功能没有关闭那么用户就可以直接注册进去了。

        通过对站点进行检查可以提前发现一些未知的风险,因为很多站点上挂了什么页面我们直接通过前台页面是很难发现的。比如一些不需要登陆就可以使用的页面,dirsearch 如果返回的 HTTP 状态码为 200,则说明这些页面可直接访问。

        我们可以什么额外参数都不加先对Web站点进行一轮粗略的扫描,看一下站点上都有什么资源,然后再根据应用类型,比如 php 或 html 对子目录进行扫描。

          dirsearch -u http://192.168.10.200
          dirsearch -u http://192.168.10.200/it -e php,html,js

          比如这个站点暴露出来的服务有:

            dirsearch -u http://192.168.10.200
            [11:11:55] 200 - 2KB - /download/
            [11:12:14] 200 - 2KB - /phpmyadmin/
            [11:12:24] 401 - 345B - /svn/

            HTTP 的常用状态码有:

              # HTTP 状态码
              200 OK 请求成功。
              401 Unauthorized 请求要求用户的身份认证
              301 Moved Permanently 请求的资源已被永久的移动到新URI
              # 更多状态码,请查阅
              https://www.runoob.com/http/http-status-codes.html

              dirsearch 的使用可以直接参考 github 项目主页,上面都有写好的示例,直接套参数即可。dirsearch 的安装在项目主页上也有描述,我主要介绍下Windows下的安装和使用。

              在Windows下直接使用 pip 进行安装即可,安装时会下载大量的依赖。

                pip install dirsearch

                使用 pip 安装完后会多出一个 dirsearch.exe 的可执行文件出来,使用 where 可以定位 dirsearch 的位置:

                  C:\> where dirsearch
                  C:\Python\Python311\Scripts\dirsearch.exe


                  C:\> dirsearch -h
                  Usage: dirsearch [-u|--url] target [-e|--extensions] extensions [options]


                  Options:
                  --version show program's version number and exit
                  -h, --help show this help message and exit


                  Mandatory:
                  -u URL, --url=URL Target URL(s), can use multiple flags

                  全文完。

                  如果转发本文,文末务必注明:“转自微信公众号:生有可恋”。

                  文章转载自生有可恋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                  评论