gpt4 book ai didi

asp-classic - 我如何知道/检查我的经典 ASP 网站是否受到 SQL 注入(inject)的保护?

转载 作者:行者123 更新时间:2023-12-02 22:20:02 25 4
gpt4 key购买 nike

我得到一个使用经典 ASP 技术进行维护的网站。现在,我的客户问这个网站是否可以防止 SQL 注入(inject)。

我已经尝试使用 Microsoft Source Code Analyzer for SQL Injection,但在测试后我没有收到任何警告。

是否有任何其他方法可以检查/验证这些经典的 ASP 源代码是否免受 SQL 注入(inject)攻击?

请指教!谢谢

最佳答案

没有一种方法可以知道。您可以发布一些代码并查看它的外观。

关键是不要使用来自外部的污染数据构建 SQL 语句。

如果你构建这样的语句

sql = "select * from whatever where id = " + id_parameter

那么您正在使用来自外部世界的数据构建 SQL 语句,这是危险的。

您必须使用参数化查询,如下所示:

objCmd.CommandType = adCmdText;
objCmd.CommandText = "UPDATE members SET photo = ? WHERE memberID = ?";
objCmd.Parameters.Append(
objCmd.CreateParameter("filename", adVarChar, adParamInput, 510, fileName));
objCmd.Parameters.Append(
objCmd.CreateParameter("memberID", adInteger, adParamInput, 4, memberid ));
objCmd.Execute(adExecuteNoRecords);

请注意,objCmd.CommandText 不使用来自外部的任何数据。外部数据通过 CreateParameter 调用汇集。

关于asp-classic - 我如何知道/检查我的经典 ASP 网站是否受到 SQL 注入(inject)的保护?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13852375/

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