gpt4 book ai didi

php - mysql_real_escape_string ALONE可以防止各种sql注入(inject)吗?

转载 作者:IT老高 更新时间:2023-10-29 00:21:17 26 4
gpt4 key购买 nike

Possible Duplicate:
SQL injection that gets around mysql_real_escape_string()

我还没有看到任何有值(value)或未过时的信息。所以,有这个问题:Does mysql_real_escape_string() FULLY protect against SQL injection?然而它已经过时了(它从 09 年开始),所以从 12 年的 php 5.3 和 mysql 5.5 开始,它是否完全保护?

最佳答案

mysql_real_escape_string ALONE 可以防止什么。

此外,此函数与注入(inject)完全无关。

每当你需要转义时,尽管有“安全性”,你还是需要它,但这只是因为它是 SQL 语法所必需的。而在你不需要它的地方,转义甚至对你没有帮助一点点。

这个函数的用法很简单:当你必须在查询中使用带引号的字符串时,你必须转义它的内容。不是因为一些想象中的“恶意用户”,而仅仅是为了转义这些用于分隔字符串的引号。这是非常简单的规则,但 PHP 人员却非常错误。

这只是语法相关的功能,与安全无关。

在安全问题上依赖此功能,相信它会“保护您的数据库免受恶意用户的攻击”导致您进行注入(inject)。

一个你可以自己得出的结论:
不,这个功能还不够

准备好的陈述也不是 Elixir 。它只在一半可能的情况下覆盖你的背部。查看important addition I made to the famous question详情

关于php - mysql_real_escape_string ALONE可以防止各种sql注入(inject)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9814642/

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