首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何利用逃逸来防止XSS攻击?

如何利用逃逸来防止XSS攻击?
EN

Stack Overflow用户
提问于 2010-01-29 03:33:02
回答 2查看 19.3K关注 0票数 6

为了防止XSS攻击,已启用输出转义;

上面是塞福尼写的,但我不明白。

EN

回答 2

Stack Overflow用户

发布于 2010-01-29 03:42:56

XSS是“跨站点脚本”的缩写。跨站点脚本攻击发生在您设法将脚本(通常为javascript)偷偷插入到其他人的网站上,在那里它可以恶意运行。

当用户输入到网站时,XSS是可能的。例如,如果我正在填写一个web表单,它问我我的名字,我可以输入My name is <script src="http://bad.domain/evilscript.js"></script>。如果我提交表单,然后在下一页它要求我确认我的详细信息并重新输出我输入的内容,我输入的讨厌的HTML标记将被呈现,脚本将被下载并由浏览器运行。

为了防止这种情况,您需要转义用户输入。转义意味着转换(或标记)数据的关键字符,以防止在危险的上下文中对其进行解释。对于HTML,您需要转换<>字符(以及其他字符),以防止任何恶意的HTML呈现。要对这些字符进行转义,需要将它们转换为实体等效的&lt;&gt; (请参阅htmlspecialchars()函数),浏览器不会将它们解释为HTML。

Symfony试图告诉您的是,它有能力为您的输出自动执行此操作,并且启用了该功能。

票数 13
EN

Stack Overflow用户

发布于 2010-01-29 03:39:10

XSS,或跨站点脚本是指由您的服务器提供给其他人的javascript。例如,如果您可以从google.com获得随机的javascript,那么您就可以让该javascript向您发送谷歌所知道的关于它所服务对象的所有信息。

避免来自用户(而不是来自服务器/内容作者)的数据有尖括号和其他类似HTML的东西转义,这样最终用户就不会执行它。

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

https://stackoverflow.com/questions/2159724

复制
相关文章

相似问题

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