<!-- AUTO-GENERATED TRANSLATION SCAFFOLD (ko)
Source: ../exploitability-scoring.md
Review status: draft
-->

# Exploitability 부식 방법론

## 개요

ClawSec의 악용성 득점 체계는 AI 대리인 배치 (OpenClaw/NanoClaw)를 위해 특별히 디자인된 상황에 인식 취약성 평가를 제공합니다. 모든 환경을 똑같게 대우하는 일반적인 CVSS 점수와는 달리, 우리의 득점은 AI 대리인의 유일한 공격 표면 및 사용법 본을 고려하여 경고 피로를 감소시키고 행동 가능한 위협을 우선시합니다.

## 득점 수준

| 레벨 | 관능 | 의미 |
|---|---||
| `high` | 긴요한/고 | 일반적인 에이전트 배포, 즉각적인 관심 필요 |
| `medium` | 중형 | 구성에 따라 활용 가능 | 보증 조사 |
| `low` | 저소음 | 에이전트 컨텍스트, 저소득층 |
| `unknown` | 알 수없는 | 악용성을 평가하는 충분한 자료 |

## 득점 요인

# # # # # # # # # # # 1. CVSS 기본 점수 (기본값)

분석은 CVSS 기본 점수를 기초로 시작합니다.

- **CVSS ≥ 9.0**: 긴 수명 → 초기 점수 `high`
- **CVSS 7.0-8.9**: 높은 심각성 → 초기 점수 `high`
- **CVSS 4.0-6.9**: 중간 심각성 → 초기 점수 `medium`
- **CVSS 1.0-3.9**: 낮은 severity → 초기 점수 `low`
- ** CVSS**: → 초기 점수 사이트맵

# # # # # # # # # # # 2. 공격 벡터 분석 (CVSS 미터)

분석가는 CVSS v2, v3.0 및 v3.1 벡터를 구문합니다.

### 네트워크 접근성
- **AV:N** (네트워크): 네트워크에 원격으로 악용
- **AV:A** (Adjacent): 로컬 네트워크 액세스를 요구합니다.
- **AV:L** (Local): 로컬 시스템 액세스 필요
- **AV:P** (Physical): 물리적 접근

** 에이전트에 중요 **: Network-accessible 취약점은 일반적으로 네트워크 서비스로 실행되거나 외부 API 호출을 할 수 있기 때문입니다.

#### 인증 요건
- **PR:N / Au:NONE**: 인증 필요 없음 → 점수 상승
- **PR:L / Au:SINGLE**: 낮은 특전
- **PR:H / Au:MULTIPLE**: 요구되는 높은 특권 → 득점

** 에이전트에 중요 **: Unauthenticated 악용은 공개적으로 노출되는 대리인 APIs를 위해 중요합니다.

#### 사용자 상호 작용
- **UI:N**: 사용자 상호 작용이 필요 없음 → 점수 상승
- **UI:R**: 사용자의 상호 작용을 요구 → 점수를 감소

** 에이전트에 중요 **: 에이전트는 종종 자율적으로 작동하므로 사용자 상호 작용이 덜 중요합니다.

#### 공격 Complexity
- **AC:L**: 낮은 복잡성 → 점수 상승
- **AC:M / AC:H**: 중간/고단성 → 중립 또는 점수를 감소

** 에이전트에 중요 **: Low-complexity 악용은 자동화되고 대량 공격에 사용됩니다.

# # # # # # # # # # # 3. 취약점 유형 (Deployment Context)

ClawSec은 취약점 유형이 AI 에이전트 배포에 영향을 미치는 방법에 따라 점수를 조정합니다.

### 대리인 Context에 있는 높 토크 유형

** 원격 코드 실행 (RCE)* * 이름
```
Score: Always HIGH
Rationale: RCE is critical in agent deployments
```
AI Agent는 arbitrary 코드를 함수의 일부로 실행합니다. RCE 취약점은 공격자가 납치 에이전트 실행 흐름, exfiltrate credentials, 또는 다른 시스템에 피벗을 수 있습니다.

** 서버 측 요청 위조 (SSRF) * * 이름
```
Score: Elevated to HIGH if CVSS ≥ 6.0
Rationale: SSRF affects agents making external requests
```
에이전트는 외부 API, 내부 서비스에 액세스, 그리고 원격 리소스를 호출. SSRF는 공격자를 허용합니다:
- 내부 클라우드 메타데이터 서비스 접근 (AWS IMDSv1, GCP 메타데이터)
- 내부 네트워크에 Pivot
- DNS 터널링을 통한 Exfiltrate 데이터

**Path Traversal / 디렉토리 트레이널 * * 이름
```
Score: Elevated to HIGH if CVSS ≥ 6.0
Rationale: Path traversal affects agents with file access
```
Agents는 파일을 읽고, 스크립트를 실행하고, codebases를 관리합니다. Path traversal 활성화:
- 민감한 구성 파일 읽기 (.env, credentials)
- SSH 키, API 토큰 접근
- 긴요한 시스템 파일

**공유 **
```
Score: Always HIGH
Rationale: Command injection is critical in agent deployments
```
RCE와 마찬가지로 에이전트는 종종 시스템과 상호 작용하는 쉘 명령을 실행합니다. 명령 주입은 가득 차있는 체계 타협을 허용합니다.

#### 중간 리스크 유형

**Prototype 오염 (Node.js)* * 이름
```
Score: Elevated from LOW to MEDIUM
Rationale: Prototype pollution can escalate in Node.js agents
```
많은 에이전트 프레임 워크는 Node.js에서 실행됩니다. Prototype 오염은 다음과 같습니다.
- 인증 체크
- 특전 에스컬레이션
- 서비스 부인

** SQL 주입 / NoSQL 주입 **
```
Score: Elevated to HIGH if network-accessible and unauthenticated
Rationale: Injection affects agents with database access
```
데이터베이스의 대화 기록, 사용자 데이터 또는 도구 결과를 저장하는 에이전트는 주입 공격에 취약합니다.

# # # # # # 낮잠 유형

**Cross 사이트 스크립트 (XSS) * * 이름
```
Score: Reduced to MEDIUM if not network-accessible
Rationale: XSS has limited impact in headless agents
```
일반적으로 브라우저에서 HTML을 렌더링하지 마십시오. XSS 충격을 줄입니다. 그러나 에이전트 관리 UI 또는 채팅 인터페이스의 XSS는 우려가 있습니다.

# # # # # # # # # # # 4. 폭발성

`--check-exploits`가 활성화되면 분석자는 공개 악용에 대한 참조 URL을 확인합니다.

**Exploit 지표:**
- 악용-db.com / 악용-database.com
- 패킷stormsecurity.com
- github.com/exploit, github.com/poc
- metasploit 프레임 워크 모듈
- "/exploit", "/poc", "/proof-of-concept" 포함 URL

** 핵심 고각: **
- `low` → `medium` (유효한)
- `medium` → `high` (유효한)
- `unknown` → `medium` (유효한 + CVSS > 0)

**Rationale**: 공격자에 대한 기술 장벽을 낮추고 자동화 된 악용의 저명한 증가.

## 득점 알고리즘

해석기는 이 결정 나무를 따릅니다:

```
1. Parse CVSS score → set baseline (high/medium/low/unknown)
2. Parse CVSS vector → analyze attack characteristics
3. Adjust for attack vector:
   - Network-accessible + no auth + no UI → elevate to HIGH
   - Local-only access → reduce HIGH to MEDIUM
4. Adjust for vulnerability type:
   - Check against agent-specific risk categories
   - Elevate or reduce score based on deployment context
5. Check for public exploits (if enabled):
   - Elevate score if exploits detected
6. Generate rationale explaining the final score
```

## 예제

### 예제 1 : 긴 RCE (높은 폭발성)

```json
{
  "cve_id": "CVE-2024-12345",
  "cvss_score": 9.8,
  "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
  "type": "remote_code_execution",
  "description": "Unauthenticated RCE in Express.js framework"
}
```

** 분석 출력 : **
```json
{
  "exploitability_score": "high",
  "exploitability_rationale": "Critical CVSS score (9.8); remotely exploitable without authentication; RCE is critical in agent deployments"
}
```

**왜 높은 **: 긴요한 CVSS + 네트워크 접근 가능 + 아니 auth + RCE 유형.

### 예제 2 : 에이전트 API의 SSRF (높은 폭발성)

```json
{
  "cve_id": "CVE-2024-23456",
  "cvss_score": 7.3,
  "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
  "type": "server_side_request_forgery",
  "description": "SSRF in webhook handler allows internal network access"
}
```

** 분석 출력 : **
```json
{
  "exploitability_score": "high",
  "exploitability_rationale": "High CVSS score (7.3); remotely exploitable without authentication; SSRF affects agents making external requests"
}
```

**Why HIGH**: SSRF는 API 호출을 하는 에이전트에 대 한 중요 한 (최대). 인증없이 네트워크 접근 가능 위험.

### 예제 3 : 공공 폭발 (높은 폭발성)을 가진 경로 트레이널

```json
{
  "cve_id": "CVE-2024-34567",
  "cvss_score": 6.5,
  "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
  "type": "path_traversal",
  "references": [
    "https://exploit-db.com/exploits/51234",
    "https://nvd.nist.gov/vuln/detail/CVE-2024-34567"
  ]
}
```

** 분석 출력 (-check-exploits 포함) : **
```json
{
  "exploitability_score": "high",
  "exploitability_rationale": "Medium CVSS score (6.5); network accessible; path traversal affects agents with file access; public exploit available (1 source)"
}
```

**왜 높은 **: 경로 traversal + 에이전트 파일 액세스 + 공공 악용 높은 악용성에 중간 CVSS 상승.

### 예제 4 : 에이전트 UI의 XSS (중간 폭발성)

```json
{
  "cve_id": "CVE-2024-45678",
  "cvss_score": 7.1,
  "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L",
  "type": "cross_site_scripting",
  "description": "Stored XSS in agent management dashboard"
}
```

** 분석 출력 : **
```json
{
  "exploitability_score": "medium",
  "exploitability_rationale": "High CVSS score (7.1); network accessible; XSS has limited impact in headless agents"
}
```

**왜 MEDIUM**: 높은 CVSS에도 불구하고, XSS는 에이전트 배포에 덜 중요 (헤드리스 작동). 사용자의 상호 작용을 요구합니다.

### 예제 5 : 지역 Privilege 에스컬레이션 (중간 폭발성)

```json
{
  "cve_id": "CVE-2024-56789",
  "cvss_score": 8.8,
  "cvss_vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
  "type": "privilege_escalation",
  "description": "Local privilege escalation via symbolic link attack"
}
```

** 분석 출력 : **
```json
{
  "exploitability_score": "medium",
  "exploitability_rationale": "High CVSS score (8.8); requires local access"
}
```

**왜 MEDIUM **: 높은 CVSS에도 불구하고 로컬 액세스가 필요합니다. 일반적으로 로컬 에스컬레이션이 제한된 영향이 있는 컨테이너/샌드박스 환경에서 실행됩니다.

### 예 6 : Exploit (High Exploitability)의 프로토 타입 오염

```json
{
  "cve_id": "CVE-2024-67890",
  "cvss_score": 5.3,
  "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N",
  "type": "prototype_pollution",
  "description": "Prototype pollution in lodash merge function",
  "references": [
    "https://github.com/exploit/prototype-pollution-poc",
    "https://snyk.io/vuln/SNYK-JS-LODASH-1234567"
  ]
}
```

** 분석 출력 (-check-exploits 포함) : **
```json
{
  "exploitability_score": "high",
  "exploitability_rationale": "Medium CVSS score (5.3); remotely exploitable without authentication; prototype pollution can escalate in Node.js agents; public exploit available (1 source)"
}
```

**왜 HIGH**: Node.js Agent + public exploit + network-accessible에 있는 Prototype 오염은 온건한 CVSS에도 불구하고 auth = 높은 위험이 없습니다.

## ClawSec Workflows의 사용

## 자동화된 득점 (NVD 급식)

`poll-nvd-cves.yml` 워크플로우는 새로운 CVE를 자동적으로 평가합니다.

```bash
# Workflow step
python utils/analyze_exploitability.py --json --check-exploits < cve-data.json
```

`advisories/feed.json`의 자문은 다음을 포함합니다:
```json
{
  "id": "CVE-2024-12345",
  "severity": "high",
  "exploitability_score": "high",
  "exploitability_rationale": "Critical CVSS score (9.8); remotely exploitable without authentication; RCE is critical in agent deployments",
  "attack_vector_analysis": {
    "is_network_accessible": true,
    "requires_authentication": false,
    "requires_user_interaction": false,
    "complexity": "low"
  }
}
```

## 수동 분석

보안 연구원은 수동으로 CVE를 분석 할 수 있습니다 :

```bash
# Basic analysis
echo '{"cve_id":"CVE-2024-12345","cvss_score":7.3,"type":"ssrf"}' | \
  python utils/analyze_exploitability.py --json

# With exploit detection
echo '{"cve_id":"CVE-2024-12345","cvss_score":7.3,"references":["https://exploit-db.com/exploits/51234"]}' | \
  python utils/analyze_exploitability.py --json --check-exploits
```

### Exploitability에 의해 필터링

사용자는 악용성 점수에 의해 고문을 필터링 할 수 있습니다:

```bash
# Get only high-exploitability advisories
curl -s https://clawsec.prompt.security/feed.json | \
  jq '.advisories[] | select(.exploitability_score == "high")'

# Prioritize by exploitability and severity
curl -s https://clawsec.prompt.security/feed.json | \
  jq '[.advisories[] | select(.exploitability_score == "high" and .severity == "critical")] | sort_by(.cvss_score) | reverse'
```

## Backfilling Existing Advisories (역사적 유지보수)

사이트맵 QXZ는 One-off 저장소 유지 보수를 위한 역사적인 유지 보수 유틸리티로 유지됩니다.
정상적인 자문 세대의 기본 경로는 아닙니다.

선호하는 경로:

1. 명세 CI canonical 경로: init/reset과 NVD 워크플로우를 실행하여 NVD의 자문을 재개하고 파이프라인에 있는 Artifacts를 서명합니다.
2. 명세 로컬 개발자 경로: `./scripts/populate-local-feed.sh --force`를 실행하여 지역 피드를 분산시킵니다.

명시적으로 레거시 피드 콘텐츠를 복구 할 때 backfill을 사용합니다.

## 커뮤니티 공헌

커뮤니티 회원은 악용성 평가를 제출할 수 있습니다.

1. 명세 ** GitHub Issue를 통해 등록 **: CVE를 악용성 컨텍스트로 보고하기 위한 자문 템플릿 사용
2. 명세 ** 자동화된 분석**: `community-advisory.yml` 워크플로우는 커뮤니티에 등록한 CVE를 자동으로 평가합니다.
3. 명세 ** 수동 검토 **: 유지자 검토 및 승인
4. 명세 **Feed Update** : 승인 된 자문은 악용성 점수로 피드에 추가됩니다.

## 제한 및 미래 작업

## 현재 제한

1. 명세 **Static Analysis**: Scoring은 CVE metadata를 기반으로 동적 실행 시간 분석이 아닙니다.
2.**No Version Detection**: 특정 버전이 취약하다면 확인하지 않습니다.
3. 명세 ** 일정 **: 부분적인 mitigation 또는 Defense-in-depth을 고려하지 마십시오.
4. 명세 **Limited Context**: 정확한 에이전트 구성 또는 배포 툴을 알 수 없습니다.

### 미래 향상

1. 명세 **EPSS 통합 **: EPSS (Exploit Prediction Scoring System) 확률 점수
2. 명세 **KEV Matching**: CISA KEV(Known Exploited Vulnerabilities) 카탈로그를 사용한 Cross-reference
3. 명세 **Agent Profiling**: 배포된 에이전트 기능과 노출된 API를 고려
4. 명세 **Mitigation Detection**: WAF 규칙, 샌드박스링, 기타 보상 제어를 확인
5. 명세 **ML 기반 득점 **: 기계 학습을 사용하여 악용성을 예측합니다.

## 참조

- **CVSS v3.1 사양**: [https://www.first.org/cvss/v3.1/specification-document](https://www.first.org/cvss/v3.1/specification-document)
- **CVSS v2 가이드**: [https://www.first.org/cvss/v2/guide](https://www.first.org/cvss/v2/guide)
- **EPSS**: [https://www.first.org/epss/](https://www.first.org/epss/)
- **CISA KEV **: [https://www.cisa.gov/known-exploited-vulnerabilities-catalog](https://www.cisa.gov/known-exploited-vulnerabilities-catalog)
- **NVD API**: [https://nvd.nist.gov/developers/vulnerabilities](https://nvd.nist.gov/developers/vulnerabilities)

# # # # # # # # # # 관련 기사

악용성 득점 방법론을 개량하기 위하여:

1. 명세 **Submit Test Case**: `utils/analyze_exploitability.py`에 대한 테스트 케이스 추가
2. 명세 **Report False Positives/Negatives**: CVE 예제에서 GitHub 이슈 열기
3. 명세 **Propose Scoring Adjustments**: 합리적이고 예로 PR 제출
4. 명세 **Share Agent Context**: Contribute 에이전트별 취약성 패턴

See [CONTRIBUTING.md](../../CONTRIBUTING.md) for detailed contribution guidelines.

--- ---

**가입 **: [Prompt Security](https://prompt.security)
**라이센스 **: AGPL-3.0-or-later
**최근 업데이트 **: 2026-03-01
