WEB-INF文件泄露漏洞目录遍历攻击及如何防护 - 经验分享 - 微家学院 - 互联网自学第一社区
请选择 进入手机版 | 继续访问电脑版

热点推荐

查看: 158|回复: 0

[网络安全] WEB-INF文件泄露漏洞目录遍历攻击及如何防护

[复制链接]
  • TA的每日心情
    开心
    2018-8-26 23:25
  • 21

    主题

    23

    帖子

    1万

    积分

    管理员

    Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

    积分
    13331
    学时
    12615
    学分
    637

    学币多多钻石VIP会员好学小子分享达人卓越贡献奖论坛元老

    发表于 2018-9-13 16:03:56 | 显示全部楼层 |阅读模式
    目录遍历攻击描述
    攻击人员通过目录便利攻击可以获取系统文件及服务器的配置文件等等。一般来说,他们利用服务器API、文件标准权限进行攻击。严格来说,目录遍历攻击并不是一种web漏洞,而是网站设计人员的设计“漏洞”。如果web设计者设计的web内容没有恰当的访问控制,允许http遍历,攻击者就可以访问受限的目录,并可以在web根目录以外执行命令。

    攻击方法
    攻击者通过访问根目录,发送一系列”../”字符来遍历高层目录,并且可以执行系统命令,甚至使系统崩溃。由于文件名可以任意更改而服务器支持“~/”,“../”等特殊符号的目录回溯,从而使攻击者越权访问或者覆盖敏感数据,如网站的配置文件、系统的核心文件,这样的缺陷被命名为路径目录遍历漏洞。

    发现漏洞
    1、可以利用web漏洞扫描器扫描一下web应用,不仅可以找出漏洞,还会提供解决办法,另外还可以发现是否存在sql漏洞及其他漏洞。
    2、也可以查看web log,如果发现有未授权用户访问越级目录,说明有目录便利漏洞。

    如何防范
    防范目录遍历攻击漏洞,最有效的办法就是权限控制,谨慎处理传向文件系统API的参数。本人认为最好的防范方法就是组合使用下面两条:
    1、净化数据:对用户传过来的文件名参数进行硬编码或统一编码,对文件类型进行白名单控制,对包含恶意字符或者空字符的参数进行拒绝。


    为了合理性,过滤文件名非法字符是必须的,果断地要干掉.....

    windows现在已知的文件名非法字符有 \ / : * ? " < > |

    linux文件名非法字符:"/" 既可代表目录树的根也可作为路径名中的分隔符(类似DOS下的"\),因此"/"不能出现在文件名中。

    使用工具类对请求的url进行过

    private static Pattern FilePattern = Pattern.compile("[\\\\/:*?\"<>|]");  
    public static String filenameFilter(String str) {  
        return str==null?null:FilePattern.matcher(str).replaceAll("");  
    }  

    截图02.jpg

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表