目录
这里面有的讲的不细腻,只能记住方法就好,原理太复杂,越听越乱。
Pass-01 前端验证
在桌面创建一个.php后缀文件写入一句话木马(1,2关)
一句话木马:
<?php @eval($_POST[666]); ?>
<?php @eval($_POST[666]); ?>
上传此文件发现报错
因为是进行前端JS校验,所以我们把恶意文件改成 js 允许上传的文件后缀,如 jpg、gif、png 等,再通过抓包工具抓取 post 的数据包, 把后缀名改成可执行的脚本后缀.php。即可绕过上传 。
点击上传进行抓包
可以看到上传后没有报错,并且文件已经上传到我们目录中
复制图片地址并用工具进行连接
连接成功
Pass-02 MIME验证
我们上传.php文件发现文件类型不正确,这关是进行后端PHP校验
使用bp抓包,修改上传的PHP的content-type为image/gif
然后放行,可以看到没有报错并且我们的木马也成功上传,然后和第一关一样,复制图片地址并用工具进行连接
Pass-03 绕过黑名单上传
由于每次用工具连很麻烦,所以我们可以把一句话木马改为 <?php phpinfo(); ?>访问文件来验证能否连接
<?php phpinfo(); ?>
这关有的自己电脑环境不对做不了,我们可以去在线靶场练习
第三关在线靶场链接:
http://47.99.132.71:49153/Pass-03/index.php
右键点击 在新标签页中打开图像
Psaa-04 .htaccess 重写解析绕过上传
发现使用上面上传的php5或者其他类型的文件,都以失败告终。
但是发下有一个文件是没有过滤,也是我们上传过程中经常用到的.htaccess
这关有的自己电脑环境不对做不了,我们可以去在线靶场练习
第四关在线靶场链接:
http://47.110.150.215:8003/Pass-04/index.php
.htaccess内容:
<FilesMatch "jpg">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "jpg">
SetHandler application/x-httpd-php
</FilesMatch>
上传.htaccess文件和 .jpg文件
Pass-05 大小写绕过上传
可以通过查看源码看出这一关黑名单里没有 转换为小写,我们可以利用大小写绕过。抓包上传,把后缀名改为大写;如 PHP、 Php、 phP、pHp ;
看到我们文件确实写入了,但是如果用的是apache访问会报错
这里需要把apache切换为nginx,访问成功
Pass-06 空格绕过上传攻击
可以通过查看源码看出这一关黑名单里没有 首尾去空,我们可以利用空格绕过。抓包上传,在后缀名后添加空格;
Pass-07 点绕过上传
可以通过查看源码看出这一关黑名单里没有 删除文件名末尾的点,我们可以利用末尾加 . 绕过。抓包上传,在后缀名后添加 . ;
Pass-08 交换数据流::$DATA 绕过上传
可以通过查看源码看出这一关黑名单里没有 去除字符串::$DATA,我们可以利用交换数据流::$DATA 绕过。抓包上传,在后缀名后添加 ::$DATA ;
这访问时要把 140.php后面的 ::$DATA删掉
Pass-09 点空格点绕过
Pass-10 双写后缀名绕过上传
这里面有的讲的不细腻,只能记住方法就好,原理太复杂,越听越乱。
需要工具或者有任何问题私信我。
Meet.meet