开源代码安全之痛

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件安全生产中的问题
料(开 材 原 件 软 是否安 ) 件 软 源 全 过程中 发 开 件 软 安全开 守 遵 否 是 发规范
中是否 品 成 件 软 和漏洞 陷 缺 在 存
时有没 发 开 件 软 安全管 的 一 统 有 理策略
软件安全生产的解决办法
已知 漏洞 知识 产权 国际 标准 企业 规范 源代码 可执行 缺陷 代码 安全检测
法律风险 开源不等于免费,开源软件许可协议背后的条条框框你清楚吗?
主要 内容
1、开源软件安全事件带来的思考 2、开源项目检测计划和实例分析 3、软件代码安全解决之道
开源项目检测计划
开源项目检测计划()是由360代 码卫士团队发起,针对开源项目进行的一项公益安全检 测计划,旨在让广大开发者关注和了解开源代码安全问 题,提高软件安全开发意识和技能。

Windows平台下Ffmpeg验证结果:
可以看到FFmpeg程序崩溃,并指出了对地址0x41711115的非法访问
Windows平台下SMPlayer验证结果:
Ubuntu自带播放器SMPlayer验证结果:
实例分析4—某开源分类系统硬编码敏感信息
MORE……
基础原材料
2010年,Gartner采访了来自11个国家的547位公司负责人,在被调查的公司当中超过 一半采用了开源软件作为其IT战略的组成部分。

安全性
2012年,Aspect Security和Sonatype公开的一份调查报告显示,最受欢迎的31个开源 项目中,其不安全的版本被下载了超过4,600万次。
注:开源项目检测计划使用的检测工具是360自主研发的源代码检测引 擎“代码卫士”。
开源项目检测计划—开源项目检测概况
目前已检测1010个Java开源项目,检测代码总量65,800,663行,总计发 现1,646,035个源代码缺陷,缺陷密度25.02个/千行。
开源项目检测计划—十大JAVA严重缺陷统计
Struts2是Apache软件基金会赞助的一个开源项目,近年来频繁爆发安全漏洞。 影响国内电商、银行、运营商等诸多大型网站和为数众多的政府网站。 Tomcat是一个免费的开源的Serlvet容器,2014年爆出严重的安全漏洞,其中包 括多个DoS漏洞和信息泄露漏洞。
开源软件的思考
开源项目检测计划—20个流行项目
开源项目检测计划—20个流行项目缺陷总数统计
开源项目检测计划—20个流行项目十大JAVA重 要缺陷数量统计
开源项目检测计划—缺陷数量TOP 10项目
开源项目检测计划—缺陷密度TOP 10项目
实例分析1—某开源论坛项目XSS漏洞
电子商务平台OFBiz___路径遍历:
博客系统solo___HTTP消息头注入:
医疗电子病历系统openmrs___资源注入:
内容管理系统OpenCms ___命令注入:
手机聊天系统PushTalk___SQL注入:
软件项目管理和问题管理Cynthia___反射型XSS:
溯源检测
合规检测
目标管理
自动化周期检测
差距分析
持续改进
统一代码质量监控中心
Thanks!
开源代码安全之痛
主要 内容
1、开源软件安全事件带来的思考 2、开源项目检测计划和实例分析 3、软件代码安全解决之道
开源软件安全事件
OpenSSL是一个开源的安全套接字层密码库,2014年曝光重大安全漏洞 Heartbleed。攻击者通过构造异常的数据包进行攻击,获取用户敏感信息。 ElasticSearch是全文搜索引擎开源代码项目。2014年和2015年分别爆出远程任 意命令执行漏洞。攻击者可利用远程任意命令执行漏洞获取主机最高权限。
工作流和协作服务引擎Oozie___LDAP注入:
内容管理系统infoglueபைடு நூலகம்__XPath注入:
数据分发平台Hazelcast___不恰当资源释放:
主要 内容
1、开源软件安全事件带来的思考 2、开源项目检测计划和实例分析 3、软件代码安全解决之道
实例分析2—某开源论坛项目SQL注入漏洞
实例分析3—某开源流媒体解析工具包类型混淆 漏洞
n 该开源软件用于解析RTMP流媒体,支持RTMP协议及RTMPT/RTMPS /RTMPE等各类变种。 n 该开源软件及其库文件被广泛用于各种视频及音频流解决方案,如 FFmpeg(被多款音视频播放器所使用)、 SMPlayer(ubuntu14.x默认自带)、 Mplayer等。 n 该开源软件类型混淆漏洞的产生是由于对union的不当使用,导致double 数据的高八位被当作指针进行处理,进而导致对非法内存地址的访问。
相关文档
最新文档