Companies are misled into thinking they solve their security issues by using a DevSecOps system. This paper aims to answer the question: Could a DevOps pipeline be misused to transform a securely developed application into an insecure one? To answer the question, we designed a typical DevOps pipeline utilizing Kubernetes (K8s} as a case study environment and analyzed the applicable threats. Then, we developed four attack scenarios against the case study environment: maliciously abusing the user's privilege of deploying containers within the K8s cluster, abusing the Jenkins instance to modify files during the continuous integration, delivery, and deployment systems (CI/CD) build phase, modifying the K8s DNS layer to expose an internal IP to external traffic, and elevating privileges from an account with create, read, update, and delete (CRUD) privileges to root privileges. The attacks answer the research question positively: companies should design and use a secure DevOps pipeline and not expect that using a DevSecOps environment alone is sufficient to deliver secure software.
翻译:本文旨在回答以下问题: DevOps 管道能否被滥用,将安全开发的应用程序转化为不安全的应用程序? 为了回答这个问题,我们设计了一个典型的 DevOps 管道,将Kubernetes(K8s)作为案例研究环境,并分析了适用的威胁。 然后,我们开发了四种针对案例研究环境的攻击情景:恶意滥用用户在 K8s 集群内部署集装箱的特权,滥用Jenkins 实例在连续整合、交付和部署系统(CI/CD)建设阶段修改文件,修改 K8s DNS 层,将内部IP暴露在外部交通中,将账户的特权从创建、阅读、更新和删除(CRUD)到根特权。袭击正面回答了研究问题:公司应该设计和使用安全的 DevOps 管道,而不是期望仅使用DSecOps 环境就足以交付安全软件。