我正在对一个系统进行审计,开发人员坚持认为这是一个sql注入证明.这是通过在登录表单中删除单引号来实现的 – 但后面的代码没有参数化;它仍然使用文字sql,如下所示:
username = username.Replace("'",""); var sql = "select * from user where username = '" + username + "'";
这真的很安全吗?是否有另一种插入单引号的方法,可能是使用转义字符?正在使用的DB是Oracle 10g.
解决方法
看看这里的测试指南:
http://www.owasp.org/index.php/Main_Page这应该会给你更多狡猾的测试场景,或许足以促使重新评估sql编码策略:-)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。