SkillsGuard은(는) 무엇을 하나요?
AI 에이전트 스킬 패키지용 정적 보안 스캐너입니다. 악성 SKILL.md 파일 및 번들 스크립트를 실행 전에 탐지합니다.
개요
SkillsGuard는 AI 에이전트(Claude Code, Cursor, Codex 등)용 SKILL.md 파일과 관련 스크립트에서 의심스러운 패턴을 검사하는 명령줄 도구입니다. 이 도구는 스킬 패키지를 실행하기 전에 보안 위험을 식별하는 데 도움을 줍니다.
설치
# pip를 사용하여 설치
pip install skillsguard
# 또는 소스에서 설치
git clone https://github.com/Teycir/SkillsGuard.git
cd SkillsGuard
pip install -r requirements.txt
사용법
# 단일 스킬 패키지 스캔
skillsguard scan ./path/to/skill-package
# 디렉토리 내 모든 스킬 패키지 스캔
skillsguard scan ./skills-directory --recursive
# JSON 출력 형식
skillsguard scan ./skill-package --format json
# 자세한 출력
skillsguard scan ./skill-package --verbose
지원 플랫폼
- Claude Code (claude_code)
- Cursor (cursor)
- Codex (codex)
- 기타 (generic) - 맞춤형 AI 에이전트
탐지 규칙
SkillsGuard는 다음을 검사합니다:
| 규칙 ID | 설명 | 예시 |
|---|---|---|
EXEC-001 | 쉘 명령어 실행 | run: 블록 내 bash 호출 또는 subprocess 사용 |
NET-001 | 네트워크 요청 | 알 수 없는 호스트로의 curl, wget 호출 |
FILE-001 | 파일 시스템 접근 | 환경 외부로의 파일 읽기/쓰기 |
CRED-001 | 하드코딩된 자격 증명 | 일반 텍스트 API 키 또는 토큰 |
PROMPT-001 | 의심스러운 프롬프트 명령 | 보안 경고를 비활성화하는 지시사항 |
설정
skillsguard.config.yaml 파일을 생성하여 규칙을 사용자 정의할 수 있습니다:
# skillsguard.config.yaml
rules:
EXEC-001:
enabled: true
severity: high
NET-001:
enabled: true
severity: medium
# 검사에서 제외할 경로
exclude_paths:
- tests/
- examples/
예시 출력
[!] 스킬 패키지 'my-skill'에서 3개의 경고 발견됨
- [높음] EXEC-001: run 섹션에서 쉘 명령어 실행 감지
- [중간] NET-001: 확인되지 않은 외부 호스트로의 네트워크 요청
- [낮음] PROMPT-001: 보안 경고를 비활성화하는 프롬프트 명령어
기여하기
기여는 환영합니다! 저장소를 포크하고 풀 리퀘스트를 제출해 주세요.
라이선스
MIT 라이선스