• 文件上传漏洞 解析、验证、伪造(二)


    注意:仅用于本人学习的笔记记录,禁止进行传播分享,一旦造成严重后果与本人无关!!!

    后端校验的黑名单机制比较危险

    1.大小写绕过

    2.点空绕过

    3.NTFS文件流绕过::$DATA

    4.htaccess配置文件绕过

    5.phphp绕过

    6.别名绕过phtml、php4、php5

    开发用白名单(jpg、png、jpeg)

    文件上传  白名单、黑名单

            判断:上传一个后缀出乎意料的名字        例如:x.adfefsxre能上传则是黑名单

    1、%00截断【十六进制00】        GET传参

            00在电报中代表着电文结束

            php的某些版本里面也代表着结束

            move_upload_file        从本地缓存temp目录移到upload目录下

            文件上传  ->  缓存目录(不需要代码参与)->  被移动重命名

            00截断原理是,move_upload_file碰到%00就给当结束,将内容都移到了00截断前的位置中

             版本影响:php 版本<5.3.4

    2、00截断        POST传参

            使用16进制修改,00截断和%00截断都是一样的,知识传参方式的不一样

            URL编码原理:把字符变成16进制,然后加上%

            =>核心是为了更好的传参

            a.php?a=123#abcd   -------锚点------>   a.php?a=123%23abcd        怕出现混淆的事情

            POST传参没有%00,所以我们需要想办法传入16进制的00

    3、图片码        对图片进行检测,所以需要图片码绕过

            图片+木马{粘到一起}

            添加方法:直接复制代码放到末尾追加(容易翻车,图片不正常)

            标准方法:copy  1.jpg/b  +  1.txt   1.jpg        /b二进制合成

            有的检测,检测头和尾        可以   图+码+图

            文件上传漏洞:能上传、能解析(解析漏洞)

            图片码的方法可以藏文件,而且比NTFS文件流厉害的多

    3、二次渲染

            获得图片后,给你重新加载,然后重新保存

            gif图片去破,二次渲染,只会渲染画面部分

            前四行是gif运动的规律,第一行是gif的标识,将码插到二三四行中

    4、条件竞争

            过滤有两种:

            1.先检测,直接不允许上传【没问题】

            2.先上传,再去检测,删除【有问题】

            上传 -> 检测 ->  删除

            检测需要时间,如果你上传的够快,可以在删除之前访问到

            马生马=> 访问一个木马,生成一个木马

            检测的是上传的问题,但是如果你上传的文件,它写了一个木马,它是不会被检测的

            file_put_contents(文件地址、文件内容)

  • 相关阅读:
    我自己制作的导航页网站,源码分享~
    电机与拖动 - 7 直流电机
    ScrollView如何裁剪粒子特效
    request和response——请求响应对象
    MOS管在户用储能上的应用-REASUNOS瑞森半导体
    CSP2023 游记
    Postman+Newman+Jenkins实现接口测试持续集成
    rk3568 buildroot
    20220911编译ITX-3588J的Buildroot的系统4(编译rootfs)
    堆栈介绍.
  • 原文地址:https://blog.csdn.net/qq_58000413/article/details/127095432