|
| 1 | +<p align="center"> |
| 2 | + <h1 align="center">security-framework-mcp</h1> |
| 3 | + <p align="center"> |
| 4 | + <strong>OWASP + NIST 통합 보안 프레임워크 MCP 서버</strong> |
| 5 | + </p> |
| 6 | + <p align="center"> |
| 7 | + <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT"></a> |
| 8 | + <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.11+-blue.svg" alt="Python 3.11+"></a> |
| 9 | + <a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/MCP-compatible-green.svg" alt="MCP Compatible"></a> |
| 10 | + </p> |
| 11 | + <p align="center"> |
| 12 | + <a href="./README.md">English</a> |
| 13 | + </p> |
| 14 | +</p> |
| 15 | + |
| 16 | +--- |
| 17 | + |
| 18 | +**3,329개 보안 데이터**를 단일 MCP 인터페이스로 검색 — **OWASP** (Top 10, API/LLM/MCP Top 10, ASVS 5.0, WSTG, MASVS, Proactive Controls, 113+ Cheat Sheets, 418+ 프로젝트)와 **NIST** (SP 800-53 1,196개 컨트롤 + 53A 평가 + 53B 기준선, CSF 2.0, Privacy Framework 1.0, SP 800-37 RMF, 613개 출판물, CMVP, NICE) — **실시간 NVD/CVE**, 컴플라이언스 매핑, STRIDE 위협 모델링, MCP 보안 평가 포함. |
| 19 | + |
| 20 | +## 빠른 시작 |
| 21 | + |
| 22 | +```bash |
| 23 | +pip install git+https://github.com/zer0-kr/security-framework-mcp.git |
| 24 | +``` |
| 25 | + |
| 26 | +Claude Desktop (`claude_desktop_config.json`): |
| 27 | + |
| 28 | +```json |
| 29 | +{ |
| 30 | + "mcpServers": { |
| 31 | + "security": { |
| 32 | + "command": "security-framework-mcp" |
| 33 | + } |
| 34 | + } |
| 35 | +} |
| 36 | +``` |
| 37 | + |
| 38 | +첫 실행 시 로컬 데이터베이스가 자동으로 생성됩니다 (~15-20초). 이후 주 1회 자동 갱신. |
| 39 | + |
| 40 | +## 데이터 소스 (19개 로컬 + 1개 실시간) |
| 41 | + |
| 42 | +### OWASP (11개) |
| 43 | + |
| 44 | +| 소스 | 레코드 | 설명 | |
| 45 | +|------|--------|------| |
| 46 | +| **프로젝트** | 418 | Flagship/Production/Lab/Incubator 전체 | |
| 47 | +| **ASVS 5.0** | 345 | 애플리케이션 보안 검증 표준 | |
| 48 | +| **WSTG** | 111 | 웹 보안 테스트 가이드 | |
| 49 | +| **Top 10 2021** | 10 | 웹 10대 보안 위험 + CWE 매핑 | |
| 50 | +| **API Top 10 2023** | 10 | API 보안 위험 | |
| 51 | +| **LLM Top 10 2025** | 10 | AI/LLM 보안 위험 | |
| 52 | +| **MCP Top 10 2025** | 10 | MCP 서버 보안 위험 | |
| 53 | +| **Proactive Controls 2024** | 10 | 개발자 방어 통제 | |
| 54 | +| **MASVS** | 23 | 모바일 앱 보안 검증 표준 | |
| 55 | +| **CWE 데이터베이스** | 39 | 주요 CWE + OWASP 교차 참조 | |
| 56 | +| **Cheat Sheets** | 113+ | 보안 구현 가이드 (온디맨드) | |
| 57 | + |
| 58 | +### NIST (8개) |
| 59 | + |
| 60 | +| 소스 | 레코드 | 설명 | |
| 61 | +|------|--------|------| |
| 62 | +| **SP 800-53 Rev. 5** | 1,196 | 보안/프라이버시 컨트롤 + **53A 평가 목표/방법** + **53B 기준선(LOW/MODERATE/HIGH)** | |
| 63 | +| **CSF 2.0** | 225 | 사이버보안 프레임워크 (6개 기능, 22개 카테고리, 197개 서브카테고리) | |
| 64 | +| **Privacy Framework 1.0** | 92 | 프라이버시 프레임워크 (5개 기능) | |
| 65 | +| **SP 800-37 RMF** | 7 | 위험 관리 프레임워크 (7단계 프로세스) | |
| 66 | +| **출판물** | 613 | NIST 사이버보안 전체 출판물 (SP 800, FIPS, IR, CSWP) | |
| 67 | +| **용어사전** | 39 | 사이버보안 핵심 용어 | |
| 68 | +| **CMVP** | 15 | FIPS 140 인증 암호 모듈 | |
| 69 | +| **NICE** | 43 | 사이버보안 인력 프레임워크 직무 역할 | |
| 70 | + |
| 71 | +### 실시간: NVD CVE API 2.0 |
| 72 | + |
| 73 | +## 도구 (33개) |
| 74 | + |
| 75 | +### OWASP 도구 |
| 76 | + |
| 77 | +| 도구 | 설명 | |
| 78 | +|------|------| |
| 79 | +| `list_projects` | 418+ 프로젝트 목록 (레벨/타입 필터) | |
| 80 | +| `search_projects` | 프로젝트 전문 검색 | |
| 81 | +| `get_project` | 프로젝트 상세 정보 | |
| 82 | +| `get_asvs` | ASVS 5.0 요구사항 (챕터/레벨/검색 필터) | |
| 83 | +| `get_wstg` | WSTG 테스트 케이스 (카테고리/검색 필터) | |
| 84 | +| `get_top10` | Top 10 2021 + CWE 매핑 | |
| 85 | +| `get_api_top10` | API Security Top 10 2023 | |
| 86 | +| `get_llm_top10` | LLM Top 10 2025 | |
| 87 | +| `get_mcp_top10` | MCP Top 10 2025 | |
| 88 | +| `get_proactive_controls` | Proactive Controls 2024 | |
| 89 | +| `get_masvs` | MASVS 모바일 보안 통제 | |
| 90 | +| `get_cheatsheet` | 113+ Cheat Sheets | |
| 91 | + |
| 92 | +### NIST 도구 |
| 93 | + |
| 94 | +| 도구 | 설명 | |
| 95 | +|------|------| |
| 96 | +| `search_nist` | 8개 NIST 소스 통합 검색 | |
| 97 | +| `get_nist_control` | SP 800-53 컨트롤 조회 — 문장, 가이드, **53A 평가**, **53B 기준선** 필터 (LOW/MODERATE/HIGH), 패밀리 필터 | |
| 98 | +| `get_nist_csf` | CSF 2.0 기능/카테고리/서브카테고리 | |
| 99 | +| `get_nist_pf` | Privacy Framework 1.0 | |
| 100 | +| `get_nist_rmf` | SP 800-37 RMF 단계별 태스크 | |
| 101 | +| `get_nist_publication` | 613개 출판물 검색/조회 | |
| 102 | +| `get_nist_glossary` | 사이버보안 용어 정의 | |
| 103 | +| `get_nist_cmvp` | FIPS 140 인증 모듈 | |
| 104 | +| `get_nice_roles` | NICE 직무 역할 | |
| 105 | + |
| 106 | +### 취약점 & CWE |
| 107 | + |
| 108 | +| 도구 | 설명 | |
| 109 | +|------|------| |
| 110 | +| `get_cwe` | CWE 조회 + OWASP 자동 교차 참조 | |
| 111 | +| `search_cve` | 실시간 NVD CVE 검색 | |
| 112 | +| `get_cve_detail` | CVE 상세 정보 (CVSS, 약점, 참조) | |
| 113 | + |
| 114 | +### 분석 & 평가 |
| 115 | + |
| 116 | +| 도구 | 설명 | |
| 117 | +|------|------| |
| 118 | +| `search_owasp` | 19개 소스 통합 검색 (OWASP + NIST) | |
| 119 | +| `cross_reference` | CWE → Top 10 / ASVS / WSTG 교차 참조 | |
| 120 | +| `compliance_map` | ASVS → PCI-DSS 4.0 / ISO 27001:2022 / NIST 800-53 매핑 | |
| 121 | +| `assess_stack` | 기술 스택 보안 진단 | |
| 122 | +| `generate_checklist` | 보안 체크리스트 생성 (프로젝트 타입 × 깊이) | |
| 123 | +| `assess_mcp_security` | MCP 서버 보안 평가 (MCP Top 10 기준) | |
| 124 | +| `threat_model` | STRIDE 위협 모델링 | |
| 125 | +| `update_database` | 인덱스 재빌드 | |
| 126 | +| `database_status` | DB 상태 확인 | |
| 127 | + |
| 128 | +## 프롬프트 템플릿 (4개) |
| 129 | + |
| 130 | +| 프롬프트 | 설명 | |
| 131 | +|---------|------| |
| 132 | +| `security_review` | OWASP + NIST 기반 보안 리뷰 워크플로우 | |
| 133 | +| `threat_analysis` | 위협 분석 — CWE 매핑, 컨트롤 추천 | |
| 134 | +| `compliance_check` | 컴플라이언스 평가 — ASVS + 테스트 절차 | |
| 135 | +| `secure_code_review` | 코드 보안 리뷰 — CWE ID + 안전한 대안 | |
| 136 | + |
| 137 | +## 사용 예시 |
| 138 | + |
| 139 | +``` |
| 140 | +> OWASP와 NIST 전체에서 "접근 제어"를 검색해줘 |
| 141 | +
|
| 142 | +> NIST SP 800-53 AC-1 컨트롤을 보여줘 |
| 143 | +
|
| 144 | +> CSF 2.0의 Protect 기능 카테고리를 보여줘 |
| 145 | +
|
| 146 | +> SP 800-53 LOW 기준선에 포함된 컨트롤 목록 |
| 147 | +
|
| 148 | +> Privacy Framework 1.0의 Control-P 기능을 보여줘 |
| 149 | +
|
| 150 | +> SP 800-37 RMF의 ASSESS 단계를 설명해줘 |
| 151 | +
|
| 152 | +> CWE-79를 OWASP와 NIST 표준으로 교차 참조해줘 |
| 153 | +
|
| 154 | +> ASVS V4를 PCI-DSS, ISO 27001, NIST 800-53에 매핑해줘 |
| 155 | +
|
| 156 | +> 내 스택(React, Node.js, PostgreSQL, REST API)의 보안을 진단해줘 |
| 157 | +
|
| 158 | +> 웹 API 프로젝트용 보안 체크리스트를 생성해줘 |
| 159 | +
|
| 160 | +> 내 MCP 서버 보안을 평가해줘: shell exec, 인증 없음, 커뮤니티 플러그인 |
| 161 | +
|
| 162 | +> NVD에서 critical log4j CVE를 검색해줘 |
| 163 | +
|
| 164 | +> STRIDE 위협 모델을 생성해줘: 결제 API, JWT 인증, PostgreSQL |
| 165 | +``` |
| 166 | + |
| 167 | +## 설정 |
| 168 | + |
| 169 | +| 환경변수 | 기본값 | 설명 | |
| 170 | +|---------|--------|------| |
| 171 | +| `SECURITY_MCP_DATA_DIR` | `~/.security-framework-mcp` | 로컬 DB 디렉토리 | |
| 172 | +| `SECURITY_MCP_UPDATE_INTERVAL` | `604800` (7일) | 자동 갱신 주기 (초) | |
| 173 | +| `NVD_API_KEY` | _(없음)_ | NVD API 키 (선택, 속도 향상) | |
| 174 | + |
| 175 | +## 개발 |
| 176 | + |
| 177 | +```bash |
| 178 | +git clone https://github.com/zer0-kr/security-framework-mcp.git |
| 179 | +cd security-framework-mcp |
| 180 | +pip install -e ".[dev]" |
| 181 | +python -m pytest tests/test_unit_db.py tests/test_unit_collectors.py -v |
| 182 | +python tests/test_comprehensive.py |
| 183 | +``` |
| 184 | + |
| 185 | +## 기여 |
| 186 | + |
| 187 | +1. Fork → 2. 브랜치 생성 → 3. 테스트 실행 → 4. PR 생성 |
| 188 | + |
| 189 | +## 라이선스 |
| 190 | + |
| 191 | +[MIT](LICENSE) |
| 192 | + |
| 193 | +--- |
| 194 | + |
| 195 | +이 프로젝트는 OWASP 재단 또는 NIST와 공식적으로 제휴하거나 보증받지 않았습니다. |
0 commit comments