upload-labs通关(第16关-第17关)

第16关(文件包含+图片马)

这关和第15关没有什么不同,做法是一样,但这关使用exif_imagetype()检查是否为图片文件,所以我们需要开启开启php_exif扩展

这里我先说明一下php的exif_imagetype()函数

exif_imagetype - 确定图像的类型

exif_imagetype()读取图像的第一个字节并检查其签名。

 可以使用exif_imagetype()来避免调用其他具有不受支持的文件类型的exif函数,或者与$ _SERVER ['HTTP_ACCEPT']一起检查查看器是否能够在浏览器中查看特定图像。

开启php_exif扩展的方法

首先我们先在phpstudy上开启这个拓展,按照以下方法就可以找到

同时我们还需要修改我们使用的php版本对应的php.ini配置文件

一般按照以下路径寻找,但每个人可能不同,根据实际情况来

打开php.ini文件

1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号
2.在php.ini文件中找到;extension=php_mbstring.dll,去掉前面的分号,并将此行移动到extension=php_exif.dll之前,使之首先加载*。

3.找到[exif]段,把下面语句的分号去掉。

;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE
;exif.decode_unicode_intel = UCS-2LE
;exif.encode_jis =
;exif.decode_jis_motorola = JIS
;exif.decode_jis_intel = JIS

最后保存,再重启一下php就可以了

剩下都步骤和前面的第十五关相同,这里我就不多赘述了

使用蚁剑进行测试连接

第17关(二次渲染+图片马/条件竞争+文件包含)

二次渲染

什么是二次渲染?简单来说就是我们上传的图片后,服务器会进行二次处理(包括尺寸、格式等等)。百度百科是这样回答的:

先上传一个zzz.gif的图片马,然后再下载经过渲染过的图片马(23917.gif)

使用010editor软件进行对比两个文件(我之前已将在zzz.gif里面插入有一句话木马了)

点击23917.gif右键打开方式,选择010editor打开,打开后选择工具-比较文件

然后进行比较,我们通过观察发现不同的地方,并且我们插入的一句话,在下载的gif里面已经被打乱了,没有找到

找到两个gif相同的地方,我们把一句话复制,然后在23917.gif中插入一句话,保存,上传23917.gif文件

上传成功后,我们下载新的gif,用010打开,发现一句话已经插入进去

我们接下来就可以使用蚁剑进行连接,url的构造和前面的一样,但我这无论怎么弄都没成功连接上,看了其他大佬的wp,他们也是这样做的,能连接上,方法大概是这样了,如果有连接上的告诉我一声(对了,这里如果使用其他格式的图片会比较难弄,所以我就没弄)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值