我的任务是构建一个字体预览系统.
用户提供一些文本,文本使用用户请求的字体呈现为图像.图像传送给用户.
对于实际渲染有任何安全隐患吗?我该如何验证传入的文本?我需要吗?我应该删除标签吗?
忽略存储和检索图像的问题,我理解了很多.如果有任何针对图像渲染文本的攻击,我只是好奇.
编辑:图片将是PNG的
一般来说:没有.你只是在画布上创建像素,没有那些像素可以利用的攻击向量.(假设您没有奇怪的字体渲染器,它试图将文本解释为HTML,SQL或其他一些"活动"语言.)
话虽如此,字体解析器是非常复杂的东西,已知偶尔会包含可以被恶意字体文件利用的错误.因此,如果您让用户上传一个破坏的恶意字体文件,该文件会在您的字体呈现库中触发可利用的错误,那么您可能会遇到麻烦.仅通过让用户从您选择和安装的字体列表中进行选择就可以轻松避免这种情况.