18岁以上准备好纸巾免费网站,深圳高端网站制作,求助用cms做网站设计_以我的家乡家乡为主题,十大免费软件不收费安卓在供应链安全中#xff0c;大家一直关注采用SCA工具分析开源组件中的安全漏洞以及许可证的合规性。但是对于底层软件开发使用的编译器、链接器等安全却容易被忽视#xff0c;其中有没有安全漏洞、有没有运行时缺陷、有没有被植入漏洞、木马等#xff0c;似乎并没有引起多少人…
在供应链安全中大家一直关注采用SCA工具分析开源组件中的安全漏洞以及许可证的合规性。但是对于底层软件开发使用的编译器、链接器等安全却容易被忽视其中有没有安全漏洞、有没有运行时缺陷、有没有被植入漏洞、木马等似乎并没有引起多少人注意。今天我正好拿到了库博静态分析工具利用它检测一下gcc编译器看看这款编译器质量怎么样
网络上百度了一下国内C/C常用的编译器GCC 4.8.1版本比较多我从官网网站GCC Releases下载了源代码注意我们使用编译器等软件最好从官方网站下载呦。整个代码我一次性加载检测达到了700多万行这需要128G内存明显笔记本是很少有128G内存只能从其中找最重要的gcc目录下文件进行检测大家可以看到就有310多万行源代码其中C语言程序文件29232个还有少量Fortran语言、Objective-C等程序文件。人家代码注释率还是满足一般企业标准的啊将近20%的注释率。 有的小伙伴可能看到了检测结果有21148个缺陷8156个安全漏洞还有3518个违反编码标准的问题程序员看了直接大喊这不活了这些问题要修改到我死啊。哈哈不要着急我们看看他们使用了那些规则检测的。 可以看到使用了C/C常见安全漏洞检测规则、CWE通用缺陷和OWASP C安全漏洞看看里面都是啥规则呢 我噻C /C语言常见的运行时缺陷全包括了规则真是很全面。 再打开一个规则详细看看呢里面还有5个子类。 打开一个规则看看描述怎么样还是很详细的信息。还能导入规则。 说了这么多我们看看检测结果咋样 打开运行时缺陷打开内存泄露这个规则右侧会列出检测结果。 我们打开一个检测结果看看如下图。对于缺陷的描述非常清晰包括了缺陷的名称、级别、爆发点在多少行整个缺陷的source、sink等缺陷跟踪路径非常清晰。在某个节点上还可以丰富的右键功能查看变量、函数的定义调用图等好逆天的功能啊这种逆向工程功能对于我们分析缺陷非常有帮助。 gcc编译器中这么多问题对于我们很多企业只是使用gcc做编译来说可能并不台关心这些编译器的缺陷或漏洞是否对于我们被编译的代码产生影响。因为代码可能是在物理隔离的环境上去使用例如上车载软件船载软件等但是这些缺陷可能被利用的难度很大但是是否有被利用的风险呢肯定是有的。只要有通讯有与其它软件进行交互就可能存在风险。但是对于运行时缺陷利用内存泄露、数据越界等不一定需要外界触发引起问题程序自身存在问题就会导致异常、Crash等如果不是下载地址被恶意攻击了产生的是供应链安全攻击前几年出现的苹果开发套件被植入木马的事件也曾经发生过。所以要保证供应链的安全不仅仅使用SCA工具去检测开源组件而开源软件本身的风险可能更加严重其攻击目的和带来的损失不是使用钱来衡量的。 由于时间关系我今天分析到这里下次继续啊。