我正在研究一些COBOL代码中可能的SQL注入错误.该代码使用宿主变量将语句提交到DB2数据库.例如
EXEC SQL INSERT INTO TBL (a, b, c) VALUES (:x, :y, :z) END-EXEC
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我这个方法是否容易受到SQLi攻击,或者COBOL/DB2解析主机变量的方式意味着它是不可能执行的?
我读到的每一件事都表明有更好的方法来防范SQLi,但IBM网站确实提到使用主机变量,但没有解释它是否会完全减轻攻击.