分享好友 最新动态首页 最新动态分类 切换频道
简单总结文件上传漏洞
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容器覆盖的目录,禁止解析用户文件夹里的文件,防止上传的文件被执行
最新文章
用AI一键生成美女写真,轻松打造梦幻女友!
步骤二:选择风格登录后,你会看到很多类型的风格选项。在这里选择你想要的美女写真风格,还可以选择相应的背景与主题,让图片更具个性化。步骤三:输入描述在工具的输入框中,详细描述你想要生成的美女形象,比如发型、服装、表情等。描述
英语的学习计划书
英语的学习计划书(15篇)  时间过得太快,让人猝不及防,我们又将迎来新的喜悦、新的收获,做好计划可是让你提高工作效率的方法喔!相信许多人会觉得计划很难写?下面是小编帮大家整理的英语的学习计划书,仅供参考,希望能够帮助到大家。
富士康科技集团重庆厂区招聘招聘
  富士康科技集团为从事电脑、通讯、消费性电子、汽车零组件、营销通路、数位内容等科技产业的全球最大专业电子制造暨服务商。2010年居《财富》全球500强第112名,现有员工100万余人。富士康科技集团提供良好的工作环境及薪
淘工厂是什么?入驻需要什么条件和流程?
  一、淘工厂是什么?  淘工厂是淘宝在2018年6月推出的一项新的计划,目的是帮助工厂把产品卖到全国各地。但是目前仅支持部分地区,包括山东、广东、河北、浙江、四川、江西等省市。  淘工厂就是淘宝为了帮助这些工厂打造属于自己的品
如何通过17.C.NOM优化策略提升网站流量:提升搜索排名与用户体验的实用技巧
在数字化时代,网站的优化与流量获取对于企业的发展至关重要。而SEO优化是其中的核心部分。在众多SEO策略中,正确理解并应用17.C.NOM这一类型的SEO优化策略,能够帮助网站提高搜索排名,吸引更多目标用户。本文将深入探讨17.C.NOM的概念、
数据结构6 - 排序算法
排序也称排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程。 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间
ssfd!你知道是什么意思吗?
不知从哪天起刷微博的时候就觉得自己变成了“古人”刷微博时不时就蹦出一两条夹杂看不懂的词句的每天都是黑人问号脸这么多的拼音缩写大家都是在上学前班吗?不慌今天团团就来好好盘点一下这些神奇词汇首先,追根溯源字母缩写文其实是起源于
内部资料和公开资料下载|词语释义解释落实
  本文将探讨内部资料和公开资料的下载方法及其相关词语释义和解释的落实。内部资料通常指对于机构内部使用的信息,而公开资料则是面向公众的信息。文章将详细说明识别、获取和使用这两类资料的途径和注意事项,同时提供针对特定术语的释
未来智能行车电脑的发展趋势是什么?
未来智能行车电脑的发展趋势主要体现在以下几个方面。 智能化方面,会集成人工智能和深度学习技术,实现驾驶行为分析、路况预测和智能驾驶辅助,让行车效率和舒适性大大提高。 集成化方面,将推动与车载娱乐系统、安全气囊控制和自动驾驶模
即时设计邀约前北京奥运会形象与景观艺术总监王敏等嘉宾 共论 AI 设计新趋势
近日,以“设计创新新生态”为主题的2023 第三届「设计寰宇」年度创意营暨北外滩国际创意节在雷士德工学院旧址圆满落幕,作为 2023 世界设计之都大会WDCC全城联动的重要环节,众多国内外知名设计大咖齐聚一堂,共同探讨设计与创新的未来趋
相关文章
推荐文章
发表评论
0评