文件上传之黑名单检测

鼠扑  论坛元老 | 2024-12-18 02:46:56 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 2025|帖子 2025|积分 6075

<blockquote id="20241213195713-d7k3qwg">  一样平常环境下,代码文件里会有一个数组或者列表,该数组或者列表里会包含一些非法的字符或者字符串,当数据包中含有符合该列表的字符串时,即认定该数据包好坏法的。
  


一.怎样判定是否为黑名单检测

<blockquote id="20241213200202-8s8u7nc">  黑名单是有限的,可以随意构造一个文件后缀,假如可以上传,则阐明是黑名单检测,反之,为白名单检测。
  

  • 上传一个php后缀的文件,比如1.php,发现不答应上传
  • 随意构造一个文件后缀,比如将1.php改为1.aaa发现可以上传,阐明是基于黑名单检测
二.绕过本领



  • 后缀双写绕过
  • 后缀巨细写绕过
  • 别的可分析后缀绕过
  • 图片+配置文件绕过
  • 。。。
1.后缀双写绕过

靶场:http://127.0.0.1/upload-labs-master/Pass-11/index.php


  • 介绍:有些网站代码中,会将文件后缀符合黑名单列表的字符串替换为空。比如上传“index.php”变为“index”。​


  • 绕过流程:
       

    • 打开bp抓上传文件的数据包,比如上传"post.php"
    • 将"post.php"修改为"post.pphphp"​


    • 修改完放包,即可成功上传。

2.后缀巨细写绕过

靶场:http://127.0.0.1/upload-labs-master/Pass-06/index.php


  • 介绍:主要是利用windows对巨细写不敏感举行绕过。
       

    • Windows:对巨细写不敏感
    • Linux:对巨细写敏感

  • 绕过流程:
       

    • 打开bp抓上传文件的数据包,比如上传"post.php"
    • 将"post.php"修改为"post.pHP"



    • 修改完放包,即可成功上传。

3.图片+配置文件绕过

<blockquote id="20241213202616-skjldu4">  .htaccess 文件(或者“分布式配置文件”),全称是HypertextAccess(超文本入口)。提供了针对目录改变配置的方法。它里面可
以存放Apache服务器配置相干的指令。
  靶场:http://127.0.0.1/upload-labs-master/Pass-04/index.php


  • 介绍:通过一个.htaccess​文件调用 php 的分析器去分析一个文件名中只要包含"as.png"这个字符串的任意文件,以是无论文件名是什么样子,只要包含"as.png"这个字符串,都可以被以 php 的方式来分析,一个自定的.htaccess​文件就可以以各种各样的方式去绕过很多上传验证机制。
  • 绕过流程:
       

    • 先上传.htaccess​文件,内容如下:
      1. SetHandler application/x-httpd-php
      2. #将符合特定规则的文件当作 PHP 脚本文件,调用 PHP 解释器来处理
      3. AddType application/x-httpd-php jpg
      4. ##将.jpg文件当作 PHP 脚本文件,调用 PHP 解释器来处理
      复制代码
    • 再上传一句话木马"post.txt​"或"post.jpg​"

4.别的可分析后缀绕过

靶场:http://127.0.0.1/upload-labs-master/Pass-03/index.php


  • ​:DATA​:
       <blockquote id="20241213204500-1p24pdd">    在window的时间假如文件名+":DATA"会把:DATA之后的数据当成文件流处理,不会检测后缀名,且保持:DATA之前的文件名,它的目的就是不查抄后缀名。
        例如:"phpinfo.php:DATA" Windows会主动去掉末尾的:DATA变成"phpinfo.php"
        双写:DATA​:
       

    • 介绍:有的网站代码会去除字符串中的:DATA​,以是必要双写:DATA​举行绕过。​


    • 绕过流程:
           

      • 打开bp抓上传文件的数据包,比如上传"post.php"
      • 将"post.php​"修改为"post.php:DA::$DATATA​"


      • 修改完放包,即可成功上传。



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

举报

0 个回复

倒序浏览

快速回复

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

本版积分规则

鼠扑

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表