gpt4 book ai didi

php - 我还能做些什么来防止 XSS 注入(inject)和 SQL 注入(inject)?

转载 作者:太空宇宙 更新时间:2023-11-03 11:18:08 26 4
gpt4 key购买 nike

如果我的网站上线(不要认为它会,目前它只是一个学习练习)。

我一直在使用 mysql_real_escape_string();来自 POST、SERVER 和 GET 的数据。另外,我一直在使用 intval();在只能是数字的字符串上。

我认为这可以避免sql 注入(inject)?正确的?我可以做更多吗?

但是,我不确定它如何提供(如果它提供任何保护)免受 XSS 注入(inject)

如能提供更多关于如何对抗这两种形式的攻击的信息,我们将不胜感激。

最佳答案

I think this covers me from sql injection? Correct?

没有。它会使您的数据变得一团糟。

Can i do more?

是的。您可以保护您的代码免受 SQL 注入(inject)。
这是 a brief explanation I've made already
只有我要补充一点,你不应该破坏你的源数据数组。
POST 数组与 SQL 无关。数据可能进入电子邮件、HTML 表单、文件、在线服务等。为什么要用 SQL 保护来处理它们?
另一方面,您可能不是从 POST 中获取数据,而是从文件、在线服务或其他查询中获取数据。
因此,您必须保护的不是源数组,而是进入查询的实际数据

说到XSS,又没有简单的通用规则。
但一般来说,你必须使用 htmlspecialchars($data,ENT_QUOTES);对于您输出为文本的每个不受信任的数据,以及在某些特殊情况下的一些其他类型的验证,例如文件名

关于php - 我还能做些什么来防止 XSS 注入(inject)和 SQL 注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3486740/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com