第14关(图片马+文件包含漏洞)
查看源码发现,这个代码只对上传的文件的头两个字节进行检验,检查是否是jpg、gif或者是png图片
下面是它们的十六进制文件头格式的前两位:
JPEG (jpg),文件头:FFD8
GIF (gif),文件头:4749
png文件头:8950
我们这里需要用到010editor这个软件进行编译
首先我们创建一个1.php文件,在里面写入我们的一句话木马,记住要在代码的前面敲两个空格或者其他两个符号都可以,然后使用010editor打开这个文件,将两个空格处变成jpg的文件头(gif和png的也可以啊,不一定是jpg的),如果具体不知道怎么操作,可以看这位大佬的upload靶场第十四关 字节标识绕过_upload第十四关-CSDN博客,我也是根据这位大佬的思路才做出了的
加20 20改为FF D8,并保持
这个我们就能拿去上传了
因为这个题目说这关有文件包含漏洞,那我们用蚁剑连接测试一下,看有没有上传成功
右键,点击新页打开图片
将上面地址复制,然后使用蚁剑连接(记住勾选base64,否则会出现警告为空的提示)
点击测试链接,后会出现成功字样,就说明上传成功了
第15关(文件包含+图片马)
这关我们试试第14关的方法,看能不能成功
发现1.php不能上传,那我们改一下后缀名试试,发现还是不行
只能想想其他办法了
我们使用图片马进行绕过,首先创建一个2.jpg的图片和1.php的木马文件,在1.php中我们写入一句话木马,然后在cmd中使用copy xx.jpg/b + xx.php/a xxx.jpg (copy 2.jpg/b + 1.php/a test.jpg)
这个命令必须把xx.jpg放在前面,否则后面生成的xxx.jpg文件还是会被代码识别到,从而过滤
我们把生成的文件上传,然后和第14关相同的步骤使用蚁剑进行连接测试
然后进行添加,我们就能发现我们进到了主机的系统中