可以安全地使用dompdf + file_get_contents吗?

时间:2012-03-06 09:17:10

标签: php file-get-contents dompdf

我正在使用DOMPDF让网络应用的用户根据他们完全控制的HTML模板创建PDF发票。

我们已在服务器上禁用了file_get_contents(),但如果我们愿意,可以启用它。

我的问题是,是否可以安全地使用file_get_contents()来允许使用DOMPDF进行渲染(以及远程或本地?图像加载)?

这里有哪些安全隐患?

1 个答案:

答案 0 :(得分:1)

这里确实没有足够的信息来回答确定启用file_get_contents()在您的系统上是否安全。为此,我们必须知道系统上有哪些其他PHP应用程序和/或该函数是否在其他任何地方以及以何种方式使用。

话虽如此,如果您只考虑DOMPDF本身如何使用file_get_contents(),您无需担心。 DOMPDF使用该函数来提取任何外部引用文件(即css或图像)的内容。 DOMPDF明确表示它如何处理任何内容,因此用户不应仅仅因为内容来自HTML文档而造成任何额外伤害。

file_get_contents()中缺少漏洞我不相信启用该函数会突然使DOMPDF不安全。典型的担忧是该功能的使用方式可能使其易受恶意活动(如信息泄露攻击)的攻击。这是DOMPDF过去容易受到攻击的问题,从0.5.2开始就已经解决了(只要您安全配置了......例如,不要将DOMPDF_CHROOT设置为/)。