安全左移DevSecOps开源工具链建设

这篇具有很好参考价值的文章主要介绍了安全左移DevSecOps开源工具链建设。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

开发安全相关技术和产品受到越来越多的关注。行业共识认为,应用系统上线之后进行软件漏洞修复,其修复成本是需求设计阶段修复成本的几十倍。因此,在开发环节,引入相应的安全工具,能够有效的降低漏洞的修复成本,实现安全的左移。本文会持续研究安全开发相关工具,使用开源工具建设安全开发体系。

静态代码安全检查(SAST)

静态应用程序安全测试(Static Application Security Testing)技术通常在编码阶段分析应用程序的源代码或二进制文件的语法、结构、过程、接口等来发现程序代码存在的安全漏洞。

据统计,超过50%的安全漏洞是由错误的编码产生的,开发人员一般安全开发意识和安全开发技能不足,更加关注业务功能的实现。想从源头上治理漏洞就需要制定代码检测机制,SAST是一种在开发阶段对源代码进行安全测试发现安全漏洞的测试方案。

SAST需要从语义上理解程序的代码、依赖关系、配置文件。优势是代码具有高度可视性,能够检测更丰富的问题,包括漏洞及代码规范等问题。测试对象比DAST丰富,除Web应用程序之外还能够检测APP的漏洞,不需要用户界面,可通过IDE插件形式与集成开发环境(如Eclipse、IntelliJ IDEA)结合,实时检测代码漏洞问题,漏洞发现更及时,修复成本更低

1、CodeQL

自从Github宣布推出CodeQL,越来越多安全人员使用这个项目做代码安全评估工作,目前github超过6100 star。github地址

Github为了解决其托管的海量项目的安全性问题,收购了CodeQL的创业公司,并宣布开源CodeQL的规则部分,这样全世界的安全工程师就可以贡献高效的QL审计规则给Github,帮助它解决托管项目的安全问题。

CodeQL本身包含两部分解析引擎+SDK。安全左移DevSecOps开源工具链建设
安全左移DevSecOps开源工具链建设

解析引擎用来解析我们编写的规则,虽然不开源,但是我们可以直接在官网下载二进制文件直接使用。SDK完全开源,里面包含大部分现成的漏洞规则,我们也可以利用其编写自定义规则。检测java靶场java-sec-code、JavaVulnerableLab、WebGoat,漏洞的检测准确率较高。据说log4j最初研究人员使用codeql检测出来,可以查看相关的分析文章。

深入学习codeql使用参考文章

2、SonarQube

SonarQube 是一个开源的代码分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQube我们可以检测出项目中重复代码, 潜在bug, 代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。sonarqube提供多种插件可以方便集成到研发流水线中。gtihub地址

部署方式使用docker进行部署,进行相关靶场的检测分析。也可使用官方提供的sonarqube在线平台进行代码的快速检测分析。在线sonarqube地址 可使用github账号进行登录。

检测规则原理

Source 获取用户输入的污点数据,HttpServletRequest#getParam("foo")
Sanitizer 从一个或者多个可能受污染的参数查找并且删除恶意内容。DatabaseUtils#sqlEscapeString(String str)
Validator 将一个或多个参数标记为不受恶意内容影响的安全参数。String#matches(String str),验证确定内容中不包含注入攻击
Passthrough  污点数据的传播
Sink  一段可以执行安全敏感任务的代码。数据到达接收器后不应包含任何恶意内容。java.sql.Statement#execute

靶场漏洞检测结果
安全左移DevSecOps开源工具链建设
安全左移DevSecOps开源工具链建设

SonarLint插件使用
SonarLint 是一个免费的开源IDE 扩展,可识别并帮助您在编写代码时解决质量和安全问题。像拼写检查器一样,SonarLint 会显示缺陷并提供实时反馈和清晰的修复指导,以便从一开始就提供干净的代码。

3、Semgrep

semgrep是一款基于Facebook开源SAST工具pfff中的sgrep组件开发的开源SAST工具,目前由安全公司r2c统一开发维护,项目github地址

开源扫描规则丰富,由社区共同开发维护的扫描规则超过1000条

规则设置简单,采用yaml配置文件编写,语法简单

扫描速度极快:官方称扫描速度大约是每条规则20K-100K loc/sec

生态良好:支持嵌入到几乎所有CI工具中

支持本地扫描:官方不仅提供了VSCode、IntelliJ IDEA、Vim的相关插件,还支持通过pre-commit的方式在代码提交前进行自动扫描

缺点是数据流跟踪能力较弱,后续会深入分析工具的实际漏洞检测能力。

交互式安全测试工具(IAST)

IAST交互式应用安全测试技术是最近几年比较火热的应用安全测试新技术,曾被Gartner咨询公司列为网络安全领域的Top 10技术之一。IAST融合了DAST和SAST的优势,漏洞检出率极高、误报率极低,同时可以定位到API接口和代码片段。

1、洞态开源IAST

火线~洞态IAST属于被动式IAST,不需要重放数据包,不产生脏数据;

被动式IAST具有近实时检测、高检出率、低误报率、低漏报率等特点;理论上可以实现0误报,但是,在复杂场景下,会出现污点链路不准确、误报等情况,尤其是使用了自定义的过滤函数。

洞态IAST可以使用官方提供的SaaS环境进行体验,也可使用官方提供的镜像进行本地快速部署。开源java、python agent源码和服务端检测源码。笔者曾根据开源版本开发出适合企业开发流程的IAST工具,会在后续的文章中详细介绍IAST的实现原理和漏洞检测算法。

2、国外contrast

Contrast Assess是一种革命性的交互式应用程序安全测试(IAST)解决方案,它将安全专业知识融入应用程序本身。Contrast agent使用智能传感器检测应用程序,以便从应用程序内部实时分析代码。Contrast Assess然后使用代理收集的情报来识别和确认代码中的漏洞。这包括已知(CVE)和未知漏洞。

2、商业产品

成熟的商业产品有悬镜灵脉、默安雳鉴IAST

动态应用安全测试工具(DAST)

DAST是一种黑盒测试技术,是目前应用最广泛、使用最简单的一种Web应用安全测试方法,安全工程师常用的工具如AWVS、AppScan等就是基于DAST原理的产品。
成熟的产品有长亭Xray、YaKit、Goby

开源组件成分分析(SCA)

1、DependencyTrack

2、悬镜开源OpenSCA

云安全工具

1、长亭开源veimind

veinmind-tools 是由长亭科技自研,牧云团队孵化,基于 veinmind-sdk 打造的容器安全工具集。veinmind, 中文名为问脉,寓意 容器安全见筋脉,望闻问切治病害。 旨在成为云原生领域的一剂良方。

2、trivy

Trivy 是一款轻量级的开源安全扫描工具,专注于 Docker 镜像的漏洞扫描,帮助用户快速检测镜像中的漏洞并提供修复建议。Trivy 基于漏洞数据库,并且包含了多种 CVE 数据库。它可以从最新版本的漏洞数据库中获取数据,在本地计算机上执行镜像扫描,以检测 Docker 镜像中的漏洞和安全问题。Trivy 使用简单,并与 CI/CD 管道集成非常容易

后续会写系列文章详细介绍上面工具的使用,用工具提供的原子能力建设企业SDL流程。感谢开源工具为安全能力建设提供的帮助,开源漏洞靶场提供的漏洞验证能力。文章中有错误之处欢迎大家指正,如果有优秀的开源工具欢迎评论区留言,共同推动安全开发能力体系建设。文章来源地址https://www.toymoban.com/news/detail-487020.html

到了这里,关于安全左移DevSecOps开源工具链建设的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DevSecOps端到端的安全能力构建为什么重要?

    2012年,Gartner首次提出DevSecOps概念,旨在将安全性嵌入开发过程中的每个部分;十年后,DevSecOps已经成为端到端安全能力构建的事实标准。所以,在了解DevSecOps为什么重要以及如何落地之前,我们先从软件开发的角度弄明白什么是DevOps。 软件开发进入现代化之旅 回望过去,软

    2024年02月03日
    浏览(43)
  • 信息安全战线左移!智能网联汽车安全亟需“治未病”

    当汽车由典型的工业机械产品逐步发展成为全新的智能移动终端,汽车的安全边界发生了根本性改变,信息安全风险和挑战不断增加。 面对复杂的异构网络、异构系统及车规级特异性要求,智能智能网联汽车信息安全到底要如何防护,已经成为关乎行业未来发展的重要命题。

    2024年02月13日
    浏览(32)
  • 开源安全测试工具 | 网络安全工具列表

    • AttackSurfaceMapper (https://github.com/superhedgy/AttackSurfaceMapper) - 自动化渗透测试工具, 使用手册/测试流程 (https://www.uedbox.com/post/59110/)。 • vajra (https://github.com/r3curs1v3-pr0xy/vajra) - 自动化渗透测试. • Savior (https://github.com/Mustard404/Savior) - 渗透测试报告自动生成工具!. • OneForAll (h

    2024年02月03日
    浏览(40)
  • 左移测试,如何确保安全合规还能实现高度自动化?

    「云原生安全既是一种全新安全理念,也是实现云战略的前提。 基于蚂蚁集团内部多年实践,云原生PaaS平台SOFAStack发布完整的软件供应链安全产品及解决方案,包括静态代码扫描Pinpoint,软件成分分析SCA,交互式安全测试IAST,运行时防护RASP,安全洞察Appinsight等,帮助企业客

    2024年02月06日
    浏览(30)
  • 一些云原生开源安全工具介绍

    本博客地址:https://security.blog.csdn.net/article/details/130789465 kube-bench是一个用Golang开发的、由Aqua Security发布的自动化Kubernetes基准测试工具,它运行CIS Kubernetes基准中的测试项目。这些测试项目是用YAML语言编写的,方便后续根据CIS基准测试的标准来进行扩展。 互联网安全中心(

    2024年02月05日
    浏览(29)
  • 开源网络探测和安全评估工具nmap的实践

    Nmap(Network Mapper)是一个广泛使用的开源网络探测和安全评估工具。它最初由Gordon Lyon(也被称为Fyodor Vaskovich)开发,并且在网络管理员、安全研究人员和黑客等领域被广泛应用。 Nmap具有许多功能,可以帮助您了解网络中的主机、服务和开放的端口,以及评估网络的安全性

    2024年02月14日
    浏览(34)
  • 【开源黑客工具】2023全网最全黑客/网络安全工具合集(附github地址)

    首先,恭喜你发现了宝藏。 本文章集成了全网优秀的开源攻防武器项目,包含: 信息收集工具(自动化利用工具、资产发现工具、目录扫描工具、子域名收集工具、指纹识别工具、端口扫描工具、各种插件....etc...) 漏洞利用工具(各大CMS利用工具、中间件利用工具等项目

    2024年02月08日
    浏览(113)
  • 安全手册:一站式知识和工具集 | 开源日报 0902

    Stars: 106.0k License: Unknown 这个开源项目是一个包含各种有用信息和工具的仓库,通过提供列表、手册、秘籍、博客、技巧、一行命令、命令行/网络工具等来帮助解决工作中的问题。不仅是系统和网络管理员、DevOps、渗透测试人员和安全研究人员,这个仓库对每个人都很有价值

    2024年02月09日
    浏览(31)
  • [开源工具]Firefox 检测到潜在的安全威胁,并因 accounts.firefox.com 要求安全连接...

    1.在火狐地址栏中输入,about:config,打开后将以下4个布尔值设为 false 2.如果1不好使,继续设置 security.enterprise_roots.enabled 为 true 3.如果2也不好使,请继续打开 firefox的设置

    2024年01月17日
    浏览(34)
  • 开发安全、软件供应链安全及开源软件安全的概念差异

    开发安全、软件供应链安全和开源软件安全是在软件生命周期中不同阶段涉及到的安全概念,它们有着一些共同点,同时也存在一些显著的差异。以下是它们之间的比较总结: 范围 : 开发安全 :关注于整个软件开发过程中的安全性,包括代码编写、测试、部署等环节。 软

    2024年03月14日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包