DevSecOps 환경이란 무엇인지, 구축하기 위해서는 어떤 부분에 노력을 기울여야 하는지 목표를 설정할 수 있어요!
보안팀 입장에서 DevOps (CI/CD) 환경을 이용하고 싶은데 어디서부터 시작해야 할지 잘 모르겠는 분!
여러 DevSecOps 기준을 통한 자체 평가 및 목표 설정 방안 제시
DevSecOps 환경 구성을 위한 오픈소스(GitLab, Jenkins, SonarQube 등)를 이용한 예제 환경 구성
※ DevSecOps SAST 강의의 경우 DevSecOps Basic(Link) 강의와 이어지는 강의입니다.
하나의 강의에 다양한 DevOps 환경 내 소스코드 취약점 점검 자동화 환경 구성을 담을 수가 없어 별도의 강의로 제작하였습니다. 각 강의에서 소스코드 취약점 점검 자동화 환경을 구성하기 위해 사용하는 도구는 아래와 같습니다.
현재 회사에서 사용하고 있는 환경과 유사한 환경으로 구성된 강의 수강을 부탁드립니다.
DevSecOps Basic
DevSecOps 이론과 DevSecOps 환경을 구성하기 위한 제안 모델
Jenkins, Github 환경에서 소스코드 취약점 점검 자동화 환경 구성
DevSecOps SAST (/w GitLab)
DevSecOps 이론
Jenkins, GitLab 환경 및 GitLab 단독 환경에서 소스코드 취약점 점검 자동화 환경 구성
학습 내용
DevSecOps 의 기본적인 내용과 실습 환경 구성을 위주로 제작되었습니다.
섹션 1 : What is DevSecOps?
섹션 2 : CI 환경 구성과 CI 환경에서 SAST(Source Code 취약점 점검) 자동 점검 환경 구성하기
섹션 3: 모니터링 방안
섹션 (1) DevSecOps Basic
DevSecOps 가 무엇이고 환경을 적용하기 위해서 어떻게 계획을 수립해야 하는지 확인해봅니다.
기본적인 DevSecOps 환경을 소개하기 위한 강의 예제 환경 확인 및 구성한다.
섹션 (2) CI & SAST
DevOps 환경에서 Sec를 적용하기 위해 SAST(Source Code 취약점 점검 도구) 자동 점검을 어떻게 구현해야 할지 실습을 통해 확인합니다.
사용 도구 : Jenkins & GitLab
섹션 (3) Monitor
SAST 자동 점검 이후 정상적으로 운영하기 위한 Monitoring 방안을 제시합니다.
사용 도구 : Prometheus & Grafana
수강 전 참고 사항
다양한 환경에서 모두 적용 가능한 DevSecOps 환경을 구현하는 것이 아닌, 기본적인 DevOps 환경에서 DevSecOps 환경으로 넘어가고자 고민중인 분들을 위한 강의입니다.
실습을 통해 간단한 DevOps(CI/CD PipeLine) 환경을 구축하고 구축된 환경에서 SAST 자동 점검을 위한 환경을 구성합니다.
실습 환경
운영 체제 및 버전(OS): Docker가 구동한 환경 ( Windows, Linux OSX, Mac 등)
사용 도구: Docker Desktop
PC 사양: 총 5개의 Docker Image를 이용하여 실습 환경을 구성합니다. 5개 정도의 Docker Container가 동시에 구동되는 사양이라면 충분합니다
학습 자료
강의 자료는 PDF를 통해 제공하며, 실습에 필요한 코드는 각 강의 첨부파일을 통해 제공드립니다.
선수 지식 및 유의사항
DevSecOps 환경 구축을 위한 CI/CD Pipeline 기반 SAST/DAST 취약점 점검 자동화 환경 구축 방안에 대해 주로 소개합니다.
SAST/DAST 에 대한 오탐률 감소 방안, 탐지 룰 고도화 등은 다양한 SAST/DAST 도구를 모두 다룰 수 없기에 자동화된 DevSecOps 환경 구성 기반을 목적으로 들어주시면 감사하겠습니다. - DevSecOps를 주제로 시리즈 형태의 강의를 계속 제작할 예정으로 오픈소스(ex. SonarQube, ZAP) 도구를 기반하여 오탐률 감소 혹은 탐지 룰 고도화에 대한 기본적인 내용은 추가 작성할 예정입니다.