• Web安全之文件上传


    文件上传漏洞原理:

    现在很多web应用程序中允许上传图片,文本或者其他资源到指定的位置,文件上传漏洞就是利用这些可以上传的地方将恶意代码植入到服务器中,然后通过url去访问以执行代码。

    防范措施

    对于上传文件的后缀名(扩展名)没有做较为严格的限制(可绕过)

    对于上传文件的MIMETYPE 没有做检查

    权限上没有对于上传的文件的文件权限,(尤其是对于shebang类型的文件)

    web server对于上传文件或者指定目录的行为没有做限制

    绕过方式

    • 1修改前端JS代码或抓包

    • 检测拓展名,如果不合法,则拒绝这次上传,一般有两种策略:黑名单和白名单,白名单策略是更加安全的,通过限制上传类型为只有我们接受的类型,可以较好的保证安全,因为黑名单我们可以使用各种方法来进行注入和突破。

    • Nginx空字节漏洞 xxx.jpg%00.php 这样的文件名会被解析为php代码运行

    • Apache的解析漏洞,上传如a.php.rar a.php.gif 类型的文件名,可以避免对于php文件的过滤机制,但是由于apache在解析文件名的时候是N从右向左读,如果遇到不能A识别的扩展名则跳过,rar等扩展名是apache不能识别的,因此就会直接将类型识别为php,从而达到了注入php代码的目的

    检查HTTP Header中的Content-Type(很不安全),HTTP协议规定了上传资源的时候在Header中加上一项文件的MIMETYPE,来识别文件类型,这个动作是由浏览器完成的
    MIMETYPE

    可以通过抓包的方式进行中间人攻击(BP)

    ============================================
    找到了一位师傅的Writup
    文件上传进阶

    利用最新Apache解析漏洞(CVE-2017-15715)绕过上传黑名单

  • 相关阅读:
    iOS --- Touch ID指纹解锁
    Android手势滑动Tab
    Android:自定义Dialog
    Android:视频(VideoView/MediaPlayer)
    Android用户界面开发:Fragment
    Android用户界面开发:TabHost
    Android:Animation
    WallPaper
    linux网络设备驱动
    Android通讯:短信
  • 原文地址:https://www.cnblogs.com/AmosAlbert/p/13747406.html
Copyright © 2020-2023  润新知