空格绕过,点号绕过

Pass-07
直接上传肯定是失败的

把文件名1.php改成1.php.或1.php_(下划线为空格),这种命名方式在windows系统里是不被允许的,所以需要在burp之类里进行修改,然后绕过验证后,会被windows系统自动去掉后面的点和空格,但要注意Unix/Linux系统没有这个特性。

在php后加一个空格
在这里插入图片描述

Pass-08

在php后加一个点
在这里插入图片描述

Htaccess绕过

htaccess文件是一个用于Apache Web服务器的配置文件。它允许在不修改主服务器配置文件的情况下,对单个目录(及其子目录)进行配置。这种方式使得网站管理员可以对特定目录应用特定的设置,例如URL重写、访问控制、MIME类型等。

htaccess的主要功能包括:

  1. 重定向和URL重写:可以将旧的URL重定向到新的URL,或者实现更友好的URL结构。
  2. 访问控制:可以限制特定IP地址或用户代理访问网站,或者要求用户提供用户名和密码才能访问某些目录。
  3. 自定义错误页面:可以为特定的HTTP错误代码(如404页面未找到)设置自定义错误页面。
  4. MIME类型:可以为特定文件扩展名定义MIME类型,以便正确地传输文件内容。

简单理解就是我们自己更改了对方服务器的一个“规定“这里拿来进行绕过上传的防御规则,如下图,第三步还有第四步的顺序可以更换

htaccess1:

1
2
3
4
5
#define width 1337
#define height 1337
<FilesMatch "123pinfo.jpg">
SetHandler application/x-httpd-php
</FilesMatch>
  1. 这里的htaccess文件的意思就是将123 pinfo.jpg按php来进行解析
  2. 构造好.htaccess文件后,将其改名为.htaccess。
  3. 先上传123 pinfo.jpg文件
  4. 再上传.htaccess文件
  5. 再去访问123 pinfo.jpg即可得到phpinfo页面

Pass-04

先上传一个基础的图片马

测试访问没问题
再上传一个.htaccess文件,抓包改一下Content-Type
在这里插入图片描述
由于是服务器内部配置文件,直接访问肯定是403Forbidden
在这里插入图片描述
神奇的事情发生了,再去访问我们的图片马,已经按照php解析了

最后我们蚁剑一连接即可