pass-04
打开靶场
通过前面几关的上传方式,上传,发现上传不上去。但是经过测试发现可以上传.htaccess可以上传。
这里介绍一下.htaccess文件。
.htaccess 是 Apache 服务器的一个重要配置文件,能对网站目录及其子目录进行个性化设置。它支持 URL 重写功能,可将复杂、难记的 URL 转化为简洁美观的形式,有助于搜索引擎优化,提升网站在搜索结果中的排名;具备访问控制能力,既能限制特定 IP 地址或 IP 段访问网站,增强网站安全性,也能设置用户名和密码进行身份验证,保护敏感内容;还可以定制错误页面,当网站出现 404、500 等错误时,为用户展示友好提示,改善用户体验;此外,能对服务器的 MIME 类型进行设置或修改,确保服务器正确处理和传输各类文件格式,让浏览器能准确识别和显示。工作时,Apache 服务器会依据请求的文件路径,在对应目录查找.htaccess 文件,并读取其中的配置指令来处理请求。
实操
这里我们传入.htaccess文件
<FilesMatch "1.png">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch “1.png”>:
FilesMatch是 Apache 服务器配置中的一个指令,它允许你使用正则表达式来匹配文件名。
“1.png” 是这里的匹配模式,它表示精确匹配名为 1.png 的文件。这意味着接下来的配置指令将仅对这个文件生效。
SetHandler application/x-httpd-php:
SetHandler 指令用于为匹配到的文件指定处理程序。
application/x-httpd-php 是 PHP 文件的 MIME 类型,将其作为处理程序意味着当用户请求 1.png 文件时,服务器会将该文件当作 PHP 脚本进行处理,而不是作为普通的 PNG 图像文件。也就是说,服务器会尝试解析并执行 1.png 文件中的 PHP 代码,而不是直接返回图像内容。
这里传入这个.htaccess文件后再传入对应的.1png文件。
然后我们可以访问1.png文件来得到webshell。
我们传入的1.png的文件内容为为上图的内容。
图片马可以用在一句话木马里面加上GIF89a就可以了,然后把后缀名改成png或者jpg等等。
由于之前上传的.htaccess文件让php解析的时候将1.png文件解析成了php代码来运行。
然后复制图片的链接,在蚁剑上进行连接就可以了。