PECL imagick 扩展是否也容易受到新的 ImageMagick 安全问题的影响?
Is the PECL imagick extension also vulnerable to the new ImageMagick security issue?
我问的是 PECL imagick extension is also vulnerable to the new very critical ImageMagick security issue (check here and here)。扩展是否也只是通过 shell 使用 ImageMagick 工具?
是的。
Imagick PECL 是 PHP 绑定到 C-API MagickWand。它不调用 shell 会话,但容易受到委托安全问题的影响——同样如此。
根据通知的建议更新policy.xml
。
编辑完成
如何更新 policy.xml
(YMMV)
在系统上找到 ImageMagick 的共享路径。
$ identify -list configure | grep SHARE
#=> SHARE_PATH /usr/share/ImageMagick-6
在上一步的目录中创建或编辑policy.xml
。
$ cd /usr/share/ImageMagick-6
$ sudo cat > policy.xml <<EOF
<policymap>
<policy domain="coder" rights="none" pattern="EPHEMERAL" />
<policy domain="coder" rights="none" pattern="HTTPS" />
<policy domain="coder" rights="none" pattern="MVG" />
<policy domain="coder" rights="none" pattern="MSL" />
<policy domain="coder" rights="none" pattern="TEXT" />
<policy domain="coder" rights="none" pattern="SHOW" />
<policy domain="coder" rights="none" pattern="WIN" />
<policy domain="coder" rights="none" pattern="PLT" />
</policymap>
EOF
使用 identify -list policy
验证政策负载。
- 重新启动网络服务以确保加载新政策。
我问的是 PECL imagick extension is also vulnerable to the new very critical ImageMagick security issue (check here and here)。扩展是否也只是通过 shell 使用 ImageMagick 工具?
是的。
Imagick PECL 是 PHP 绑定到 C-API MagickWand。它不调用 shell 会话,但容易受到委托安全问题的影响——同样如此。
根据通知的建议更新policy.xml
。
编辑完成
如何更新 policy.xml
(YMMV)
在系统上找到 ImageMagick 的共享路径。
$ identify -list configure | grep SHARE #=> SHARE_PATH /usr/share/ImageMagick-6
在上一步的目录中创建或编辑
policy.xml
。$ cd /usr/share/ImageMagick-6 $ sudo cat > policy.xml <<EOF <policymap> <policy domain="coder" rights="none" pattern="EPHEMERAL" /> <policy domain="coder" rights="none" pattern="HTTPS" /> <policy domain="coder" rights="none" pattern="MVG" /> <policy domain="coder" rights="none" pattern="MSL" /> <policy domain="coder" rights="none" pattern="TEXT" /> <policy domain="coder" rights="none" pattern="SHOW" /> <policy domain="coder" rights="none" pattern="WIN" /> <policy domain="coder" rights="none" pattern="PLT" /> </policymap> EOF
使用
identify -list policy
验证政策负载。- 重新启动网络服务以确保加载新政策。