---
read_when:
    - 보안 태세 또는 위협 시나리오 검토
    - 보안 기능 또는 감사 대응 작업
summary: MITRE ATLAS 프레임워크에 매핑된 OpenClaw 위협 모델
title: 위협 모델 (MITRE ATLAS)
x-i18n:
    generated_at: "2026-05-06T18:00:30Z"
    model: gpt-5.5
    provider: openai
    source_hash: e7371231e9795cd899d727b87dfba7a5cae963f1fd1e50226e3fbb7488ef7381
    source_path: security/THREAT-MODEL-ATLAS.md
    workflow: 16
---

## MITRE ATLAS 프레임워크

**버전:** 1.0-draft
**마지막 업데이트:** 2026-02-04
**방법론:** MITRE ATLAS + 데이터 흐름 다이어그램
**프레임워크:** [MITRE ATLAS](https://atlas.mitre.org/) (AI 시스템을 위한 적대적 위협 환경)

### 프레임워크 출처

이 위협 모델은 AI/ML 시스템에 대한 적대적 위협을 문서화하기 위한 업계 표준 프레임워크인 [MITRE ATLAS](https://atlas.mitre.org/)를 기반으로 합니다. ATLAS는 AI 보안 커뮤니티와 협력하여 [MITRE](https://www.mitre.org/)에서 유지 관리합니다.

**주요 ATLAS 리소스:**

- [ATLAS 기법](https://atlas.mitre.org/techniques/)
- [ATLAS 전술](https://atlas.mitre.org/tactics/)
- [ATLAS 사례 연구](https://atlas.mitre.org/studies/)
- [ATLAS GitHub](https://github.com/mitre-atlas/atlas-data)
- [ATLAS에 기여하기](https://atlas.mitre.org/resources/contribute)

### 이 위협 모델에 기여하기

이 문서는 OpenClaw 커뮤니티가 유지 관리하는 지속적으로 갱신되는 문서입니다. 기여 지침은 [CONTRIBUTING-THREAT-MODEL.md](/ko/security/CONTRIBUTING-THREAT-MODEL)를 참조하세요.

- 새로운 위협 보고
- 기존 위협 업데이트
- 공격 체인 제안
- 완화 방안 제안

---

## 1. 소개

### 1.1 목적

이 위협 모델은 AI/ML 시스템을 위해 특별히 설계된 MITRE ATLAS 프레임워크를 사용하여 OpenClaw AI 에이전트 플랫폼과 ClawHub Skills 마켓플레이스에 대한 적대적 위협을 문서화합니다.

### 1.2 범위

| 구성 요소               | 포함 여부 | 참고                                             |
| ---------------------- | -------- | ------------------------------------------------ |
| OpenClaw 에이전트 런타임 | 예       | 핵심 에이전트 실행, 도구 호출, 세션              |
| Gateway                | 예       | 인증, 라우팅, 채널 통합                          |
| 채널 통합              | 예       | WhatsApp, Telegram, Discord, Signal, Slack 등     |
| ClawHub 마켓플레이스    | 예       | Skill 게시, 모더레이션, 배포                     |
| MCP 서버               | 예       | 외부 도구 제공자                                 |
| 사용자 기기            | 일부     | 모바일 앱, 데스크톱 클라이언트                   |

### 1.3 범위 제외

이 위협 모델에서 명시적으로 범위에서 제외된 것은 없습니다.

---

## 2. 시스템 아키텍처

### 2.1 신뢰 경계

```
┌─────────────────────────────────────────────────────────────────┐
│                    UNTRUSTED ZONE                                │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐              │
│  │  WhatsApp   │  │  Telegram   │  │   Discord   │  ...         │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘              │
│         │                │                │                      │
└─────────┼────────────────┼────────────────┼──────────────────────┘
          │                │                │
          ▼                ▼                ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 1: Channel Access                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      GATEWAY                              │   │
│  │  • Device Pairing (1h DM / 5m node grace period)           │   │
│  │  • AllowFrom / AllowList validation                       │   │
│  │  • Token/Password/Tailscale auth                          │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 2: Session Isolation              │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                   AGENT SESSIONS                          │   │
│  │  • Session key = agent:channel:peer                       │   │
│  │  • Tool policies per agent                                │   │
│  │  • Transcript logging                                     │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 3: Tool Execution                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                  EXECUTION SANDBOX                        │   │
│  │  • Docker sandbox OR Host (exec-approvals)                │   │
│  │  • Node remote execution                                  │   │
│  │  • SSRF protection (DNS pinning + IP blocking)            │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 4: External Content               │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              FETCHED URLs / EMAILS / WEBHOOKS             │   │
│  │  • External content wrapping (XML tags)                   │   │
│  │  • Security notice injection                              │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 5: Supply Chain                   │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      CLAWHUB                              │   │
│  │  • Skill publishing (semver, SKILL.md required)           │   │
│  │  • Pattern-based moderation flags                         │   │
│  │  • VirusTotal scanning (coming soon)                      │   │
│  │  • GitHub account age verification                        │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘
```

### 2.2 데이터 흐름

| 흐름 | 출처    | 대상        | 데이터             | 보호                  |
| ---- | ------- | ----------- | ------------------ | -------------------- |
| F1   | 채널    | Gateway     | 사용자 메시지      | TLS, AllowFrom       |
| F2   | Gateway | 에이전트    | 라우팅된 메시지    | 세션 격리            |
| F3   | 에이전트 | 도구        | 도구 호출          | 정책 적용            |
| F4   | 에이전트 | 외부        | web_fetch 요청     | SSRF 차단            |
| F5   | ClawHub | 에이전트    | Skill 코드         | 모더레이션, 스캔     |
| F6   | 에이전트 | 채널        | 응답               | 출력 필터링          |

---

## 3. ATLAS 전술별 위협 분석

### 3.1 정찰 (AML.TA0002)

#### T-RECON-001: 에이전트 엔드포인트 탐색

| 속성                    | 값                                                                   |
| ----------------------- | -------------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0006 - 능동 스캔                                                |
| **설명**                | 공격자가 노출된 OpenClaw gateway 엔드포인트를 스캔함                 |
| **공격 벡터**           | 네트워크 스캔, shodan 쿼리, DNS 열거                                  |
| **영향을 받는 구성 요소** | Gateway, 노출된 API 엔드포인트                                      |
| **현재 완화 방안**      | Tailscale 인증 옵션, 기본적으로 loopback에 바인딩                    |
| **잔여 위험**           | 중간 - 공개 Gateway는 발견될 수 있음                                 |
| **권장 사항**           | 안전한 배포를 문서화하고 탐색 엔드포인트에 속도 제한 추가            |

#### T-RECON-002: 채널 통합 프로빙

| 속성                    | 값                                                               |
| ----------------------- | ------------------------------------------------------------------ |
| **ATLAS ID**            | AML.T0006 - 능동 스캐닝                                        |
| **Description**         | 공격자가 AI 관리 계정을 식별하기 위해 메시징 채널을 탐색함 |
| **Attack Vector**       | 테스트 메시지 전송, 응답 패턴 관찰                 |
| **Affected Components** | 모든 채널 연동                                           |
| **Current Mitigations** | 특정 대응책 없음                                                      |
| **Residual Risk**       | 낮음 - 발견만으로 얻는 가치가 제한적                           |
| **Recommendations**     | 응답 타이밍 무작위화 고려                             |

---

### 3.2 초기 접근 (AML.TA0004)

#### T-ACCESS-001: 페어링 코드 가로채기

| 속성                    | 값                                                                                                         |
| ----------------------- | ------------------------------------------------------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0040 - AI 모델 추론 API 접근                                                                     |
| **Description**         | 공격자가 페어링 유예 기간(DM 채널 페어링은 1시간, Node 페어링은 5분) 동안 페어링 코드를 가로챔 |
| **Attack Vector**       | 어깨너머 훔쳐보기, 네트워크 스니핑, 사회공학                                                        |
| **Affected Components** | 기기 페어링 시스템                                                                                         |
| **Current Mitigations** | 1시간 만료(DM 페어링) / 5분 만료(Node 페어링), 기존 채널을 통해 코드 전송                            |
| **Residual Risk**       | 중간 - 유예 기간이 악용될 수 있음                                                                             |
| **Recommendations**     | 유예 기간 단축, 확인 단계 추가                                                                    |

#### T-ACCESS-002: AllowFrom 스푸핑

| 속성                    | 값                                                                          |
| ----------------------- | ------------------------------------------------------------------------------ |
| **ATLAS ID**            | AML.T0040 - AI 모델 추론 API 접근                                      |
| **Description**         | 공격자가 채널에서 허용된 발신자 신원을 스푸핑함                             |
| **Attack Vector**       | 채널에 따라 다름 - 전화번호 스푸핑, 사용자 이름 사칭             |
| **Affected Components** | 채널별 AllowFrom 검증                                               |
| **Current Mitigations** | 채널별 신원 확인                                         |
| **Residual Risk**       | 중간 - 일부 채널은 스푸핑에 취약함                                  |
| **Recommendations**     | 채널별 위험 문서화, 가능한 경우 암호학적 검증 추가 |

#### T-ACCESS-003: 토큰 탈취

| 속성                    | 값                                                       |
| ----------------------- | ----------------------------------------------------------- |
| **ATLAS ID**            | AML.T0040 - AI 모델 추론 API 접근                   |
| **Description**         | 공격자가 구성 파일에서 인증 토큰을 훔침     |
| **Attack Vector**       | 악성코드, 무단 기기 접근, 구성 백업 노출 |
| **Affected Components** | ~/.openclaw/credentials/, 구성 저장소                    |
| **Current Mitigations** | 파일 권한                                            |
| **Residual Risk**       | 높음 - 토큰이 평문으로 저장됨                           |
| **Recommendations**     | 저장 시 토큰 암호화 구현, 토큰 순환 추가      |

---

### 3.3 실행 (AML.TA0005)

#### T-EXEC-001: 직접 프롬프트 인젝션

| 속성                    | 값                                                                                     |
| ----------------------- | ----------------------------------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0051.000 - LLM 프롬프트 인젝션: 직접                                              |
| **Description**         | 공격자가 에이전트 동작을 조작하기 위해 조작된 프롬프트를 보냄                               |
| **Attack Vector**       | 적대적 지시가 포함된 채널 메시지                                      |
| **Affected Components** | 에이전트 LLM, 모든 입력 표면                                                             |
| **Current Mitigations** | 패턴 감지, 외부 콘텐츠 래핑                                              |
| **Residual Risk**       | 치명적 - 감지만 수행되고 차단은 없음; 정교한 공격은 우회함                      |
| **Recommendations**     | 다층 방어, 출력 검증, 민감한 작업에 대한 사용자 확인 구현 |

#### T-EXEC-002: 간접 프롬프트 인젝션

| 속성                    | 값                                                       |
| ----------------------- | ----------------------------------------------------------- |
| **ATLAS ID**            | AML.T0051.001 - LLM 프롬프트 인젝션: 간접              |
| **Description**         | 공격자가 가져온 콘텐츠에 악성 지시를 삽입함   |
| **Attack Vector**       | 악성 URL, 오염된 이메일, 침해된 Webhook       |
| **Affected Components** | web_fetch, 이메일 수집, 외부 데이터 소스           |
| **Current Mitigations** | XML 태그와 보안 고지로 콘텐츠 래핑          |
| **Residual Risk**       | 높음 - LLM이 래퍼 지시를 무시할 수 있음                  |
| **Recommendations**     | 콘텐츠 정제, 별도 실행 컨텍스트 구현 |

#### T-EXEC-003: 도구 인수 인젝션

| 속성                    | 값                                                        |
| ----------------------- | ------------------------------------------------------------ |
| **ATLAS ID**            | AML.T0051.000 - LLM 프롬프트 인젝션: 직접                 |
| **Description**         | 공격자가 프롬프트 인젝션을 통해 도구 인수를 조작함 |
| **Attack Vector**       | 도구 매개변수 값에 영향을 주는 조작된 프롬프트         |
| **Affected Components** | 모든 도구 호출                                         |
| **Current Mitigations** | 위험한 명령에 대한 Exec 승인                        |
| **Residual Risk**       | 높음 - 사용자 판단에 의존함                               |
| **Recommendations**     | 인수 검증, 매개변수화된 도구 호출 구현      |

#### T-EXEC-004: Exec 승인 우회

| 속성                    | 값                                                      |
| ----------------------- | ---------------------------------------------------------- |
| **ATLAS ID**            | AML.T0043 - 적대적 데이터 제작                         |
| **Description**         | 공격자가 승인 허용 목록을 우회하는 명령을 제작함    |
| **Attack Vector**       | 명령 난독화, 별칭 악용, 경로 조작 |
| **Affected Components** | exec-approvals.ts, 명령 허용 목록                       |
| **Current Mitigations** | 허용 목록 + ask 모드                                       |
| **Residual Risk**       | 높음 - 명령 정규화 없음                             |
| **Recommendations**     | 명령 정규화 구현, 차단 목록 확장          |

---

### 3.4 지속성 (AML.TA0006)

#### T-PERSIST-001: 악성 Skill 설치

| 속성                    | 값                                                                    |
| ----------------------- | ------------------------------------------------------------------------ |
| **ATLAS ID**            | AML.T0010.001 - 공급망 침해: AI 소프트웨어                     |
| **Description**         | 공격자가 ClawHub에 악성 Skill을 게시함                            |
| **Attack Vector**       | 계정 생성, 숨겨진 악성 코드가 포함된 Skill 게시                 |
| **Affected Components** | ClawHub, Skill 로딩, 에이전트 실행                                  |
| **Current Mitigations** | GitHub 계정 연령 확인, 패턴 기반 조정 플래그          |
| **Residual Risk**       | 치명적 - 샌드박싱 없음, 검토 제한적                                 |
| **Recommendations**     | VirusTotal 연동(진행 중), Skill 샌드박싱, 커뮤니티 검토 |

#### T-PERSIST-002: Skill 업데이트 오염

| 속성                    | 값                                                          |
| ----------------------- | -------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0010.001 - 공급망 침해: AI 소프트웨어           |
| **Description**         | 공격자가 인기 Skill을 침해하고 악성 업데이트를 푸시함 |
| **Attack Vector**       | 계정 침해, Skill 소유자에 대한 사회공학          |
| **Affected Components** | ClawHub 버전 관리, 자동 업데이트 흐름                          |
| **Current Mitigations** | 버전 지문                                         |
| **Residual Risk**       | 높음 - 자동 업데이트가 악성 버전을 가져올 수 있음                |
| **Recommendations**     | 업데이트 서명, 롤백 기능, 버전 고정 구현 |

#### T-PERSIST-003: 에이전트 구성 변조

| 속성                    | 값                                                           |
| ----------------------- | --------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0010.002 - 공급망 침해: 데이터                   |
| **Description**         | 공격자가 접근을 지속하기 위해 에이전트 구성을 수정함         |
| **Attack Vector**       | 구성 파일 수정, 설정 인젝션                    |
| **Affected Components** | 에이전트 구성, 도구 정책                                     |
| **Current Mitigations** | 파일 권한                                                |
| **Residual Risk**       | 중간 - 로컬 접근 필요                                  |
| **Recommendations**     | 구성 무결성 검증, 구성 변경에 대한 감사 로깅 |

---

### 3.5 방어 회피 (AML.TA0007)

#### T-EVADE-001: 조정 패턴 우회

| 속성                    | 값                                                                  |
| ----------------------- | ---------------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0043 - 적대적 데이터 제작                                     |
| **Description**         | 공격자가 조정 패턴을 회피하도록 Skill 콘텐츠를 제작함             |
| **Attack Vector**       | 유니코드 동형문자, 인코딩 기법, 동적 로딩                   |
| **Affected Components** | ClawHub moderation.ts                                                  |
| **Current Mitigations** | 패턴 기반 FLAG_RULES                                               |
| **Residual Risk**       | 높음 - 단순 정규식은 쉽게 우회됨                                    |
| **Recommendations**     | 동작 분석(VirusTotal Code Insight), AST 기반 감지 추가 |

#### T-EVADE-002: 콘텐츠 래퍼 이탈

| 속성                    | 값                                                        |
| ----------------------- | --------------------------------------------------------- |
| **ATLAS ID**            | AML.T0043 - 적대적 데이터 제작                            |
| **설명**                | 공격자가 XML 래퍼 컨텍스트를 벗어나는 콘텐츠를 제작함     |
| **공격 벡터**           | 태그 조작, 컨텍스트 혼동, 지시문 재정의                   |
| **영향받는 구성 요소**  | 외부 콘텐츠 래핑                                          |
| **현재 완화책**         | XML 태그 + 보안 고지                                      |
| **잔여 위험**           | 중간 - 새로운 우회 기법이 정기적으로 발견됨               |
| **권장 사항**           | 여러 래퍼 계층, 출력 측 검증                              |

---

### 3.6 발견 (AML.TA0008)

#### T-DISC-001: 도구 열거

| 속성                    | 값                                                   |
| ----------------------- | ---------------------------------------------------- |
| **ATLAS ID**            | AML.T0040 - AI 모델 추론 API 접근                    |
| **설명**                | 공격자가 프롬프트를 통해 사용 가능한 도구를 열거함   |
| **공격 벡터**           | "어떤 도구를 가지고 있나요?" 스타일의 질의           |
| **영향받는 구성 요소**  | 에이전트 도구 레지스트리                             |
| **현재 완화책**         | 특정 없음                                            |
| **잔여 위험**           | 낮음 - 도구는 일반적으로 문서화되어 있음             |
| **권장 사항**           | 도구 가시성 제어 고려                                |

#### T-DISC-002: 세션 데이터 추출

| 속성                    | 값                                                   |
| ----------------------- | ---------------------------------------------------- |
| **ATLAS ID**            | AML.T0040 - AI 모델 추론 API 접근                    |
| **설명**                | 공격자가 세션 컨텍스트에서 민감한 데이터를 추출함    |
| **공격 벡터**           | "우리가 무엇을 논의했나요?" 질의, 컨텍스트 탐색      |
| **영향받는 구성 요소**  | 세션 기록, 컨텍스트 창                               |
| **현재 완화책**         | 발신자별 세션 격리                                   |
| **잔여 위험**           | 중간 - 세션 내 데이터에 접근 가능                    |
| **권장 사항**           | 컨텍스트 내 민감한 데이터 삭제 구현                  |

---

### 3.7 수집 및 유출 (AML.TA0009, AML.TA0010)

#### T-EXFIL-001: web_fetch를 통한 데이터 절도

| 속성                    | 값                                                                    |
| ----------------------- | --------------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0009 - 수집                                                      |
| **설명**                | 공격자가 에이전트에게 외부 URL로 보내도록 지시하여 데이터를 유출함    |
| **공격 벡터**           | 에이전트가 공격자 서버로 데이터를 POST하게 하는 프롬프트 인젝션       |
| **영향받는 구성 요소**  | web_fetch 도구                                                        |
| **현재 완화책**         | 내부 네트워크에 대한 SSRF 차단                                        |
| **잔여 위험**           | 높음 - 외부 URL 허용                                                  |
| **권장 사항**           | URL 허용 목록, 데이터 분류 인식 구현                                  |

#### T-EXFIL-002: 무단 메시지 전송

| 속성                    | 값                                                               |
| ----------------------- | ---------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0009 - 수집                                                 |
| **설명**                | 공격자가 에이전트가 민감한 데이터를 포함한 메시지를 보내게 함    |
| **공격 벡터**           | 에이전트가 공격자에게 메시지를 보내게 하는 프롬프트 인젝션       |
| **영향받는 구성 요소**  | 메시지 도구, 채널 통합                                           |
| **현재 완화책**         | 아웃바운드 메시징 게이팅                                         |
| **잔여 위험**           | 중간 - 게이팅이 우회될 수 있음                                   |
| **권장 사항**           | 새 수신자에 대한 명시적 확인 요구                                |

#### T-EXFIL-003: 자격 증명 수집

| 속성                    | 값                                                         |
| ----------------------- | ---------------------------------------------------------- |
| **ATLAS ID**            | AML.T0009 - 수집                                           |
| **설명**                | 악성 skill이 에이전트 컨텍스트에서 자격 증명을 수집함      |
| **공격 벡터**           | Skill 코드가 환경 변수, 구성 파일을 읽음                   |
| **영향받는 구성 요소**  | Skill 실행 환경                                            |
| **현재 완화책**         | Skills에 특화된 것 없음                                    |
| **잔여 위험**           | 치명적 - Skills가 에이전트 권한으로 실행됨                 |
| **권장 사항**           | Skill 샌드박싱, 자격 증명 격리                             |

---

### 3.8 영향 (AML.TA0011)

#### T-IMPACT-001: 무단 명령 실행

| 속성                    | 값                                                       |
| ----------------------- | -------------------------------------------------------- |
| **ATLAS ID**            | AML.T0031 - AI 모델 무결성 약화                          |
| **설명**                | 공격자가 사용자 시스템에서 임의 명령을 실행함            |
| **공격 벡터**           | exec 승인 우회와 결합된 프롬프트 인젝션                  |
| **영향받는 구성 요소**  | Bash 도구, 명령 실행                                     |
| **현재 완화책**         | Exec 승인, Docker 샌드박스 옵션                          |
| **잔여 위험**           | 치명적 - 샌드박스 없는 호스트 실행                       |
| **권장 사항**           | 기본값을 샌드박스로 설정, 승인 UX 개선                   |

#### T-IMPACT-002: 리소스 고갈 (DoS)

| 속성                    | 값                                                       |
| ----------------------- | -------------------------------------------------------- |
| **ATLAS ID**            | AML.T0031 - AI 모델 무결성 약화                          |
| **설명**                | 공격자가 API 크레딧 또는 컴퓨팅 리소스를 고갈시킴        |
| **공격 벡터**           | 자동화된 메시지 플러딩, 비용이 큰 도구 호출              |
| **영향받는 구성 요소**  | Gateway, 에이전트 세션, API 제공자                       |
| **현재 완화책**         | 없음                                                     |
| **잔여 위험**           | 높음 - 속도 제한 없음                                    |
| **권장 사항**           | 발신자별 속도 제한, 비용 예산 구현                       |

#### T-IMPACT-003: 평판 손상

| 속성                    | 값                                                            |
| ----------------------- | ------------------------------------------------------------- |
| **ATLAS ID**            | AML.T0031 - AI 모델 무결성 약화                               |
| **설명**                | 공격자가 에이전트가 유해하거나 공격적인 콘텐츠를 보내게 함    |
| **공격 벡터**           | 부적절한 응답을 유발하는 프롬프트 인젝션                      |
| **영향받는 구성 요소**  | 출력 생성, 채널 메시징                                        |
| **현재 완화책**         | LLM 제공자 콘텐츠 정책                                        |
| **잔여 위험**           | 중간 - 제공자 필터가 불완전함                                 |
| **권장 사항**           | 출력 필터링 계층, 사용자 제어                                 |

---

## 4. ClawHub 공급망 분석

### 4.1 현재 보안 제어

| 제어                 | 구현                        | 효과성                                                       |
| -------------------- | --------------------------- | ------------------------------------------------------------ |
| GitHub 계정 기간     | `requireGitHubAccountAge()` | 중간 - 신규 공격자의 진입 장벽을 높임                       |
| 경로 정리            | `sanitizePath()`            | 높음 - 경로 순회 방지                                       |
| 파일 유형 검증       | `isTextFile()`              | 중간 - 텍스트 파일만 허용하지만 여전히 악성일 수 있음       |
| 크기 제한            | 총 50MB 번들                | 높음 - 리소스 고갈 방지                                     |
| 필수 SKILL.md        | 필수 readme                 | 낮은 보안 가치 - 정보 제공용일 뿐                           |
| 패턴 모더레이션      | moderation.ts의 FLAG_RULES  | 낮음 - 쉽게 우회 가능                                       |
| 모더레이션 상태      | `moderationStatus` 필드     | 중간 - 수동 검토 가능                                       |

### 4.2 모더레이션 플래그 패턴

`moderation.ts`의 현재 패턴:

```javascript
// Known-bad identifiers
/(keepcold131\/ClawdAuthenticatorTool|ClawdAuthenticatorTool)/i

// Suspicious keywords
/(malware|stealer|phish|phishing|keylogger)/i
/(api[-_ ]?key|token|password|private key|secret)/i
/(wallet|seed phrase|mnemonic|crypto)/i
/(discord\.gg|webhook|hooks\.slack)/i
/(curl[^\n]+\|\s*(sh|bash))/i
/(bit\.ly|tinyurl\.com|t\.co|goo\.gl|is\.gd)/i
```

**제한 사항:**

- slug, displayName, summary, frontmatter, metadata, 파일 경로만 검사함
- 실제 Skill 코드 콘텐츠를 분석하지 않음
- 단순 정규식은 난독화로 쉽게 우회 가능
- 행동 분석 없음

### 4.3 계획된 개선 사항

| 개선 사항              | 상태                                      | 영향                                                                  |
| ---------------------- | ----------------------------------------- | --------------------------------------------------------------------- |
| VirusTotal 통합        | 진행 중                                   | 높음 - Code Insight 행동 분석                                         |
| 커뮤니티 신고          | 부분적 (`skillReports` 테이블 존재)       | 중간                                                                  |
| 감사 로깅              | 부분적 (`auditLogs` 테이블 존재)          | 중간                                                                  |
| 배지 시스템            | 구현됨                                    | 중간 - `highlighted`, `official`, `deprecated`, `redactionApproved`   |

---

## 5. 위험 매트릭스

### 5.1 가능성 대비 영향

| 위협 ID       | 가능성 | 영향     | 위험 수준    | 우선순위 |
| ------------- | ------ | -------- | ------------ | -------- |
| T-EXEC-001    | 높음   | 치명적   | **치명적**   | P0       |
| T-PERSIST-001 | 높음   | 치명적   | **치명적**   | P0       |
| T-EXFIL-003   | 중간   | 치명적   | **치명적**   | P0       |
| T-IMPACT-001  | 중간   | 치명적   | **높음**     | P1       |
| T-EXEC-002    | 높음   | 높음     | **높음**     | P1       |
| T-EXEC-004    | 중간   | 높음     | **높음**     | P1       |
| T-ACCESS-003  | 중간   | 높음     | **높음**     | P1       |
| T-EXFIL-001   | 중간   | 높음     | **높음**     | P1       |
| T-IMPACT-002  | 높음   | 중간     | **높음**     | P1       |
| T-EVADE-001   | 높음   | 중간     | **중간**     | P2       |
| T-ACCESS-001  | 낮음   | 높음     | **중간**     | P2       |
| T-ACCESS-002  | 낮음   | 높음     | **중간**     | P2       |
| T-PERSIST-002 | 낮음   | 높음     | **중간**     | P2       |

### 5.2 중요 경로 공격 체인

**공격 체인 1: Skill 기반 데이터 절도**

```
T-PERSIST-001 → T-EVADE-001 → T-EXFIL-003
(악성 skill 게시) → (모더레이션 회피) → (자격 증명 수집)
```

**공격 체인 2: 프롬프트 인젝션에서 RCE로**

```
T-EXEC-001 → T-EXEC-004 → T-IMPACT-001
(프롬프트 주입) → (exec 승인 우회) → (명령 실행)
```

**공격 체인 3: 가져온 콘텐츠를 통한 간접 인젝션**

```
T-EXEC-002 → T-EXFIL-001 → 외부 유출
(URL 콘텐츠 오염) → (에이전트가 가져와 지시를 따름) → (공격자에게 데이터 전송)
```

---

## 6. 권장 사항 요약

### 6.1 즉시 (P0)

| ID    | 권장 사항                                   | 해결 대상                  |
| ----- | ------------------------------------------- | -------------------------- |
| R-001 | VirusTotal 통합 완료                        | T-PERSIST-001, T-EVADE-001 |
| R-002 | Skill 샌드박싱 구현                         | T-PERSIST-001, T-EXFIL-003 |
| R-003 | 민감한 작업에 대한 출력 검증 추가           | T-EXEC-001, T-EXEC-002     |

### 6.2 단기(P1)

| ID    | 권장 사항                                  | 해결 대상    |
| ----- | ------------------------------------------ | ------------ |
| R-004 | 속도 제한 구현                             | T-IMPACT-002 |
| R-005 | 저장 시 토큰 암호화 추가                   | T-ACCESS-003 |
| R-006 | exec 승인 UX 및 검증 개선                  | T-EXEC-004   |
| R-007 | web_fetch에 대한 URL 허용 목록 구현        | T-EXFIL-001  |

### 6.3 중기(P2)

| ID    | 권장 사항                                      | 해결 대상     |
| ----- | ---------------------------------------------- | ------------- |
| R-008 | 가능한 경우 암호학적 채널 검증 추가           | T-ACCESS-002  |
| R-009 | 설정 무결성 검증 구현                          | T-PERSIST-003 |
| R-010 | 업데이트 서명 및 버전 고정 추가                | T-PERSIST-002 |

---

## 7. 부록

### 7.1 ATLAS 기법 매핑

| ATLAS ID      | 기법 이름                      | OpenClaw 위협                                                   |
| ------------- | ------------------------------ | ---------------------------------------------------------------- |
| AML.T0006     | 능동 스캔                      | T-RECON-001, T-RECON-002                                         |
| AML.T0009     | 수집                           | T-EXFIL-001, T-EXFIL-002, T-EXFIL-003                            |
| AML.T0010.001 | 공급망: AI 소프트웨어          | T-PERSIST-001, T-PERSIST-002                                     |
| AML.T0010.002 | 공급망: 데이터                 | T-PERSIST-003                                                    |
| AML.T0031     | AI 모델 무결성 약화            | T-IMPACT-001, T-IMPACT-002, T-IMPACT-003                         |
| AML.T0040     | AI 모델 추론 API 접근          | T-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002 |
| AML.T0043     | 적대적 데이터 제작             | T-EXEC-004, T-EVADE-001, T-EVADE-002                             |
| AML.T0051.000 | LLM 프롬프트 인젝션: 직접      | T-EXEC-001, T-EXEC-003                                           |
| AML.T0051.001 | LLM 프롬프트 인젝션: 간접      | T-EXEC-002                                                       |

### 7.2 주요 보안 파일

| 경로                                | 목적                        | 위험 수준     |
| ----------------------------------- | --------------------------- | ------------ |
| `src/infra/exec-approvals.ts`       | 명령 승인 로직              | **심각**     |
| `src/gateway/auth.ts`               | Gateway 인증                | **심각**     |
| `src/infra/net/ssrf.ts`             | SSRF 보호                   | **심각**     |
| `src/security/external-content.ts`  | 프롬프트 인젝션 완화        | **심각**     |
| `src/agents/sandbox/tool-policy.ts` | 도구 정책 적용              | **심각**     |
| `src/routing/resolve-route.ts`      | 세션 격리                   | **중간**     |

### 7.3 용어집

| 용어                 | 정의                                                      |
| -------------------- | --------------------------------------------------------- |
| **ATLAS**            | AI 시스템을 위한 MITRE의 적대적 위협 환경                |
| **ClawHub**          | OpenClaw의 Skills 마켓플레이스                           |
| **Gateway**          | OpenClaw의 메시지 라우팅 및 인증 계층                    |
| **MCP**              | Model Context Protocol - 도구 제공자 인터페이스          |
| **프롬프트 인젝션** | 악성 지시가 입력에 삽입되는 공격                         |
| **Skill**            | OpenClaw 에이전트를 위한 다운로드 가능한 확장 기능       |
| **SSRF**             | 서버 측 요청 위조                                        |

---

_이 위협 모델은 지속적으로 갱신되는 문서입니다. 보안 문제는 security@openclaw.ai로 보고하세요_

## 관련 항목

- [정형 검증](/ko/security/formal-verification)
- [위협 모델에 기여하기](/ko/security/CONTRIBUTING-THREAT-MODEL)
