DevSecOps 큰 그림: 2부

Mar 02 2023
일 때문에 미디엄에 글을 쓴 지 오래되었습니다. 이제 내가 돌아왔어!! 이번에는 연재물의 2부인 "DevSecOps The Big Picture"를 살펴보겠습니다.
DevSecOps 수명 주기

일 때문에 여기에 매체에 기사를 쓴 지 오래되었습니다.

이제 내가 돌아왔어!! 그리고 이번에는 연재물의 2부인 " DevSecOps The Big Picture "입니다.

이전 기사에서 우리는 DevSecOps의 세계, 단계 및 철학을 함께 발견했습니다.

https://medium.com/@ayoubnajim/devsecops-the-big-picture-part-1-5ca3278c03f

이번에는 DevSecOps의 첫 번째 단계인 Plan | 위협 모델링.

내용의 테이블 :

  1. 계획 단계는 무엇입니까?
  2. 위협 모델링이란 무엇입니까?
  3. Use Case : 전자상거래 앱을 위한 위협 모델링

DevOps 수명 주기에서 "계획"은 첫 번째 단계이며 소프트웨어 개발 프로젝트의 초기 계획 및 준비를 포함합니다. 이 단계는 프로젝트 목표 정의, 요구 사항 및 제약 조건 식별, 프로젝트 범위 결정에 중점을 둡니다.

계획 단계에서 팀은 프로젝트에 대한 높은 수준의 보기를 설정하고 주요 이해 관계자, 요구 사항, 역할 및 책임을 식별합니다. 팀은 또한 응용 프로그램을 개발, 테스트, 배포 및 모니터링하는 데 사용할 기술과 도구를 식별합니다.

계획 단계의 또 다른 주요 측면은 프로젝트의 타임라인, 이정표 및 결과물을 개략적으로 설명하는 로드맵 또는 프로젝트 계획을 만드는 것입니다. 이 계획은 프로젝트 범위, 일정 및 예산에 대한 명확한 이해를 제공하고 진행 상황을 추적하고 필요에 따라 조정하기 위한 기초 역할을 합니다.

위협 모델링이란 무엇입니까?

위협 모델링은 시스템 또는 애플리케이션의 잠재적인 위협과 취약성을 식별하고 우선 순위를 지정하는 구조화된 접근 방식입니다. 이는 잠재적인 위협을 체계적으로 식별 및 분석하고 이러한 위협의 가능성을 고려하고 시스템 또는 애플리케이션에 미칠 수 있는 잠재적인 영향을 기반으로 우선 순위를 지정하는 사전 예방적 프로세스입니다.

위협 모델링의 목표는 공격자가 악용하기 전에 보안 취약점을 식별하고 해결하는 것입니다. 구조적이고 체계적인 방식으로 잠재적인 위협과 취약성을 분석함으로써 조직은 직면한 보안 위험을 더 잘 이해하고 적절한 위험 완화 전략을 개발할 수 있습니다.

위협 모델링에는 일반적으로 자산 및 잠재적 위협 식별, 잠재적 취약성 분석, 가능성 및 영향에 따라 위험 우선 순위 지정, 완화 전략 개발 및 구현을 포함한 여러 단계가 포함됩니다. 프로세스는 보안 전문가, 개발자 또는 시스템이나 응용 프로그램의 개발 또는 유지 관리에 관련된 기타 이해 관계자가 수행할 수 있습니다.

사용 사례 : 전자 상거래 앱에 대한 위협 모델링

다음은 전자상거래 앱에 대한 자세한 위협 모델링과 예제입니다.

자산 식별 :

첫 번째 단계는 전자상거래 앱의 자산을 식별하는 것입니다. 자산에는 고객 개인 데이터, 결제 데이터, 회사 정보 및 IT 리소스가 포함될 수 있습니다.

예: 고객 개인 데이터에는 이름, 주소, 이메일 주소 및 신용 카드 정보가 포함됩니다.

위협 식별:

다음으로 전자 상거래 앱의 보안을 손상시킬 수 있는 잠재적인 위협을 식별해야 합니다. 전자상거래 앱에 대한 몇 가지 일반적인 위협은 다음과 같습니다.

  • 맬웨어 공격: 맬웨어 공격은 전자상거래 앱의 웹사이트나 고객의 장치를 감염시켜 공격자가 데이터를 훔치거나 다른 공격을 시작할 수 있도록 합니다.
  • SQL 주입 공격: SQL 주입 공격을 통해 공격자는 전자상거래 앱의 데이터베이스에 있는 중요한 데이터에 액세스하거나 수정할 수 있습니다.
  • XSS(교차 사이트 스크립팅) 공격: XSS 공격을 통해 공격자는 전자 상거래 앱의 웹 사이트에 악성 코드를 삽입하여 데이터를 훔치거나 다른 공격을 실행할 수 있습니다.
  • 분산 서비스 거부(DDoS) 공격: DDoS 공격은 전자상거래 앱의 서버에 과부하를 일으켜 고객이 앱을 사용할 수 없게 만들 수 있습니다.
  • MITM(Man-in-the-Middle) 공격: MITM 공격을 통해 공격자는 고객과 전자상거래 앱 간에 전송되는 데이터를 가로채고 수정할 수 있습니다.
  • 계정 탈취: 계정 탈취를 통해 공격자는 고객의 계정에 액세스하여 개인 및 결제 데이터를 훔칠 수 있습니다.
  • 사회 공학 공격: 사회 공학 공격은 고객이나 직원을 속여 로그인 자격 증명이나 결제 데이터와 같은 중요한 정보를 누설하도록 할 수 있습니다.

취약점 분석:

잠재적인 위협을 식별한 후 다음 단계는 공격자가 이러한 공격을 시작하기 위해 악용할 수 있는 취약성을 분석하는 것입니다. 전자상거래 앱의 몇 가지 일반적인 취약점은 다음과 같습니다.

  • 약한 암호: 약한 암호를 사용하면 공격자가 쉽게 로그인 자격 증명을 추측하고 중요한 데이터에 액세스할 수 있습니다.
  • 보안되지 않은 API: 보안되지 않은 API를 사용하면 공격자가 전자상거래 앱의 데이터베이스에 있는 데이터에 액세스하거나 데이터를 수정할 수 있습니다.
  • 암호화되지 않은 데이터 전송: 암호화되지 않은 데이터 전송을 통해 공격자는 고객과 전자상거래 앱 간에 전송되는 데이터를 가로채서 읽을 수 있습니다.
  • 입력 유효성 검사 부족: 입력 유효성 검사가 없으면 공격자가 전자 상거래 앱의 웹 사이트 또는 데이터베이스에 악성 코드를 삽입할 수 있습니다.
  • 오래된 소프트웨어 및 프레임워크: 오래된 소프트웨어 및 프레임워크에는 공격자가 악용할 수 있는 알려진 취약점이 포함될 수 있습니다.
  • 액세스 제어 부족: 액세스 제어가 없으면 권한이 없는 사용자가 중요한 데이터에 액세스할 수 있습니다.
  • 부적절한 로깅 및 모니터링: 부적절한 로깅 및 모니터링은 공격을 감지하고 대응하기 어렵게 만들 수 있습니다.

위협의 우선 순위 지정:

취약점을 식별한 후 다음 단계는 전자 상거래 앱에 미칠 수 있는 영향의 심각도에 따라 위협의 우선 순위를 지정하는 것입니다. 예를 들어 전체 데이터베이스를 손상시키는 SQL 주입 공격은 일시적인 중단만 유발하는 DDoS 공격보다 더 큰 영향을 미칠 수 있습니다.

예: 신용 카드 정보를 도용하는 SQL 주입 공격은 금전적 손실을 초래하고 전자 상거래 앱의 평판을 손상시킬 수 있으므로 우선 순위가 높습니다.

위협 완화:

마지막으로 위협의 우선순위를 정한 후 전자상거래 앱 개발 팀은 이러한 위협을 완화하기 위한 조치를 취해야 합니다. 몇 가지 일반적인 완화 전략은 다음과 같습니다.

  • 강력한 액세스 제어 구현: 액세스 제어는 전자상거래 앱 내의 민감한 데이터 및 기능에 액세스할 수 있는 사람을 제한할 수 있습니다. 여기에는 역할 기반 액세스 제어 구현, 강력한 암호 요구 및 다단계 인증 사용이 포함될 수 있습니다.
  • 암호화 구현: 암호화는 전송 중이거나 저장된 민감한 데이터를 보호하는 데 도움이 될 수 있습니다. 예를 들어 SSL/TLS 암호화를 구현하면 고객과 전자상거래 앱 간의 데이터 전송을 보호하고 전자상거래 앱의 데이터베이스에 저장된 민감한 데이터를 암호화하면 무단 액세스를 방지할 수 있습니다.
  • 정기적인 소프트웨어 및 프레임워크 업데이트: 정기적인 업데이트를 통해 알려진 취약점을 해결하고 공격 위험을 줄일 수 있습니다. 여기에는 전자상거래 앱의 소프트웨어, 웹 서버, 운영 체제 및 앱에서 사용하는 타사 라이브러리 또는 프레임워크 업데이트가 포함됩니다.
  • 정기적인 보안 감사 및 취약성 평가 수행: 정기적인 보안 감사 및 취약성 평가는 해결해야 할 잠재적인 취약성 또는 위협을 식별하는 데 도움이 될 수 있습니다. 여기에는 침투 테스트, 코드 검토 및 취약성 스캔 수행이 포함됩니다.
  • 로깅 및 모니터링 구현: 로깅 및 모니터링을 구현하면 잠재적인 공격을 탐지하고 대응하는 데 도움이 될 수 있습니다. 여기에는 침입 감지 및 방지 시스템 구현, 비정상적인 활동에 대한 경고 설정, 잠재적인 보안 사고에 대한 정기적인 로그 검토가 포함됩니다.
  • 직원과 고객을 위한 보안 교육 제공: 직원과 고객에게 최상의 보안 사례를 교육하면 사회 공학 공격의 위험을 줄이고 전반적인 보안 인식을 개선하는 데 도움이 될 수 있습니다.

다음까지!!