我应该使用 php 的 htmentities() 和 pdo 来过滤输入和输出转义吗?
我应该使用 php 的 htmentities() 和 pdo 来过滤输入和输出转义,以防止 xss 攻击吗?
should i use php's htmentities() with pdo to filter input and output escapeing, to protect from xss attack ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在 HTML 上下文中输出用户提供的内容时(即在您的网站上显示该内容时),请使用
htmlentities
(或最好是htmlspecialchars
)。不要对进入数据库的 HTML 值进行转义,因为那里不存在 XSS 漏洞,并且您通常希望将原始数据存储在数据库中,并在必要时对其进行转义。Use
htmlentities
(or preferablyhtmlspecialchars
) when outputting user supplied content in an HTML context (i.e. when displaying it on your website). Don't HTML escape values that go into the database, since there's no XSS vulnerability there and you usually want to store the raw data in the database and escape it later as necessary.在将输入保存到数据库之前,您应该使用 htmlentities 或 htmlspecialchars,因为文本仅保存到数据库一次 [直到前端有任何编辑选项] 但会被查看多次,因此您可以节省 CPU :)
You should use htmlentities or htmlspecialchars before saving the input to the database, cause a text is saved to a database only once [until there is any edit option on the front end] but is viewed multiple times, so you save your CPU :)