Security Scanner MCP

Security Scanner MCP

Automatically detects security vulnerabilities in AI-generated code, scanning for hardcoded secrets, injection flaws, XSS, weak cryptography, authentication issues, path traversal, and vulnerable dependencies across JavaScript, Python, Java, and Go.

Category
访问服务器

README

🔒 Security Scanner MCP

AI가 생성한 코드의 보안 취약점을 자동으로 검출하는 MCP 서버입니다.

npm version npm downloads OWASP License Node

왜 필요한가요?

AI가 생성한 코드에는 보안 취약점이 322% 더 많다는 연구 결과가 있습니다. 이 MCP는 코드를 커밋하기 전에 자동으로 보안 검사를 수행합니다.

기능

Tool 설명
scan-security 종합 보안 스캔 (모든 검사를 한번에)
scan-secrets 하드코딩된 API 키, 비밀번호, 토큰 검출
scan-injection SQL Injection, Command Injection 취약점 검사
scan-xss Cross-Site Scripting 취약점 검사
scan-crypto 암호화 취약점 (약한 해시, 안전하지 않은 랜덤 등)
scan-auth 인증/세션 취약점 (JWT, 쿠키, CORS 등)
scan-path 파일/경로 취약점 (Path Traversal, 업로드 등)
scan-dependencies package.json 등에서 취약한 의존성 검사

설치

npm에서 설치 (권장)

npm install -g security-scanner-mcp

또는 소스에서 빌드

git clone https://github.com/zerry/security-scanner-mcp.git
cd security-scanner-mcp
npm install && npm run build

Claude Code에 등록

# npm 전역 설치 후
claude mcp add security-scanner -- security-scanner-mcp

# 또는 소스에서 빌드한 경우
claude mcp add security-scanner -- node /path/to/security-scanner-mcp/dist/index.js

빠른 설정 (권장)

매번 도구 사용 허가를 묻는 것이 번거롭다면, 자동 허용 설정을 추가하세요:

# scan-security 하나만 허용 (종합 검사)
claude config add allowedTools "mcp__security-scanner__scan-security"

# 또는 모든 도구 허용
claude config add allowedTools "mcp__security-scanner__*"

💡 Tip: 대부분의 경우 scan-security 하나면 충분합니다. 이 도구가 모든 보안 검사를 한번에 수행합니다.

사용 예시

Claude Code에서:

나: 이 코드 보안 검사해줘

const apiKey = "AIzaSyC1234567890abcdef";
const query = `SELECT * FROM users WHERE id = ${userId}`;
element.innerHTML = userInput;

Claude: [scan-security 호출]

## ⚠️ 보안 취약점 발견!

### 🔴 Critical (1개)
- **Google API Key** (라인 1)
  - Google API Key가 코드에 하드코딩되어 있습니다
  - 💡 해결책: 환경변수로 관리하고, API 키 제한 설정하기

### 🟠 High (2개)
- **Template Literal SQL** (라인 2)
  - 템플릿 리터럴로 SQL 쿼리에 변수를 삽입하고 있습니다
  - 💡 해결책: Prepared Statement를 사용하세요

- **innerHTML Assignment** (라인 3)
  - innerHTML에 동적 값을 할당하고 있습니다
  - 💡 해결책: textContent를 사용하거나 DOMPurify로 sanitize하세요

검출하는 취약점

🔑 하드코딩된 시크릿

  • AWS Access Key / Secret Key
  • Google API Key / OAuth Secret
  • GitHub Token / Slack Token
  • Database Connection String
  • Private Key (RSA, EC 등)
  • JWT Token
  • Kakao / Naver API Key

💉 Injection

  • SQL Injection (문자열 연결, 템플릿 리터럴)
  • NoSQL Injection (MongoDB)
  • Command Injection (exec, spawn)

🌐 XSS

  • dangerouslySetInnerHTML (React)
  • innerHTML / outerHTML
  • jQuery .html() / Vue v-html
  • eval() / new Function()

🔐 암호화

  • 약한 해시 (MD5, SHA1)
  • 안전하지 않은 랜덤 (Math.random)
  • 하드코딩된 암호화 키/IV
  • SSL 인증서 검증 비활성화

🔒 인증/세션

  • JWT 설정 오류 (none 알고리즘, 만료 없음)
  • 안전하지 않은 쿠키 설정
  • CORS 와일드카드
  • 약한 비밀번호 정책

📁 파일/경로

  • Path Traversal
  • 위험한 파일 삭제
  • 안전하지 않은 파일 업로드
  • Zip Slip (Java)
  • Pickle 역직렬화 (Python)

📦 취약한 의존성

  • npm audit 연동
  • Python requirements.txt 검사
  • Go go.mod 검사

지원 언어

  • ✅ JavaScript / TypeScript
  • ✅ Python
  • ✅ Java (Spring Boot 포함!)
  • ✅ Go

데모

# 데모 실행
npm run demo

로드맵

  • [x] OWASP Top 10 기반 검사
  • [x] 다중 언어 지원
  • [ ] 외부 취약점 DB 연동 (NVD, OSV)
  • [ ] 자동 수정 제안 기능
  • [ ] GitHub Actions 연동
  • [ ] VS Code 확장

기여하기

PR 환영합니다! 특히 다음 기여를 기다립니다:

  • 새로운 보안 패턴 추가
  • 다른 언어 지원
  • 문서 개선

라이선스

MIT


Made with ❤️ by zerry

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选