分享好友 最新动态首页 最新动态分类 切换频道
简单总结文件上传漏洞
2024-12-28 22:24

无图言diao系列;;
排版样式我看着还行
能看完大概会有用;
代码基本能直接用(大概;
有错误恳请指出欢迎发邮件与我交流;
参考了网上已有的博客,侵删;

用户突破服务端限制向服务器上传了未经允许的文件,可能是恶意代码或是恶意程序。

但是存在问题,单一的文件上传漏洞并没有直接造成服务器权限的丢失。如果服务器web容器无法解析上传的恶意代码,上传的文件将毫无意义,就相当于在硬盘上有一个病毒文件,但如果我们永远也不去执行它,那他就只是一段存在硬盘上的01而已

文件上传可能存在的安全问题:

  1. 上传文件为 Web 脚本,服务器的 Web 容器解释并执行了该脚本,导致代码执行——webshell;
  2. 上传文件是 Flash 的策略文件 crossdomain.xml,攻击者可以控制 Flash 在该域下的行为;
  3. 上传文件是病毒、木马文件,攻击者用以诱骗用户或者管理员下载执行;
  4. 上传文件是钓鱼图片或包含了脚本的图片,在某些版本的浏览器中被作为脚本执行,进而被用于欺诈。

webshell 形成的条件:

  1. 上传的文件位于 Web 容器能够覆盖的目录,从而能够被 Web 容器解释执行;
  2. 用户能够从 Web 上访问这个文件,从而触发 Web 容器解释执行上传的脚本;




针对以上js验证代码,简单两种绕过方式:

  • 使用浏览器firebug插件
    找到并删除调用js脚本的HTML事件,则不会调用js脚本进行验证,直接上传文件
  • 使用中间代理burp suite
    拦截并修改HTTP数据包中的数据,同时要注意HTTP请求头中Content-Length,应该与实体正文长度一致,否则可能出现上传失败
  • 黑白名单验证:

(1)黑名单验证


  1. 存在被忽略的危险扩展名,例如
  2. 没有对文件名进行大小写转换操作,使用大写后缀名将正常上传并被解析,例如
  3. 能被解析的文件扩展名列表:
  4. 在win下,如果文件名以结尾或者以空格结尾,系统将自动去除,导致绕过验证并在服务器端写程序时以正常后缀名写入执行

(2)白名单验证


与黑名单相反,将验证数组换为允许上传的后缀名,进行迭代判断;若命中则允许上传,否则拒绝上传。由于一些解析漏洞的存在,例如IIS6.0中,命名上传,格式为jpg,但在服务器端解析时,将作为asp脚本解析


  • MIME验证:

mime介绍:http://www.w3school.com.cn/media/media_mimeref.asp
是可以反映出一个文件格式的因特网标准
前台应用程序将判断上传文件的MIME格式,并将其附加到HTTP请求头中,作为服务端判断检测的依据。使用中间代理工具可以修改HTTP头,将字段绕过检测。




  • 文件头绕过:

在客户端可以读取一部分文件内容,检测其文件头和文件结束符,这种方法利用的是每一个特定类型的文件都会有不太一样的开头或者标志位。可以通过比如php的exif_imagetype()函数,一个通过这种方法来过滤的示例代码如下:


此时,把脚本头部加上相应的文件幻数即可,
例如。原理是php引擎会将<? 之前的内容当作html文本,不解释而跳过之,后面的代码仍然能够得到执行

其他的文件幻数如下表:

格式 文件头 TIFF (tif) 49492A00 Windows Bitmap (bmp) 424D CAD (dwg) 41433130 Adobe Photoshop (psd) 38425053 Rich Text Format (rtf) 7B5C727466 MS Word/Excel (xls.or.doc) D0CF11E0 MS Access (mdb) 5374616E64617264204A ZIP Archive (zip) 504B0304 RAR Archive (rar) 52617221 Wave (wav) 57415645 AVI (avi) 41564920 Real Media (rm) 2E524D46 MPEG (mpg) 000001BA MPEG (mpg) 000001B3 Quicktime (mov) 6D6F6F76 Adobe Acrobat (pdf) 255044462D312E Windows Media (asf) 3026B2758E66CF11 MIDI (mid) 4D546864

  • WAF绕过

TODO


· 00截断绕过

由于在C语言中00代表字符串的结束,在一个正常的文件名末尾加上00,在组合拼接字符串的时候,就会导致截断。

有一种业务,提供上传的文件改名功能,在上传的文件符合要求存到服务器上之后,要求以post或者get方法再传输一个文件名上去,通过检测文件的文件后缀名再在后台将原本文件的后缀名和后来的文件名拼接起来形成一个新的文件名+后缀名。由于后缀名不是用户能控制的,导致上传的恶意代码无法解析

前半部分的文件上传的时候,为了符合服务端要求,不得不把php等代码文件改后缀名以便上传。但是改名功能提供了解析恶意代码的可能。


以上代码简单构建了一个改名功能。当php版本小于5.3.4magic_quotes_gpc为off时,存在00截断攻击。

当以post方法提交数据时,拦截http请求,添加一个0x00字段(可以先输入空格即0x20,再将其改为0x00)
当以get方法提交时,将0x00 url编码为%00,发送。


  • 文件内容绕过(条件竞争)

一些网站文件检测逻辑是先允许上传任意文件,然后检查文件内容 是否包含可执行脚本,如果包含则删除。这里使用sleep()函数来模拟判 断是否含有脚本所需要的时间。

绕过方法:利用检测到删除的时间差,立刻访问上传的文件,通过这个文件输出另一个php文件


访问以上php文件就会输出一个php文件,内容就是一个webshell

防止未经允许的文件上传:

  1. 不使用前端检测,只应用后端检测文件的类型
  2. 采用白名单策略和文件类型检测
  3. 及时更新web容器,防止解析漏洞绕过

如果被绕过,文件已经上传:

  1. 文件查看采用数据库获取文件名,从而在相应文件服务器读取文件
  2. 文件上传限制文件大小,个人上传数量等
  3. 更改用户上传文件的名称,更改默认的文件存储路径,以防止用户通过url直接访问到上传的文件
  4. 更改web容器覆盖的目录,禁止解析用户文件夹里的文件,防止上传的文件被执行
最新文章
聚宝盆心水资料论坛,深度探讨与百度收录优化策略,聚宝盆心水资料论坛,深度探讨与百度收录优化策略分享
聚宝盆心水资料论坛专注于深度探讨与百度收录优化策略。论坛集结行业专家、从业者,分享关于搜索引擎优化、关键词策略等实用技巧,助力网站提升在百度的排名。论坛内容涵盖从基础知识到高级技巧,为站长和SEO爱好者提供交流平台,共同探索
【 X3CAD看图王(原CAD手机看图)下载】vivo X3CAD看图王(原CAD手机看图)5.11.2免费下载
CAD看图王集快速看图绘图、三维览图、DWG测量编辑、画图制图于一身(支持浏览PDF文件),全球累计免费用户超7000万。支持AutoCAD、浩辰CAD、天正、酷家乐、BIM、SolidWorks、NX、CATIA、Inventor、SolidEdge、Pro/E、Revit、机械制造、知户
期待已久的vivo X100 Ultra,究竟藏了什么大招?
智能手机市场竞争激烈,各大品牌都在不断推陈出新,以吸引消费者的注意力。vivo作为其中的一员,其X系列一直以其创新和高性能著称。尽管vivo X100 Ultra系列的发布比预期晚,但根据市场传闻和泄露的信息,vi
《以武侠乂新手玩法技巧推荐》 武侠乂新手入门攻略 让你快速成为高手
t2627_2_2627_1:21.0t1-t0:45.0t2-t1:5.0t3-t2:0.0t4-t3:2.0t5-t4:24.0t6-t5:13.0t7-t6:3.0t8-t7:0.0t9-t8:15.0t10-t9:0.0t11-t10:32.0t12-t11:0.0t13-t12:0.0t14-t13:0.0t15-t14:1.0t16-t15:0.0t17-t16:0.0t18-t17:54.0t19-t18:12.0t20-t1
短链在线转换工具,免费短链接生成器
【爱短链】免费社群营销短链接生成器,是为社群营销人员量身定制的高效推广工具,不仅可以缩短美化推广链接,提高点击率的同时,还不易引起反感,不容易被删除,也能够在QQ、微信等生态中完美兼容,短链接生成器完全免费,大家可以点击上方
简书发帖秒收录软件【进来发文合作-排名好-来】,百度和今日头条发帖子赚钱的三种方式,你知道吗?
下一篇文章内容预览:百度发帖怎么赚钱?今日头条发帖怎么赚钱?其实网上发帖赚钱的方法无非就是三种:第一种是很多公司为了宣传自己,就把一些软文广告给广告商,广告商就会招募很多人在各个平台发帖,一般来说每篇帖子都能赚几块钱;第二
网易云基础服务(蜂巢)云主机正式上线
近日,网易云基础服务(网易蜂巢)发布最新“云主机”产品,广泛支持各类 Linux发行版及Windows操作系统。此外,云主机将与网易云现有的容器服务内网互通,不但保证了租户间的隔离,而且在数据安全的前提下,极大地提升了用户使用混合计算资
冬奥最新换牌榜排名图片,展现各国荣耀时刻,冬奥最新换牌榜排名揭晓,展现各国荣耀瞬间
摘要:根据最新发布的冬奥换牌榜排名图片,各国运动员的荣耀时刻得以展现。这张图片集中呈现了各国在冬奥赛事中的精彩表现和优异成绩,吸引了众多关注。各国运动员通过不懈的努力和拼搏,在赛场上展现出卓越的实力和风采,为世界带来了一场
WordPress 插件专栏:最新推荐十个实用小插件
WordPress 插件可以大大提升你网站的功能和用户体验,使之更完整,也能增加更多的网站流量和访问量。下面是最近我们推荐的十个非常有用的小插件:Yoast SEO 是一个被用来提高网站搜索引擎排名的插件,它可以帮助你优化你的文章,使其具有更
淘宝有哪些违规关键词?如何检测?
现如今在淘宝开店的商家是越来越多了,为了规范商家的经营行为,淘宝官方特意推出了淘宝规则。而在淘宝开店,设置关键词也是非常重要的,那么淘宝具体有哪些违规的关键词?应该如何检测?一、淘宝有哪些违规关键词?淘宝希望每一个流量都得到
相关文章
推荐文章
发表评论
0评