gpt4 book ai didi

c# - SQL注入(inject)漏洞

转载 作者:行者123 更新时间:2023-11-30 13:27:53 27 4
gpt4 key购买 nike

我们有一个 ASP.NET/C# 网站。我们的开发人员在亚洲离岸,我刚刚发现他们一直在网站前端放置原始 SQL。

我担心我们现在容易受到 SQL 注入(inject)攻击。有谁知道我如何检测网站上的漏洞以及关闭它们大门的最佳方法是什么?

最佳答案

尝试从前端检测漏洞可能会有所帮助,但实际上您应该查看代码,尤其是与 DbCommand、SqlCommand 等相关的所有代码。关键点,因为您清楚地知道,永远不会将用户输入连接到查询中,而是对其进行参数化。有可用的好工具可以使这种参数化变得容易——或者至少比手动更容易。例如,如果您有:

using(var cmd = conn.CreateCommand()) {
cmd.CommandText = "delete from Orders where id = " + id;
cmd.ExecuteNonQuery();
}

然后像 dapper-dot-net 这样的工具将允许你做这样的事情:

conn.Execute("delete from Orders where id = @id", new {id});

代码较少,主要是复制粘贴,但完全注入(inject)安全并允许查询计划重用。

关于c# - SQL注入(inject)漏洞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8533046/

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