首页
社区
课程
招聘
[求助]在上传文件后缀名加上::$DATA绕过检测,这个::$DATA是什么东西啊?
发表于: 2018-8-7 17:16 3058

[求助]在上传文件后缀名加上::$DATA绕过检测,这个::$DATA是什么东西啊?

2018-8-7 17:16
3058

最近在学习文件上传漏洞的时候,练习upload-labs通关挑战,pass-08看源码没有对::$DATA进行处理,


看网上的通过手册,虽然知道了怎么绕过,

但是这个::$DATA到底是啥?是windows系统下的什么东东嘛?


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 38
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2


在测试中我们发现,如果上传的文件名字为:test.php::$DATA,会在服务器上生成一个test.php的文件,其中内容和所上传文件内容相同,并被解析。假设我们需要上传的文件内容为:<?php phpinfo();?>下面是上传是会出现的现象:
上传的文件名  服务器表面现象    生成的文件内容
Test.php:a.jpg     生成Test.php  空
Test.php::$DATA  生成test.php  <?php phpinfo();?>
Test.php::$INDEX_ALLOCATION  生成test.php文件夹  
Test.php::$DATA\0.jpg  生成0.jpg  <?php phpinfo();?>
Test.php::$DATA\aaa.jpg  生成aaa.jpg  <?php phpinfo();?>

  PS: 上传test.php:a.jpg的时候其实是在服务器上正常生成了一个数据流文件,可以通过notepad test.php:a.jpg查看内容,而test.php为空也是正常的。
  根据第二个现象,我们可以bypass一些黑名单验证。
  后面我加\0测试的时候是想截断后面的东西,但是发现windows会无视”/””\”这两个符号前面的东西,只识别这俩符号后的字符串。(由于windows把\ /当成了目录,而上传只认识文件名所导致的)
最后于 2018-8-9 15:15 被itwangyuan编辑 ,原因:
2018-8-9 15:13
0
雪    币: 36
活跃值: (74)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
只能是Windows服务器吗?
2018-8-22 14:52
0
游客
登录 | 注册 方可回帖
返回
//