我的应用程序有很多使用Statement编写的JDBC查询,因此容易受到SQL注入的攻击.不幸的是,这个应用程序是在大约10年前开发的,可能开发人员不知道Prepared语句.
我知道解决这个问题的最好方法是使用PreparedStatement,但在整个应用程序中转换它是非常繁琐的.此外,为SQL注入编写任何类型的Patten匹配可能非常棘手,因为Select,insert,union等关键字都是英文单词,也可能出现在用户键入的文本字段中.
有没有更聪明的方法来避免SQL注入而不使用Prepared语句.如果这是一个重复的问题,请给我一个问题的链接,它有一个很好的答案.谢谢您的帮助.