066. PASTA (Process for Attack Simulation and Threat Analysis)
⚠️ 이 문서는 시스템이나 소프트웨어의 위험 요소를 도출할 때, 비즈니스의 중요도와 해커의 실제 공격 전술(Attack Simulation)을 결합하여 분석하는 7단계의 위협 모델링 프레임워크인 PASTA를 다룹니다.
핵심 인사이트 (3줄 요약)
- 본질: PASTA(Process for Attack Simulation and Threat Analysis)는 마이크로소프트의 STRIDE가 개발자/소프트웨어 중심인 것과 달리, '비즈니스 목표'에서 출발하여 해커의 눈(Attacker-centric)으로 시스템을 분석하는 7단계(Risk-Centric) 프레임워크다.
- 가치: "해커가 여기를 찌를 수 있다"는 기술적 분석에 그치지 않고, "이 해킹이 성공하면 비즈니스에 얼마의 타격(Risk)을 주는가?"를 끊임없이 결부시키므로, 경영진이 납득할 수 있는 가장 타당한 보안 투자 산출물을 만들어 낸다.
- 융합: 모의해킹이나 위협 인텔리전스(CTI, MITRE ATT&CK 등)와 결합하여, 이론상의 위협이 아닌 "오늘 당장 유행하는 랜섬웨어 기법"을 분석표에 반영함으로써 위협 모델링의 실전 퀄리티를 수직 상승시킨다.
Ⅰ. 개요 및 탄생 배경 (Context & Background)
과거 보안 엔지니어들은 STRIDE를 사용해 시스템의 취약점을 뽑아냈다. 문제는 수백 개의 취약점이 쏟아졌을 때, "이 취약점이 회사의 돈벌이(비즈니스)에 얼마나 위험한가?"를 설명하지 못해 경영진에게 보안 예산을 타내는 데 번번이 실패했다는 점이다.
PASTA는 이를 극복하기 위해 Tony UcedaVelez가 2012년에 발표한 프레임워크다. 이 모델의 가장 위대한 점은 1단계가 '코드 분석'이 아니라 **'비즈니스 목표 이해'**라는 점이다. 시스템이 무너지면 얼마의 손해가 발생하는지(Business Impact)를 먼저 정의한 후, 해커의 머릿속에 들어가 실제 공격을 시뮬레이션해 보는 하향식(Top-Down) 구조를 취한다.
📢 섹션 요약 비유: STRIDE가 집안의 문고리와 창문이 튼튼한지를 확인하는 '점검표'라면, PASTA는 "이 집에 숨겨진 금송아지의 가치가 얼마인지"를 먼저 확인한 뒤 "도둑이라면 저 금송아지를 훔치기 위해 어느 창문을 깰까?"를 시뮬레이션해 보는 '가상 도둑 시나리오 훈련'입니다.
Ⅱ. PASTA 7단계 프로세스 (The 7 Stages of PASTA)
PASTA는 위협 모델링을 일회성 회의가 아닌, 비즈니스와 기술이 맞물려 돌아가는 7개의 정교한 톱니바퀴로 분해한다.
| 단계 (Stage) | 명칭 (원문 / 한글 번역) | 수행 내용 및 목적 | 참여 주체 |
|---|---|---|---|
| 1단계 | Define Objectives (비즈니스 목표 정의) | 이 시스템이 돈을 버는 구조 파악. 데이터 유출이나 다운타임이 비즈니스에 미치는 금전적/법적 타격(Risk) 정의. | 비즈니스/경영진 |
| 2단계 | Define Technical Scope (기술 범위 정의) | 보호해야 할 자산의 경계 확정. 관련 서버, 코드, 클라우드 인프라, 서드파티 라이브러리 목록화. | 아키텍트/개발자 |
| 3단계 | Application Decomposition (애플리케이션 분해) | 데이터 흐름도(DFD) 작성. 데이터가 어디서 들어와 어디에 저장되는지 구성 요소 해부. | 아키텍트/보안팀 |
| 4단계 | Threat Analysis (위협 분석) | 현재 유행하는 외부 해커의 수법(MITRE ATT&CK, 공격 동기)을 바탕으로 우리 시스템에 적용 가능한 위협 도출. | 보안팀 (Threat Intel) |
| 5단계 | Vulnerability & Flaws Analysis (취약점 분석) | 시스템 소스코드나 설계도에서 위에서 도출한 위협을 실제로 얻어맞을 수 있는 결함(SQLi, 잘못된 권한) 탐색. | 개발자/보안팀 |
| 6단계 | Attack Modeling (공격 모델링) | 발견된 취약점을 해커가 어떤 순서로 밟고 들어올지 '공격 트리(Attack Tree)'를 그려 시뮬레이션함. | 모의해커(Pen-tester) |
| 7단계 | Risk & Impact Analysis (위험/영향 분석 및 대응) | 비즈니스 타격(1단계)과 해킹 성공 확률(6단계)을 종합해 최종 Risk 점수 산출. 경영진에게 방어 대책 결재. | 모든 주체 |
┌──────────────────────────────────────────────────────────────────────────────┐
│ PASTA 7단계의 비즈니스(Risk) 중심 흐름 시각화 │
├──────────────────────────────────────────────────────────────────────────────┤
│ │
│ [비즈니스/설계 (1~3단계)] │
│ (1) 비즈니스 분석: "이 결제 서버가 죽으면 시간당 1억 원 손해!" │
│ (2) 기술 범위: "AWS의 EC2 10대와 RDS 1대가 타겟이군." │
│ (3) 시스템 분해: "앱 -> API -> DB 로 데이터가 흐르는구나." (DFD 작성) │
│ │
│ [공격 시뮬레이션 (4~6단계)] │
│ (4) 위협 분석: "요즘 유행하는 랜섬웨어 그룹이 API를 노리네." │
│ (5) 취약점 분석: "우리 API 코드를 보니 인증 토큰 검증이 없네?!" │
│ (6) 공격 모델링: "해커가 API를 뚫고 들어와서 DB에 랜섬웨어를 심는 │
│ 공격 트리(Attack Tree)를 그려보자. 뚫을 확률 90%." │
│ │
│ [경영진 보고 및 방어 (7단계)] │
│ (7) 위험 분석: "시간당 1억 원 손해(1단계) × 뚫릴 확률 90%(6단계) = 치명적! │
│ 당장 WAF를 도입하고 코드를 뜯어고칩시다!" │
└──────────────────────────────────────────────────────────────────────────────┘
[다이어그램 해설] 그림에서 보듯 PASTA는 단순히 취약점(Bug)을 찾는 과정이 아니다. 시작점(1단계)과 끝점(7단계)이 철저하게 '비즈니스'에 맞춰져 있다. 아무리 뚫리기 쉬운 취약점(6단계)이라도, 그게 기밀성이나 회사 돈(1단계)과 전혀 무관한 테스트 서버라면 과감하게 쳐내고 무시할 수 있는 근거를 제공한다. 이것이 Risk-Centric(위험 중심) 모델의 진정한 위력이다.
- 📢 섹션 요약 비유: 회사 금고(비즈니스 자산)를 지키기 위해, 먼저 금고 안에 든 다이아몬드 가격을 확인하고(1단계), 금고의 도면을 뜯어본 뒤(3단계), 가짜 도둑(모의해커)을 시켜 털어보게 한 다음(6단계), 사장님께 "자물쇠를 안 바꾸면 다이아몬드 뺏깁니다"라고 보고하는 완벽한 보안 점검 시나리오입니다.
Ⅲ. 실무 적용의 파괴력: 공격 트리 (Attack Tree) 활용
PASTA의 백미는 6단계 '공격 모델링'에서 그려지는 **공격 트리(Attack Tree)**다. 이는 브루스 슈나이어(Bruce Schneier)가 고안한 개념으로, 최상위 목표(해커의 최종 목표)를 두고, 그것을 달성하기 위한 하위 방법들을 나뭇가지처럼 그려나가는 기법이다.
- 최상위 목표 (Root Node): 고객 DB 통째로 훔치기
- 방법 A: 서버 해킹 (어려움)
- 방법 A-1: 0-day 취약점 구매 (비용 1억 원)
- 방법 A-2: 방화벽 뚫기 (불가능)
- 방법 B: 관리자 권한 훔치기 (쉬움)
- 방법 B-1: 관리자에게 피싱 메일 쏘기 (비용 0원, 성공률 높음)
- 방법 B-2: 관리자 노트북 훔치기 (회사 잠입 위험)
- 방법 A: 서버 해킹 (어려움)
아키텍트는 이 트리를 그리고 나서 깨닫는다. "아, 서버 방화벽에 10억을 쓰는 것보다(방법 A 방어), 관리자 메일에 피싱 차단 솔루션과 MFA(다단계 인증)를 거는 것(방법 B 방어)이 가장 훌륭한 방어구나!"
Ⅳ. 타 모델(STRIDE)과의 차이 및 트레이드오프
- STRIDE (Microsoft): 소프트웨어 및 개발자 중심(Software-Centric). "이 코드에 어떤 공격(S,T,R,I,D,E)이 들어올까?"라는 기술적 질문에 집중한다. 가볍고 빨라서 일상적인 개발 회의에 도입하기 좋다.
- PASTA: 비즈니스 및 해커 중심(Risk/Attacker-Centric). "이 해킹이 우리 회사를 망하게 하는가?"를 따진다. 모의해커(Pen-tester)와 비즈니스 담당자가 모두 모여야 하므로 매우 무겁고, 시간과 비용이 많이 드는 대형 프로젝트에만 적용할 수 있다.
Ⅴ. 결론
"보안의 목적은 해킹을 막는 것이 아니라 비즈니스를 지키는 것이다." PASTA는 이 평범한 진리를 엔지니어링 프레임워크로 녹여낸 걸작이다. 개발자가 취약점 목록에 파묻혀 길을 잃지 않도록, 비즈니스 리스크라는 강력한 등대를 제공한다. 7단계의 고된 시뮬레이션을 끝낸 아키텍트는 경영진에게 "이 보안 패치를 안 하면 이번 달 영업 이익의 30%가 날아갑니다"라고 말할 수 있는 강력한 숫자의 무기를 손에 쥐게 된다.
📌 관련 개념 맵
- 영역: Threat Modeling (위협 모델링 프레임워크)
- 대비되는 프레임워크: STRIDE (마이크로소프트의 소프트웨어 중심 모델)
- 내부 사용 도구: Attack Tree (공격 트리), DFD (데이터 흐름도)
- 융합 분야: 모의해킹(Penetration Testing), 리스크 매니지먼트(ERM)
👶 어린이를 위한 3줄 비유 설명
- 새로 만든 로봇 장난감을 팔기 전에, 불량 악당들이 어떻게 로봇을 부수려고 할지 미리 작전 회의를 하는 거예요.
- 그냥 막연히 상상하는 게 아니라, "1단계: 이 로봇은 10만 원짜리야, 2단계: 팔다리는 플라스틱이네, 6단계: 악당이라면 망치로 팔을 때리겠지?" 하면서 차례대로 꼼꼼히 따져보는 7개의 순서랍니다.
- 이 7단계를 다 거치고 나면, 로봇 공장 사장님께 "팔에 강철을 덧대지 않으면 장난감이 안 팔려 망합니다!"라고 똑똑하게 설명할 수 있어요.