본문 바로가기

보안

[위협 모델링] STRIDE란 무엇인가?

728x90
반응형

STRIDE는 마이크로소프트에서 개발한 위협 모델링 프레임워크로, 보안 전문가들이 시스템에서 발생할 수 있는 다양한 유형의 위협을 식별하고 분석하는 데 사용됩니다. STRIDE는 각각의 영어 단어의 첫 글자를 딴 6가지 위협 요소로 구성됩니다: Spoofing (스푸핑), Tampering (변조), Repudiation (부인), Information Disclosure (정보 유출), Denial of Service (서비스 거부), Elevation of Privilege (권한 상승)

 

1. Spoofing (스푸핑)

스푸핑은 시스템 내의 인증을 우회하여 공격자가 다른 사용자나 시스템으로 가장하는 것을 의미합니다. 주로 사용자 인증 정보(예: 사용자명과 비밀번호)를 도용하여 발생합니다.

예시: 공격자가 피싱 이메일을 통해 사용자의 로그인 정보를 획득한 후, 해당 정보를 사용해 은행 웹사이트에 로그인하는 경우. 이로 인해 공격자는 사용자의 계좌에 무단으로 접근할 수 있게 됩니다.

2. Tampering (변조)

변조는 데이터나 시스템을 불법적으로 변경하는 행위를 말합니다. 공격자는 데이터를 전송하는 중간에서 가로채 변경하거나, 저장된 데이터를 수정할 수 있습니다.

예시: 공격자가 온라인 쇼핑몰의 데이터베이스에 접근해 가격 정보를 변경하는 경우. 예를 들어, 100달러짜리 상품의 가격을 1달러로 수정해 이를 구매하는 상황입니다.

3. Repudiation (부인)

부인은 특정 행동을 했음을 부인할 수 있는 경우를 의미합니다. 즉, 사용자가 특정 행동을 했다는 증거가 없는 상황을 말합니다. 로그 기록이 없거나 충분하지 않으면 발생합니다.

예시: 사용자가 온라인에서 고가의 상품을 구매하고 나서, 자신은 결제를 하지 않았다고 주장하는 경우. 시스템에 거래 기록이나 로그가 제대로 저장되어 있지 않다면, 이를 입증하기 어렵습니다.

4. Information Disclosure (정보 유출)

정보 유출은 민감한 정보가 허가되지 않은 사용자에게 노출되는 것을 의미합니다. 데이터가 전송 중이거나 저장된 상태에서 보호되지 않는 경우 발생합니다.

예시: 웹 애플리케이션의 취약점을 이용해 공격자가 데이터베이스에서 고객의 개인정보(예: 이름, 주소, 신용카드 정보)를 탈취하는 경우.

5. Denial of Service (서비스 거부)

서비스 거부는 시스템이나 네트워크 자원을 과부하시키거나 불법적으로 접근을 차단하여 정당한 사용자가 서비스를 이용하지 못하게 하는 공격입니다.

예시: 공격자가 대량의 트래픽을 특정 웹사이트로 보내서 서버를 과부하시키고, 그 결과 정당한 사용자가 해당 웹사이트에 접근할 수 없게 되는 경우.

6. Elevation of Privilege (권한 상승)

권한 상승은 공격자가 일반 사용자 계정의 권한을 관리자 수준으로 상승시켜 시스템을 제어하는 것을 의미합니다.

예시: 일반 사용자가 시스템의 취약점을 이용해 관리자 권한을 획득하고, 이를 통해 다른 사용자 계정을 생성하거나 시스템 설정을 변경하는 경우.

 

STRIDE 분석의 활용

STRIDE 분석은 시스템의 설계 단계에서 잠재적인 위협을 식별하고 완화하기 위한 전략을 개발하는 데 유용합니다. 예를 들어, 스푸핑을 방지하기 위해 강력한 인증 메커니즘을 도입하고, 변조를 막기 위해 데이터 무결성 검사를 적용하며, 정보 유출을 막기 위해 데이터 암호화를 사용하는 등의 보안 대책을 수립할 수 있습니다.

이처럼 STRIDE 모델을 활용하면 체계적이고 종합적인 보안 대책을 마련할 수 있습니다.

 

STRIDE 분석 Tool

출처 : https://learn.microsoft.com/ko-kr/azure/security/develop/threat-modeling-tool-getting-started

ㅊSTRIDE 분석을 더 효율적이고 체계적으로 수행하기 위해 다양한 툴을 활용할 수 있습니다. 이러한 툴들은 위협 모델링 과정을 자동화하고, 잠재적인 보안 위협을 식별하고 문서화하는 데 도움을 줍니다. 주요 STRIDE 분석 툴을 몇 가지 소개하겠습니다.
 
구분
Microsoft Threat Modeling Tool 마이크로소프트에서 제공하는 Threat Modeling Tool은 STRIDE 분석을 위한 대표적인 툴입니다. 이 툴은 데이터 흐름 다이어그램(DFD)을 작성하고, 각 구성 요소에 대한 잠재적인 위협을 식별하는 데 도움을 줍니다.
주요 기능:
  • 데이터 흐름 다이어그램(DFD) 작성
  • 자동으로 위협을 식별하고 STRIDE 카테고리로 분류
  • 위협을 완화하기 위한 권장 조치 제안
  • 보고서 생성 기능
사용 예시: 개발 팀이 새로운 웹 애플리케이션을 설계할 때, Threat Modeling Tool을 사용해 DFD를 작성하고, 애플리케이션 구성 요소(예: 웹 서버, 데이터베이스 서버 등)에 대한 잠재적인 위협을 자동으로 식별합니다. 이를 통해 미리 보안 대책을 수립할 수 있습니다.
OWASP Threat Dragon OWASP(Open Web Application Security Project)에서 제공하는 Threat Dragon은 오픈 소스 위협 모델링 툴로, 웹 기반으로 동작하며 사용하기 쉽습니다. STRIDE 모델을 기반으로 위협을 식별하고 시각화하는 데 도움을 줍니다.
주요 기능:
  • 웹 기반 사용자 인터페이스
  • 데이터 흐름 다이어그램(DFD) 작성
  • STRIDE 기반 위협 분석
  • 협업 기능(여러 사용자가 함께 작업 가능)
  • 보고서 생성 기능
사용 예시: 중소기업의 보안 팀이 새로운 모바일 애플리케이션을 개발하면서 Threat Dragon을 사용해 위협 모델링을 수행합니다. 팀원들이 협력하여 DFD를 작성하고, STRIDE 모델을 기반으로 위협을 식별하며, 이를 바탕으로 보안 조치를 계획합니다.
IriusRisk IriusRisk는 위협 모델링 및 보안 요구 사항 관리를 위한 상용 툴입니다. STRIDE 모델뿐만 아니라 다양한 위협 모델링 접근 방식을 지원하며, 자동화된 위협 분석과 보안 요구 사항 관리 기능을 제공합니다.
주요 기능:
  • 데이터 흐름 다이어그램(DFD) 및 아키텍처 다이어그램 작성
  • 자동 위협 식별 및 STRIDE 분류
  • 보안 요구 사항 생성 및 추적
  • 다양한 위협 모델링 방법론 지원
  • API를 통한 다른 보안 툴과의 통합
사용 예시: 대기업의 보안 팀이 IriusRisk를 사용해 여러 시스템과 애플리케이션에 대해 위협 모델링을 수행합니다. 자동화된 위협 분석을 통해 빠르게 STRIDE 위협을 식별하고, 보안 요구 사항을 생성하여 프로젝트 관리 도구와 연동합니다.
ThreatModeler ThreatModeler는 엔터프라이즈 수준의 위협 모델링 툴로, 자동화된 위협 분석과 보안 설계 개선을 위한 기능을 제공합니다. STRIDE 모델을 포함한 다양한 위협 모델링 접근 방식을 지원합니다.
주요 기능:
  • 데이터 흐름 다이어그램(DFD) 및 시스템 아키텍처 다이어그램 작성
  • 자동화된 위협 식별 및 STRIDE 분류
  • 보안 요구 사항 및 완화 전략 제안
  • 클라우드 환경 지원(AWS, Azure 등)
  • 보고서 및 대시보드 기능
사용 예시: 금융기관의 보안 팀이 ThreatModeler를 사용해 클라우드 기반 애플리케이션의 위협 모델링을 수행합니다. 자동화된 분석을 통해 STRIDE 위협을 식별하고, 이를 바탕으로 클라우드 인프라 보안 대책을 마련합니다.
 
 
 

 

728x90
반응형