Character Counter
效率与工作流by Isaac-theori
Count occurrences of any character in text with precision. Quickly check frequency for validation, formatting, or analysis tasks. Save time when enforcing limits or detecting unusual patterns.
什么是 Character Counter?
Count occurrences of any character in text with precision. Quickly check frequency for validation, formatting, or analysis tasks. Save time when enforcing limits or detecting unusual patterns.
README
🚨 취약한 MCP 서버 - 보안 교육용 데모
⚠️ 경고: 이 서버는 교육 목적으로만 설계되었으며, 실제 운영 환경에서는 절대 사용하지 마세요!
개요
이 프로젝트는 MCP (Model Context Protocol) 서버의 일반적인 보안 취약점들을 시연하고, 안전한 개발 방법을 교육하기 위해 설계되었습니다.
포함된 취약점들
- 명령어 주입 (Command Injection) -
execute_system_command - 경로 순회 공격 (Path Traversal) -
read_file_content,write_file_content - 비직렬화 공격 (Deserialization) -
process_pickled_data - SQL 인젝션 -
search_user_database - 민감한 정보 노출 -
get_system_info - 서비스 거부 공격 (DoS) -
generate_large_data - 임시 파일 보안 -
create_temp_file - LDAP 인젝션 -
ldap_search_simulation - XML 외부 엔티티 (XXE) -
parse_xml_unsafe
설치 및 실행
1. 의존성 설치
# uv 사용 (권장)
uv sync
# 또는 pip 사용
pip install -e .
2. 서버 실행
# 개발 모드로 실행
uv run dev
# 또는 실행 스크립트 사용
python run_server.py
3. 대화형 테스트
# 대화형 플레이그라운드
uv run playground
취약점 테스트
취약점을 안전하게 테스트해보려면:
# 취약점 테스트 스크립트 실행
python test_vulnerabilities.py
교육 자료
SECURITY_DEMO.md- 상세한 취약점 설명과 공격 시나리오test_vulnerabilities.py- 취약점 테스트 스크립트src/character_counter/server.py- 취약한 서버 구현
학습 목표
이 프로젝트를 통해 다음을 학습할 수 있습니다:
- 일반적인 웹 애플리케이션 취약점들이 MCP 서버에서 어떻게 나타나는지
- 각 취약점의 공격 벡터와 영향도
- 안전한 코딩 방법과 방어 기법
- 보안 테스트 및 감사 방법
실습 과제
- 취약점 분석: 각 도구의 취약점을 식별하고 공격 시나리오를 작성하세요
- 안전한 구현: 취약한 기능들의 안전한 버전을 구현해보세요
- 보안 테스트: 구현한 안전한 버전을 테스트해보세요
- 가이드라인 작성: 조직의 MCP 서버 보안 가이드라인을 작성해보세요
보안 원칙
MCP 서버 개발 시 다음 원칙을 따르세요:
- 최소 권한 원칙: 필요한 최소한의 권한만 부여
- 입력 검증: 모든 사용자 입력을 검증하고 새니타이즈
- 샌드박스 사용: 격리된 환경에서 실행
- 정기적인 보안 감사: 코드와 설정을 정기적으로 검토
- 보안 업데이트: 의존성을 최신 상태로 유지
경고 및 면책 조항
⚠️ 이 프로젝트는 오직 교육 목적으로만 설계되었습니다.
- 실제 운영 환경에서는 절대 사용하지 마세요
- 무단으로 타인의 시스템에 대해 테스트하지 마세요
- 취약점을 악용하여 불법적인 행위를 하지 마세요
- 사용자는 이 코드의 사용에 대한 모든 책임을 집니다
라이센스
이 프로젝트는 교육 목적으로만 제공됩니다. 상업적 사용을 금지합니다.
常见问题
Character Counter 是什么?
Count occurrences of any character in text with precision. Quickly check frequency for validation, formatting, or analysis tasks. Save time when enforcing limits or detecting unusual patterns.
相关 Skills
技能工坊
by anthropics
覆盖 Skill 从创建到迭代优化全流程:起草能力、补测试提示、跑评测与基准方差分析,并持续改写内容和描述,提升效果与触发准确率。
✎ 技能工坊把技能从创建、迭代到评测串成闭环,方差分析加描述优化,特别适合把触发准确率打磨得更稳。
表格处理
by anthropics
围绕 .xlsx、.xlsm、.csv、.tsv 做读写、修复、清洗、格式整理、公式计算与格式转换,适合修改现有表格、生成新报表或把杂乱数据整理成交付级电子表格。
✎ 做 Excel/CSV 相关任务很省心,能直接读写、修复、清洗和格式转换,尤其擅长把乱七八糟的表格整理成交付级文件。
PPT处理
by anthropics
处理 .pptx 全流程:创建演示文稿、提取和解析幻灯片内容、批量修改现有文件,支持模板套用、合并拆分、备注评论与版式调整。
✎ 涉及PPTX的创建、解析、修改到合并拆分都能一站搞定,连备注、模板和评论也能处理,做演示文稿特别省心。
相关 MCP Server
文件系统
编辑精选by Anthropic
Filesystem 是 MCP 官方参考服务器,让 LLM 安全读写本地文件系统。
✎ 这个服务器解决了让 Claude 直接操作本地文件的痛点,比如自动整理文档或生成代码文件。适合需要自动化文件处理的开发者,但注意它只是参考实现,生产环境需自行加固安全。
by wonderwhy-er
Desktop Commander 是让 AI 直接执行终端命令、管理文件和进程的 MCP 服务器。
✎ 这工具解决了 AI 无法直接操作本地环境的痛点,适合需要自动化脚本调试或文件批量处理的开发者。它能让你用自然语言指挥终端,但权限控制需谨慎,毕竟让 AI 执行 rm -rf 可不是闹着玩的。
EdgarTools
编辑精选by dgunning
EdgarTools 是无需 API 密钥即可解析 SEC EDGAR 财报的开源 Python 库。
✎ 这个工具解决了金融数据获取的痛点——直接让 AI 读取结构化财报,比如让 Claude 分析苹果的 10-K 文件。适合量化分析师或金融开发者快速构建数据管道。但注意,它依赖 SEC 网站稳定性,高峰期可能延迟。