• 漏洞挖掘 | 目录浏览漏洞


    目录浏览漏洞

    漏洞描述

    Web中间件如果开启了目录浏览功能,当用户访问Web应用时,Web服务器会将Web应用的目录结构、文件信息返回给客户端,攻击者可能利用这些敏感信息对Web应用进行攻击,如数据库脚本SQL文件路径泄露、程序备份压缩文件路径泄露等。

    风险等级

    漏洞测试

    直接访问Web应用存在的一些目录,如果返回文件列表信息,证明存在此漏洞。

    目录浏览

    可以利用Web漏洞扫描器扫描Web应用进行检测,也可通过搜索网站标题包含"index of"关键词的网站进行访问。

    GoogleHacking 语法:

    intext:Index of /
    

    漏洞危害

    攻击者利用目录、文件路径信息可以对Web应用进行攻击,如数据库脚本SQL文件路径泄露、程序备份、压缩文件路径泄露等,可以利用这些信息进一步对Web应用进行攻击,甚至可以利用这些信息获取数据库的数据或获取服务器控制权限。

    加固建议

    IIS

    1. 打开 IIS 管理器,然后导航至您要管理的级别;
    2. 在“功能视图”中,双击“目录浏览”;
    3. 在“操作”窗格中,选择“目录浏览”功能,单击“禁用”。

    Apache

    1. 修改Apache配置文件[httpd.conf],搜索“Options Indexes FollowSymLinks”,修改为“Options -Indexes FollowSymLinks”即可。
    2. Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表了。
    3. 在Indexes前,加 + 代表允许目录浏览;加 – 代表禁止目录浏览。这样的话就属于整个Apache禁止目录浏览了。
    4. 通过.htaccess文件
      可以在根目录新建或修改 .htaccess 文件中添加如下代码就可以禁止Apache显示目录索引:
      <Files *>
          Options -Indexes
      </Files>
      

    Nginx

    1. 找到Nginx配置文件中的“autoindex”,设置为“off”即可。

    Tomcat

    1. 在应用的WEB-INF目录找到web.xml配置文件,将“listings”参数的初始化值设置为“false”即可。代码示例如下:

       <servlet-name>default</servlet-name>  
      
       <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>  
      
       <init-param>  
      
           <param-name>debug</param-name>  
      
           <param-value>0</param-value>  
      
       </init-param>  
      
       <init-param>  
      
           <param-name>listings</param-name>  
      
           <param-value>false</param-value>     //注意:如果这个地方是true,如果访问tomcat上的应用程序如果URL输入的是一个目录,而不是具体的文件,则会在浏览器上列出该目录下的文件列表,设置为false,就不会列出文件列表了  
      
       </init-param>  
      
       <load-on-startup>1</load-on-startup>  
      
    每一个不曾起舞的日子 都是对生命的辜负
  • 相关阅读:
    Linux dd命令
    冲突域
    三次握手与四次挥手
    sizeof +数组名
    程序内存分配
    OSI七层协议模型
    栈的存储结构
    周转时间
    Gson工具类
    spring注入注解
  • 原文地址:https://www.cnblogs.com/wlfsky/p/10570078.html
Copyright © 2020-2023  润新知