Threat ModelingSAFE
Overview
An agent skill published by revfactory.
459e1bb8f76eOBSERVED · 2026-10-12What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
---
name: threat-modeling
description: "STRIDE, DREAD, Attack Tree 등 위협 모델링 방법론과 위협 식별·평가·대응 전략 수립 가이드. 'STRIDE', 'DREAD', '위협 모델링', 'threat modeling', '공격 트리', 'attack surface', '위협 식별', '보안 설계' 등 시스템 위협 분석 시 이 스킬을 사용한다. security-consultant와 pentest-reporter의 위협 분석 역량을 강화한다. 단, 실제 침투 테스트 실행이나 CVE 스캐닝은 이 스킬의 범위가 아니다."
---
# Threat Modeling — 위협 모델링 방법론 가이드
시스템의 보안 위협을 체계적으로 식별하고 평가하는 프레임워크.
## STRIDE 위협 분류
| 위협 | 설명 | 보안 속성 | 대응 패턴 |
|------|------|----------|----------|
| **S**poofing | 신원 위장 | 인증 | MFA, 인증서 |
| **T**ampering | 데이터 변조 | 무결성 | HMAC, 디지털 서명, 체크섬 |
| **R**epudiation | 행위 부인 | 부인 방지 | 감사 로그, 타임스탬프 |
| **I**nformation Disclosure | 정보 누출 | 기밀성 | 암호화, 접근 제어 |
| **D**enial of Service | 서비스 거부 | 가용성 | Rate Limiting, 오토스케일링 |
| **E**levation of Privilege | 권한 상승 | 인가 | RBAC, 최소 권한 원칙 |
## STRIDE 적용 절차
### Step 1: 시스템 분해 (DFD 작성)
```
┌────────┐ HTTPS ┌──────────┐ SQL ┌─────────┐
│ Browser │ ──────────→ │ Web App │ ────────→ │ DB │
│(외부) │ ←────────── │(Trust │ ←──────── │(Trust │
└────────┘ │ Boundary)│ │Boundary)│
└────┬─────┘ └─────────┘
│ REST API
▼
┌──────────┐
│ 외부 PG │
│(외부) │
└──────────┘
Trust Boundary(신뢰 경계)에서 위협이 발생한다.
```
### Step 2: 요소별 STRIDE 분석
```markdown
## Browser → Web App (HTTPS)
| 위협 | 시나리오 | 위험도 | 대응 |
|------|---------|--------|------|
| S | 세션 하이재킹 | 높음 | HttpOnly, Secure 쿠키 |
| T | 중간자 공격 | 높음 | TLS 1.3, HSTS |
| R | 익명 요청 | 중간 | 요청 로깅, 인증 필수 |
| I | 전송 중 도청 | 높음 | TLS |
| D | DDoS | 높음 | WAF, Rate Limiting |
| E | 관리자 API 접근 | 높음 | 역할 기반 접근 제어 |
```
## DREAD 위험 평가
```
각 항목 1~10점 평가:
D (Damage): 피해 규모
R (Reproducibility): 재현 용이성
E (Exploitability): 공격 용이성
A (Affected Users): 영향 사용자 비율
D (Discoverability): 발견 용이성
위험도 = (D + R + E + A + D) / 5
등급:
├── 8~10: Critical (즉시 대응)
├── 5~7: High (계획된 수정)
├── 3~4: Medium (모니터링)
└── 1~2: Low (수용)
```
### 예시 평가
```
위협: SQL Injection in Login API
├── Damage: 9 (전체 DB 탈취 가능)
├── Reproducibility: 8 (자동화 도구 존재)
├── Exploitability: 7 (공개 PoC 다수)
├── Affected Users: 10 (전체 사용자)
├── Discoverability: 9 (자동 스캐너로 발견)
└── 위험도: (9+8+7+10+9)/5 = 8.6 → Critical
```
## Attack Tree
```
목표: 관리자 권한 획득
├── OR: 인증 우회
│ ├── AND: SQL Injection + 약한 비밀번호 해시
│ ├── 세션 하이재킹
│ │ ├── OR: XSS로 쿠키 탈취
│ │ └── OR: 네트워크 스니핑 (HTTP)
│ └── 디폴트 관리자 계정
├── OR: 권한 상승
│ ├── IDOR (관리자 API 직접 호출)
│ ├── JWT 변조 (role 필드)
│ └── API Gateway 우회
└── OR: 사회공학
├── 관리자 피싱
└── 내부자 공모
```
## 공격 표면 분석
### 웹 애플리케이션 공격 표면
| 표면 | 요소 | 점검 항목 |
|------|------|----------|
| **외부 API** | REST/GraphQL 엔드포인트 | 인증, 인가, 입력 검증 |
| **인증** | 로그인, 토큰, 세션 | 브루트포스, 세션 관리 |
| **파일 업로드** | 프로필, 첨부파일 | 파일 유형 검증, 경로 조작 |
| **제3자 연동** | OAuth, Webhook, API | SSRF, 토큰 노출 |
| **관리 인터페이스** | Admin 패널, API | 접근 제어, 망 분리 |
| **데이터 저장** | DB, 캐시, 로그 | 암호화, 접근 제어 |
## 위협 모델링 보고서 템플릿
```markdown
# 위협 모델링 보고서
## 시스템 개요
- 아키텍처 다이어그램 (DFD)
- 신뢰 경계 식별
## 위협 목록
| ID | STRIDE | 위협 시나리오 | DREAD 점수 | 현재 대응 | 잔여 위험 |
|----|--------|-------------|-----------|----------|----------|
| T1 | S | 세션 하이재킹 | 7.2 | HttpOnly 쿠키 | 중간 |
| T2 | I | SQL Injection | 8.6 | 파라미터화 쿼리 | 낮음 |
## 공격 표면 요약
## 우선순위별 대응 계획
## 잔여 위험 수용 목록
```Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (0)
No findings outside the package's declared scope.
Gates applied: no_behavioural_pass.
459e1bb8f76efull audit observations/trust-audit/skill/revfactory__threat-modeling.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-12 | 459e1bb8f76e | SAFE | B | 89 | first audit |
Questions
Is Threat Modeling safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Threat Modeling access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (459e1bb8f76e), read on 2026-10-12. The repository is watched, and a new audit runs when it changes — this is the first audit.