【问题标题】:Why does Wordpress not permit svg image files by default?为什么默认情况下 Wordpress 不允许 svg 图像文件?
【发布时间】:2015-06-19 10:44:03
【问题描述】:

为什么我默认无法将 SVG 图片文件上传到 Wordpress(4.2.2)?当您尝试时,您会收到消息:

抱歉,出于安全原因,不允许使用此文件类型。

我知道这个问题已经存在一段时间了,我过去使用过这个解决方案,来自https://css-tricks.com/snippets/wordpress/allow-svg-through-wordpress-media-uploader/,:

function cc_mime_types($mimes) {
  $mimes['svg'] = 'image/svg+xml';
  return $mimes;
}
add_filter('upload_mimes', 'cc_mime_types');

但是,允许这种行为有什么安全隐患?为什么默认禁用它?

【问题讨论】:

    标签: wordpress security svg


    【解决方案1】:

    SVG 文件相当丰富,因为它们包含 XML 甚至 JavaScript。因此,这些文件的处理是riskier,而不是处理更简单的图像格式。

    【讨论】:

    • 谢谢尼尔。那是我的预感。我希望通过可以应用于 Wordpress 的示例获得更具体的答案。我接受该链接突出显示了一些可能适用于 Wordpress 的潜在漏洞,但 IMO 并没有很好地解释它们,需要更多调查才能理解。因此,虽然您的回答显然是正确且有帮助的,但我想更多地了解 SVG 漏洞利用如何造成破坏。我想有人可以写一些恶意和递归的东西并在 SVG 中弹出一些 javascript?但是如何做到这一点呢?
    【解决方案2】:

    SVG 图像类型未在 wordpress 中显示

    function my_media_types($media_types){
        $media_types['svg'] = 'image/svg+xml'; 
        $media_types['psd'] = 'image/vnd.adobe.photoshop'; 
        return $media_types;
    }
    add_filter('upload_mimes', 'my_media_types', 1, 1);
    

    默认 wordpress 不支持 svg,因为当您可以设置 .svg 图像时,svg 转换为 xml 文件,而不是出于安全原因,wordpress 不允许默认 svg 或站点被 xml 文件攻击,因为 xml 显示所有数据

    【讨论】:

    • 这个答案完全看不懂。
    猜你喜欢
    • 2010-12-10
    • 2021-12-11
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多