我同意正确的输入验证是防止 SQL 注入(inject)的唯一“万无一失”的方法,但是它需要修改现有应用程序中的大量代码,可能需要重新构 build 计不佳的应用程序。
学术界对防止 SQL 注入(inject)的自动化机制有很多兴趣(这里不会继续列出它们,我已经进行了文献调查,至少看到了 20 个),但我还没有看到任何实际实现的东西.
有谁知道在学术环境之外实际使用的任何框架,无论是基于签名的、基于异常的还是其他的?
编辑 : 我正在寻找 的东西不 修改代码库。
最佳答案
我工作的公司使用Barracuda Web Application Firewall因为你在说什么。据我所见,它运作良好。基本上,如果它检测到可疑输入,它会将用户重定向到我们选择的页面。这允许您在 Internet 和应用程序之间放置一个层,并且不需要您更改任何代码。
也就是说,不保护您的应用程序是个坏主意。
关于security - SQL 注入(inject)的非编程预防,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976581/