gpt4 book ai didi

java - 尽管使用准备好的语句,还是进行 SQL 盲注

转载 作者:行者123 更新时间:2023-12-01 11:19:44 25 4
gpt4 key购买 nike

我们最近对我们的应用程序进行了安全扫描,我们发现了一些盲目的 SQL 注入(inject)问题。但是我发现即使在使用准备好的语句后我们也会遇到这个问题。

单独使用prepared statements并不能解决bind sql注入(inject)问题?在准备好的语句中进行字符串连接会破坏所有优势吗?

private static final String selectStaement=" select email,phone from tuser where name=? ";
public void execute(String name) throws SQLException {
PreparedStatement preparedStatement = theConnection.prepareStatement(selectStaement + " ORDER by name");

preparedStatement.setString(1, name);
rs = preparedStatement.executeQuery();

}

有人可以让我知道这段代码有什么问题以及如何解决这个问题吗?数据验证是唯一的方法吗?如果我想允许所有字符怎么办?

最佳答案

从安全角度来看,您的代码没有问题,这是扫描仪报告的误报(无论是哪一个)。

您可能应该配置扫描仪以忽略这些类型的警告。

关于java - 尽管使用准备好的语句,还是进行 SQL 盲注,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31390405/

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