【发布时间】:2016-09-29 19:34:39
【问题描述】:
大家好,我有一个问题,在将数据插入 SQL 以防止 XSS 时,我可以使用什么东西吗?而不是在阅读时。
例如,我的 sql 中有相当多的输出是用户生成的,是否可以在输入 SQL 时使其安全,或者我必须在它离开 SQL 时使其安全?
TL:DR 在将数据插入 SQL 时,我可以使用 htmlspecialchars 之类的东西来防止 XSS,这会是一种很好的保护吗?
【问题讨论】:
-
最好在渲染时转义它们,而不是在存储时。这样做的最好理由是,将来你想要输出的格式可能不是 HTML,如果它已经转义为 HTML,你以后会遇到问题。所以简而言之,是的,你必须在它离开 SQL 之后让它安全。