极客大挑战-2019-Upload
[极客大挑战 2019]Upload
1.题目:上传绕过
2.过程:
感觉好多好多知识,自己也就学了一点点……
按照以前的经验,流程一般是新建文本,写入一句话,上传改MIME中Content-Type为image/jpeg,文件后缀改PHP、phtml、php5……
这次好像不行,还会检查文件头……
以16进制打开,可以看到前几位的文件头表示,可以此来判断文件类型。
加入了GIF89a的文件头:
除此之外还会检查内容中的<?类似的敏感内容
这时需要更换HTML中的php标记:
①
这是PHP官方推荐的写法,也是我们主要采用的写法!这种标签可以插入到HTML文档的任意位置;
>>>注:如果页面中,只有PHP语言,推荐省略结束表示’?>’。
原因:如果包含结束符号,在导入PHP文件时,可能会将文件最后的多余换行导入进来。
②<script language=”php”></script>
长标记写法。这种写法,总是可以使用,但是我们不推荐。
③ ?>
短标记风格。默认不开启,需要修改php.ini文件中”short_open_tag = On”打开。
但是,由于和XML中的标记冲突,不推荐使用。
④<% %>
ASA风格。默认不开启,需要修改php.ini文件中”asp_tags = On”打开。但是,由于和ASP,JSP中的标记冲突,不推荐使用。
1 | 所以图片内容为: |
各类一句话:
https://tieba.baidu.com/p/952053373?red_tag=0840634974
https://www.zhangshengrong.com/p/2Y1kAYnNZe/
……
上传后,文件被保存在:/upload里
再用蚁剑连接就行了……
极客大挑战-2019-Upload