开源软件最常见的就是各式各样的漏洞,为了产品的健壮性以及客户安全,我们必须时刻警醒!

1.漏洞扫描与检测

针对开源软件需要经常进行漏洞扫描检测,可以通过一些信息库进行检测,比如:国家信息安全漏洞库或者自己搭建一个类似的漏洞信息库,或者安装对应的插件以及工具进行检测。

2.漏洞处理方案

针对检测出来的漏洞有四种处理方案:

  1. 网上搜索该软件漏洞触发条件,如果系统不满足该条件,可以暂缓处理或者不处理;
  2. 版本升级 - 小升级可能有一些东西不兼容,可以进行轻微改动,比如进行某个方法的改造等等;
  3. 如果是传递依赖进来的,又不需要的,可以进行删除;
  4. 寻找替换软件或者自研;

3.如何查看漏洞软件依赖情况以及路径?

1. 安装插件Maven Helper
使用Maven Helper查看漏洞软件依赖路径,比如某个工程 的pom文件依赖的itext软件:见下图:

在pom文件点击下方Dependency Analyzer,在右侧展示就是该软件的依赖情况以及路径,详细解释下右侧:2.17版本的itext来自三个地方,最上方的是当前工程主动添加进来的,第二个表示的是由其他工程传递依赖进来的,第三个是由jasperreport6.4.1传递进来的

2. 按照漏洞处理方案2给定的方案进行处理

针对itext软件处理经验分享:

1.首先将其他工程传递依赖进来的和jasperreport6.4.1依赖的itext排除掉exclude,选中右键点击exclude即可;Jump to Source 会跳到该依赖的源码;

2.因为itext我们没有直接使用,是由jasper report底层调用,所以针对itext进行版本升级,需要查询jasper report对应版本是否支持高版本的itext,我们可以通过https://mvnrepository.com/ 进行查询:

通过上面的截图可以看到jasperreport6.4.1依赖的itext版本是2.1.7,可以更新的最高版本是5.5.13.3;

而itext最高版本目前是4.2.2,使用率最高的版本是2.1.7,我们尝试将itext版本升级到最高,发现功能不好使!!!

3.步骤2满足条件还得进行验证,我们将itext单独进行升级后,最终发现其实不好使,原因是jasper report虽然依赖了itext,但是没有对itext进行升级维护,而itext版本差异很大,有一些类或者方法都重构或者删掉了;

4.由于jasper report问题导致itext不能进行升级,但是考虑到自研或者寻找替换软件难度大,最终只能搁浅。

版本漏洞解决后,需要验证功能是否受影响,如果功能正常,则本次升级成功。

开源软件漏洞升级步骤相关推荐

  1. RiskSense Spotlight:全球知名开源软件漏洞分析报告

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 RiskSense 公司最近发布了关于全球当前知名开源软件 (OSS) 的漏洞分析报告.奇安信代码卫士团队编译如下.   摘要 开源软 ...

  2. 美国政府与科技巨头讨论开源软件安全、近八万网站受开源软件漏洞影响|1月18日全球网络安全热点

    安全资讯报告 微软称"破坏性恶意软件"被用于对付乌克兰组织 微软表示,它发现了破坏性恶意软件被用来破坏乌克兰多个组织的系统.在周六发布的博客中,微软威胁情报中心(MSTIC)表示, ...

  3. Google 释出开源软件漏洞扫描工具 OSV-Scanner​

    开源开发人员可在项目使用 OSV-Scanner,透过比对依赖项目和 OSV 漏洞资料库,找出项目的依赖项目中所存在的漏洞. Google 推出免费工具 OSV-Scanner(https://git ...

  4. 详细分析开源软件项目 Ajax.NET Professional 中的RCE 漏洞(CVE-2021-23758)

     聚焦源代码安全,网罗国内外最新资讯! 作者:Hans-Martin Münch 编译:代码卫士 2021年秋,MOGWAI LABS 实验室在为客户进行渗透测试过程中发现了开源组件 "Aj ...

  5. NPM 修复两个严重漏洞但无法确认是否已遭在野利用,可触发开源软件供应链攻击...

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

  6. 每 1000 行代码有 14 个安全缺陷,开源软件的安全令人堪忧

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 当今,开源软件已经成为软件世界的重要组成部分.根据 Gartner 统计,99% 的组织在其 IT 系统中使用了开源软件. 今年 3 ...

  7. WG10正式启动!共话证券基金行业开源软件治理

     聚焦源代码安全,网罗国内外最新资讯! 6月28日,国家工业信息安全发展研究中心(以下简称"中心")线上组织召开了证券基金行业信息技术应用创新联盟开源软件与供应链安全工作组首次全体 ...

  8. 开源软件使用的风险和应对方法

    目录 一.开源软件的漏洞 1.1 发现漏洞并评估影响范围 1.1.1 开源软件清单和SBOM 1.1.2 如何得到软件产品完整的SBOM 1.1.3 通过SBOM识别漏洞影响范围 1.1.4 漏洞感知 ...

  9. Node-ipc 热门包作者投毒“社死‘’,谁来保护开源软件供应链安全?

     聚焦源代码安全,网罗国内外最新资讯! 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全性问题也正在成为 ...

最新文章

  1. 【Qt】报错error: undefined reference to `vtable for的解决方法
  2. Android View体系(一)视图坐标系
  3. java栈的回收_JAVA的堆栈和内存、垃圾回收解说
  4. cocos2dx中关于Action动作的相关API的详细介绍
  5. Redis操作List相关API
  6. android studio真机模拟不能拍照_android和ios静态库的生成
  7. .NET Core第三方开源Web框架YOYOFx
  8. 一步一步学python爬虫_初学Python之爬虫的简单入门
  9. 对一个“世纪数学难题”的重新思考
  10. 与Serverless 的第一次亲密接触
  11. python实现输入三角形边长自动作图求面积案例
  12. 第 5 章 单例设计模式
  13. net异步线程获取返回值的三种方式
  14. vb access mysql_vb连接access数据库
  15. Qt5.10编写FTP客户端
  16. java的io流有什么作用_Java IO流详解(一)——简单介绍
  17. Python 计时器倒计时弹窗提醒
  18. 读《因果的真相》第八、九章摘抄笔记
  19. java.lang.IllegalStateException: Cannot get a text value from a numeric cell
  20. Java学习经典《第一行代码》第二版

热门文章

  1. python selenium 等待元素出现_Selenium(Python)等待元素出现
  2. 华为鸿蒙荣耀壁纸,华为Mate 40全新主题、系统壁纸曝光:高清无水印
  3. 算法工程师分类与要求
  4. 应用计算机测定伏安特性实验,实验25应用计算机测电阻伏安特性.doc
  5. 什么是现场服务管理系统(FSM)?有什么好处?
  6. cocos2d-x3.2中用shader使图片背景透明
  7. itext html to pdf设置边距,itextpdf特定页面上的不同边距
  8. Scrapy+Selenium爬取动态网页:no ‘moz:firefoxOptions.binary‘ capability provided
  9. 7段并行数码管显示实验C语言,七段数码管显示十进制数字 (15)
  10. Php扫码签到功能怎么实现,扫码签到常用方法_云分组小程序