在没有数据库连接的情况下转义字符串
问题:
如何在不连接数据库的情况下准确转义字符串建立数据库连接?我需要此功能进行干测试,以避免 SQL 注入漏洞。
答案:
遗憾的是,在不连接到数据库的情况下安全地转义字符串是不可行的。 mysql_real_escape_string() 和准备好的语句都依赖于数据库连接来根据目标数据库的特定字符集定制转义机制。忽略此连接会使您的应用程序遭受 SQL 注入攻击,尤其是涉及多字节字符的攻击。
测试注意事项:
如果您的主要目标是测试,您可以采取到 mysql_escape_string()。虽然不能万无一失地抵御 SQL 注入攻击,但由于缺乏没有数据库连接的更安全的替代方案,它仍然是一个可行的选择。但是,强烈建议不要在生产环境中使用 mysql_escape_string()。以上是在没有数据库连接的情况下如何安全地转义字符串以进行干测试?的详细内容。更多信息请关注PHP中文网其他相关文章!