首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用PHP防止映像中的XSS攻击

使用PHP防止映像中的XSS攻击
EN

Stack Overflow用户
提问于 2012-08-10 17:16:55
回答 2查看 2.8K关注 0票数 6

在阅读(eng).pdf之后,很明显,允许用户上传图像会打开XSS攻击的大门。

我找不到任何PHP示例,说明如何为XSS攻击筛选上传的图像。

我为CodeIgniter找到了一个,我正在使用它。它的功能是xss_clean($file, IS_IMAGE),但只有一句文档,所以我不知道它是如何工作的,在他们的论坛上有一条评论说,它有一个不合理的高错误率,所以它不能在生产中使用。

您建议在上传的图像中防止XSS攻击吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-10 17:23:58

只要您保持扩展正确(并且您的用户正在努力更新他们的浏览器),映像注入就不可能实现。

例如,如果有人将alert('xss');上传为图像,而您有<img src='that-image.png'>,则会以png的形式发出它,并且JavaScript不会执行(至少返回到IE7)。重要的是要适当地重命名图像。

如果您有php > 5.3和finfo PECL扩展名,您可以使用它获取文件的mime类型,并有一个允许类型的白名单(png、jpg、gif我可以想象)。如果您在Linux机器上,file可能也会帮助您。

票数 4
EN

Stack Overflow用户

发布于 2012-08-10 18:11:01

在CodeIgniter中有许多防止XSS的方法。您可以在获得类似于->post的值(‘data’,true)时启用它。第二个参数是XSS bool。

另外,不要使用HTML标记。使用CodeIgniter的一个,它将清洁,外观和使它更容易显示的图像。

只有我的两分钱!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11906372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档