如何在Oracle上进行SQL注入

Sha*_*ica 4 oracle sql-injection oracle10g

我正在对一个系统进行审计,开发人员坚持认为这是一个SQL注入证明.这是通过在登录表单中删除单引号来实现的 - 但后面的代码没有参数化; 它仍然使用文字SQL,如下所示:

username = username.Replace("'", "");
var sql = "select * from user where username = '" + username + "'";
Run Code Online (Sandbox Code Playgroud)

这真的很安全吗?是否有另一种插入单引号的方法,可能是使用转义字符?正在使用的DB是Oracle 10g.

Thi*_*ilo 5

也许你也可以失败,因为不使用绑定变量会对性能产生非常不利的影响.