我的客户有一个庞大的遗留代码库,其中包含各种基于Java en JSP的应用程序。
大多数查询都是使用自制的“orm”系统完成的。一些应用程序使用普通老式JDBC。一些应用程序是基于Hibernate的(是的,带加号的HQL构建也是一个潜在的问题)。一些较旧的应用程序完全是用JSP编写的。
我手动发现了几个SQL注入错误。但我真的可以使用某种工具来搜索潜在的弱点。
有什么想法吗?
发布于 2008-09-22 18:14:39
我推荐FindBugs (还有一个eclipse插件),它可以追踪这些问题和更多问题。
我们在工作中使用它,它速度很快,而且它物有所值(免费)。在它的帮助下,我们解决了一些常见的问题。
发布于 2008-09-22 18:08:03
我会编写一些搜索,或者加载一个与PreparedStatement相反的使用java.sql.Statement的集成开发环境。
发布于 2008-09-22 20:52:32
你的URL空间有多大?如果可能,最好尝试通过HTTP GET和POST请求进行SQL注入。通过源代码/字节码检查可以发现一些问题,但要确定应用程序将接受哪种类型的潜在恶意输入,唯一的方法是使用HTTP请求。
如果您的URL集很小,CAL9000是一个很好的SQL注入/跨站脚本测试工具。
对于检测处理不当的恶意输入,认真对待的公司将聘请第三方进行渗透测试。White Hat Security是我过去合作过的一个供应商,我可以推荐它。我们将其用于$100MM+电子商务网站。(我与白帽没有任何关系,如果您成为他们的客户,我也不会以任何方式受益。)
抛开代码的所有测试/加固不谈,在适当的地方安装一个像mod_security这样的超文本传输协议防火墙是一个非常好的主意。
https://stackoverflow.com/questions/116415
复制相似问题