你的应用安全吗? ——用Xray和Synk保驾护航
一、背景
在当下软件应用的开发过程当中,自研的内部代码所占的比例逐步地减少,开源的框架和共用库已经得到了广泛的引用。如下图所示,在一个Kubernetes部署的应用当中,我们自己开发代码所占的比例可能连0.1%都不到。

开源软件能够帮助开发者共享彼此的成果,使得我们能够快速复用其他人开发并已得到验证的软件库,从而能够集中精力专注于创新性的工作。然而,开源软件的大量引用也给我们的应用带来了安全隐患。安全检测已成为当前DevOps流程的重要组成部分。
二、你的应用安全吗
据不完全统计,现在有78%的企业都在使用开源软件。但是,大家在享受开源软件带来的研发便利的同时,是否也意识到开源软件带来的安全隐患呢?

从上图的统计数据可以看出,只有13%的企业会把安全放在引用开源软件时的首要关注点。大部分的使用者选择相信开源软件的创造和维护者会保证其安全性。然而,下图的统计数据表明,安全性并不是开源软件维护者的维护重点。

这样的现状导致我们常用的开源软件库包含了各种各样的安全漏洞,例如,据统计,目前14%的NPM包、30%的Docker Hub镜像都包含安全漏洞。而且在这些漏洞被发现之后,也得不到及时的修复。据统计,Maven包里有59%的已知安全漏洞还没有得到修复,而漏洞的平均修复时间是290天,最严重级别漏洞的平均修复时间也仅是265天。黑客们已逐渐把开源软件作为了主要的攻击目标。
该怎么样保证我们上线应用的安全呢?
三、JFrog Xray,监测安全漏洞的利器
JFrog公司提供的Artifactory+Xray是一个很好的产品组合。Artifactory是全语言的制品仓库,能够在同一个仓库中存储和管理我们应用研发中使用的所有外部依赖包。而Xray通过对Artifactory的监视,能够在构建,甚至开发阶段就发现安全漏洞问题,使得安全监测前置,避免了在应用上线前紧急排查问题的窘境。

如上图所示,当Artifactory仓库中新加入了制品包,设置了对其监视的Xray就会启动安全检查,并报告查到的安全漏洞和License授 权情况。而针对安全漏洞,Xray会提供详细的漏洞信息,以及在应用中的准确定位来辅助我们对其进行分析和检查。

同时,针对查出来的安全漏洞,Xray还提供了针对其扩散范围的分析。也就是说,可以帮助我们分析,出了被检查的这个制品包外,还有哪些其他的应用也包含了这个安全漏洞。

除了安全漏洞及其扩散范围的分析,Xray还提供自定义问题的能力。我们可以把用其他工具发现的安全问题,或者如性能过低、版本过老等非安全问题定义在对应的制品包上,同样也可以利用Xray的能力检查这些问题在我们的应用中的扩散范围。

四、Snyk, 不仅仅是监测漏洞
JFrog Xray是基于开源的NVD开源漏洞数据库来监测安全漏洞的,而Snyk(https://snyk.io)提供了额外的商业漏洞数据库。Xray可以通过和Snyk的集成,实现利用Snyk的商业漏洞数据库进行安全漏洞检查。
当然,基于自身的商业漏洞数据库,Snyk也提供了安全漏洞的扫描和监测能力。Snyk提供了与各种各样平台的集成,帮助我们监测部署在这些平台上的应用安全。

然而,Snyk的能力不仅如此,他还能帮助我们修复安全漏洞。例如,当和我们的Github Enterprise集成后,我们可以选择我们需要监测的项目。

选定后,Snyk就会自动扫描我们的代码并报告在项目当中发现的安全漏洞。

Snyk最大的特色是,针对这些安全漏洞,能够自动给出PR(Pull Request)形式的修复建议。PR既可以针对所有发现的漏洞,也可以只针对某一个具体的漏洞。


直接Merge这些PR就可以帮助我们替换使用已修复安全漏洞的依赖包,实现安全隐患的自动消除。
五、总结
开源软件的大量引用,在方便了应用开发的同时,也带来了安全的隐患。利用JFrog Xray和Snyk等工具,能够帮助我们尽早地发现开源依赖引入的安全漏洞,分析漏洞的扩散范围,也可以给出修复建议,实现安全隐患的自动消除。
你的应用安全吗? ——用Xray和Synk保驾护航的更多相关文章
- [听听音乐]X-Ray Dog
X-Ray Dog是一个专门为好莱坞电影预告配乐的音乐工作室. https://music.163.com/#/artist?id=105618 有空的时候听听.
- xray写POC踩坑
错误记录 静态文件目录不一定是static. 只考虑了linux的情况,如果是 windows 呢,能读取某些应用自己的源码吗. 实际环境参数不一定是id,thinkphp 不适合使用 poc 来写 ...
- Xray写POC插件
漏洞环境 https://www.vulnhub.com/ https://github.com/vulhub/vulhub https://github.com/QAX-A-Team/Weblogi ...
- sonar,jiar,xray,jenkins[cli] [sudoers]
curl -n -X POST http://52.83.39.59:8080'/job/CLA_SSO/buildWithParameters?token=11d710a8eac8012bea28b ...
- Bing Beats Google for the Best Way to X-Ray Search LinkedIn
Bing Beats Google for the Best Way to X-Ray Search LinkedIn 11/13/11 Note: I’ve provided some update ...
- Xray安装与使用
0×00 Xray简介 xray是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动.被动多种扫描方式,自备盲打平台.可以灵活定义 POC,功能丰富,调用简单,支持 Windows / macO ...
- ARL资产导出对接Xray扫描
使用ARL资产灯塔系统对目标进行资产整理的时候,能够对获取的结果进行导出: 导出之后为excel文件 想要将site中的URL导出为txt文件,再使用Xray高级版进行批量化扫描: https://w ...
- Xray批量化自动扫描
关于Xray高级版破解: https://www.cnblogs.com/Cl0ud/p/13884206.html 不过好像新版本的Xray修复了破解的BUG,亲测Xray1.3.3高级版仍然可以破 ...
- Xray高级版白嫖破解指南
啊,阿Sir,免费的还想白嫖?? 好啦好啦不开玩笑 Xray是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动.被动多种扫描方式,自备盲打平台.可以灵活定义 POC,功能丰富,调用简单,支持 ...
随机推荐
- HDU 1875 最小生成树prim算法
#include<iostream> #include<cstdio> #include<algorithm> #include<cmath> #inc ...
- 微信小程序中 不点击picker 点击一个button 怎么调用picker 弹出选择框
把按钮放在picker区域里就好了 picker本身就是一个区域 <picker mode = "selector" class='info' bindchange=&quo ...
- 读取Flex AIR应用程序设置
说明: 本人之前做过一年的Flex AIR移动跨平台开发,在之前学习过程中,一直是将笔记记在了Evernote上,有的笔记是自己写的,也有的笔记是在网上看到,顺手记下了的. 所以在这里声明下,如果在网 ...
- tf.variance_scaling_initializer() tensorflow学习:参数初始化
CNN中最重要的就是参数了,包括W,b. 我们训练CNN的最终目的就是得到最好的参数,使得目标函数取得最小值.参数的初始化也同样重要,因此微调受到很多人的重视,那么tf提供了哪些初始化参数的方法呢,我 ...
- Spring Boot JPA 懒加载
最近在使用spring jpa 的过程中经常遇到懒加载的错误:"` org.hibernate.LazyInitializationException: could not initiali ...
- H3C 传递信息
- 查看php-fpm的进程和端口号
ps -ef | grep php-fpm 查看php-fpm所有的进程 ps -ef | grep php-fpn.conf 查看配置所在路径 netstat -lntp 查看监听端口 lis ...
- vue v-for循环使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- linux模块参数
驱动需要知道的几个参数因不同的系统而不同. 从使用的设备号( 如我们在下一章见到的 ) 到驱动应当任何操作的几个方面. 例如, SCSI 适配器的驱动常常有选项控制标记命令队列 的使用, IDE 驱动 ...
- 【mac】关于mac的一些命令
一. 如何查看自己的文件大小,所有文件占了多少? du -h -d 1 . 当前目录文件以及大小 sudo du -h -d 1 / 所目录下的文件以及大小