文件上传漏洞-白名单检测

如何确认是否是白名单检测

上传一张图片与上传一个自己构造的后缀,如果只能上传图片不能上传其它后缀文件,说明是白名单检测。

绕过技巧

可以利用 00 截断的方式进行绕过,包括 %00 截断与 0x00 截断。除此之外如果网站存在文件包含漏洞,还可以文件包含+ 图片马进行绕过
前提
php php < 5.3.29 magic_quotes_gpc=off
java: jdk < JDK1.7.0_40


%00截断

pass-12

 $file_ext = substr($_FILES['upload_file']['name'],strrpos($_FILES['upload_file']['name'],".")+1);

查看源代码这一句的意思是,截取文件扩展名。

strrpos函数是计算指定字符串在目标字符串中最后一次出现的位置,这里是指定“.”最后出现的位置

然后+1,也就是接去了文件扩展名。

%00 是一个 url 编码, url 发送到服务器后就被服务器解码,这时还没有传到验证函数,也就是说验证函数里接收到的不是%00 字符,而是%00 解码后的内容,即解码成了 0x00 。在 url %00 表示 ascll 码中的0 ,而 ascii 0 作为特殊字符保留,表示字符串结束,所以当 url 中出现%00 时就会认为读取已结束。
开启抓包
更改上传文件后缀
然后放包上传成功,复制图片链接进行访问
将%00及以后删掉然后进行访问就可以进入到服务器
为什么修改 path 才可以?
因为程序中检测的是文件的后缀名,如果后缀合法则拼接路径和文件名。那么,攻击者修改了path 以后的拼接结果为:uploads/1.php%00/20190818.jpg移动文件的时候会将文件保存为:uploads/1.php 从而达到Getshell效果。

00截断

pass-13

系统在对文件名进行读取时,如果遇到 0x00 ,就会认为读取已经结 束。但要注意是文件的十六进制内容里的00 ,而不是文件名中的00。
开启抓包,将上传的文件更改后缀,构造save_path,然后点开hex也就是16进制格式找到我们构造的地方
定位到构造的save_path后将这一位改为00,然后放包就上传成功了

相关推荐

  1. 文件漏洞

    2024-04-27 03:14:03       15 阅读
  2. ·xss文件漏洞

    2024-04-27 03:14:03       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-27 03:14:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-27 03:14:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-27 03:14:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-27 03:14:03       20 阅读

热门阅读

  1. 删除有序序列中的重复项 python

    2024-04-27 03:14:03       14 阅读
  2. Jammy@Jetson Orin - Tensorflow & Keras Get Started

    2024-04-27 03:14:03       13 阅读
  3. 面试题:判断一个完全平方数

    2024-04-27 03:14:03       15 阅读
  4. Ali-Sentinel-入口控制

    2024-04-27 03:14:03       13 阅读
  5. SQL数据更新

    2024-04-27 03:14:03       12 阅读
  6. Vue-3

    Vue-3

    2024-04-27 03:14:03      11 阅读
  7. C# 面向对象编程(一)——类 第三篇

    2024-04-27 03:14:03       13 阅读
  8. DataGridView控件

    2024-04-27 03:14:03       13 阅读
  9. Redis的单线程模型解析与应用实践

    2024-04-27 03:14:03       12 阅读
  10. 基于nest框架的redis streams实现mq(bullmq)

    2024-04-27 03:14:03       15 阅读
  11. 面试经典150题——分发糖果

    2024-04-27 03:14:03       12 阅读
  12. 代采系统:电商领域的创新与实践

    2024-04-27 03:14:03       16 阅读