C# 如何处理SQL注入响应以获得最佳实践

C# 如何处理SQL注入响应以获得最佳实践,c#,asp.net,security,sql-injection,C#,Asp.net,Security,Sql Injection,我们正在使用web安全扫描程序,它发现我的一个网页有一个绑定SQLi。扫描程序将参数“news.aspx?id=123”修改为“news.aspx?i=123”或1=1--”,web服务器对当前id=1信息的新闻信息做出响应 经开发团队调查,他们表示没有注入,无法访问已被.NET内置API SQL参数阻塞的数据库,后端程序会自动将id=1信息的数据返回客户端 我可以知道它是否可以被识别为假阳性,或者重定向到一般错误页面更好吗?或者它对于当前阶段来说已经足够并且可以接受了?只要底层应用程序代码参数

我们正在使用web安全扫描程序,它发现我的一个网页有一个绑定SQLi。扫描程序将参数“news.aspx?id=123”修改为“news.aspx?i=123”或1=1--”,web服务器对当前id=1信息的新闻信息做出响应

经开发团队调查,他们表示没有注入,无法访问已被.NET内置API SQL参数阻塞的数据库,后端程序会自动将id=1信息的数据返回客户端


我可以知道它是否可以被识别为假阳性,或者重定向到一般错误页面更好吗?或者它对于当前阶段来说已经足够并且可以接受了?

只要底层应用程序代码参数化了发送到SQL的值(正如开发人员所声称的),那么您就不必担心此类警告。

只要底层应用程序代码参数化了发送到SQL的值(正如开发人员所声称的),那么你就不必担心这些警告了

后端程序将自动向客户端返回id=1信息的数据

在我看来,这对于后端来说是一个蹩脚的行为。我认为页面应该检测错误并将用户重定向到错误页面。然而,根据这种描述,这不是一种有效的注入,因此,如果企业能够接受这种行为,那么这是一种假阳性

另外,虽然这不是SQL注入,但如果可以让页面显示id=1的数据,并且页面用户不应该访问该特定记录,则可能是一个信息泄漏错误

后端程序将自动向客户端返回id=1信息的数据

在我看来,这对于后端来说是一个蹩脚的行为。我认为页面应该检测错误并将用户重定向到错误页面。然而,根据这种描述,这不是一种有效的注入,因此,如果企业能够接受这种行为,那么这是一种假阳性


注意:虽然这不是SQL注入,但如果可以让页面显示id=1的数据,并且页面用户不应该访问该特定记录,则可能是一个信息泄露错误。

如果您知道所查询表的结构,则可能重复,也许您可以运行一个快速测试如果您知道正在查询的表的结构,也许您可以运行一个快速测试