2012-07-06 108 views
0

我参加了一个名为“安全代码”级,并在我们的下一个任务,我们应该做的一些C文件和JavaEE的Web项目的静态/动态分析。静态/动态源代码分析

我签出“源监视器”,并运行它的C文件,但(除非我没有得到如何使用它!)它似乎并没有做什么我要找的。

考虑到这个话题,我很想知道是否有用于检测“不安全”代码的工具,即可能通过缓冲区溢出,SQL注入,XSS进行攻击的代码......所以我希望它指出哪些功能应该是“升级”(例如与fgets而不是得到,或一个PreparedStatement来代替普通的SQL语句)

注:我更喜欢开源软件,有可能为Windows(我有Ubuntu的一个虚拟机,但我不太擅长它......我通常花费更多时间来找出如何配置工具而不是运行它们)。

谢谢您的建议!

+0

[制动手(http://brakemanscanner.org/)这是否为Rails应用程序,但一些预警类型是相当普遍的。 – sczizzo 2012-07-06 18:07:26

回答

1

Frama-C's value analysis是开源的,available pre-compiled for Windows,用于查找安全漏洞如this one in the QuickLZ C librarythis one in Polar SSL

这就是说,你可能会发现,这是习惯的只是学校里的功课很多,然后再次,你实际上是希望能够找到安全漏洞在学校里的功课?

+0

谢谢你我会看看它。也许正确的词是“讲座”而不是“课堂”,因为它在大学。我们已经处理了这些问题,我们不得不在文件上找到几个漏洞。所以我想现在的目标是确认我们以前的发现。 – PLB 2012-07-06 22:01:56

+0

所以,在Windows上对它进行配置确实是一个痛苦。我只花了两个小时尝试在GUI上加载源文件,但总是说“Frama-C因用户输入无效而中止,查看控制台获取更多信息(如果有的话)”...当然控制台是空的! – PLB 2012-07-07 17:27:06

+0

我也在Linux上试过,至少我有一个输出,但我不太明白。这是一系列由警告结束的“怪异声明”,就像“[kernel] warning:没有函数fprintf的代码,默认赋值”。有趣的一点是代码最大的缺陷来自一个get(它容易发生缓冲区溢出),但frama-c不会给出任何警告。有任何想法吗? – PLB 2012-07-07 17:33:22

0

对于JavaEE的Web项目使用持久性API,你可以使用非SQL语句,其中黑客在理论上是不可能的!最好的开源代码是Hibernate。它易于使用且非常灵活。

+0

谢谢vut我不认为这解决了我的问题。我不需要编程任何东西,只是为了测试。 – PLB 2012-07-07 17:54:22