cisco-ai-defense/skill-scanner

Security Scanner for Agent Skills

Skill Scanner – AI 에이전트 스킬용 보안 스캐너

정의 – AI 에이전트의 스킬 패키지(예: OpenAI Codex, Cursor, Claude)를 정적으로 분석하여 프롬프트 주입, 데이터 유출 또는 악성 코드와 같은 위험한 패턴을 찾는 오픈소스 명령줄 도구(및 Python SDK)입니다. 여러 탐지 엔진(YAML/YARA 서명, AST 기반 데이터 흐름 분석, 선택적 LLM-as-a-judge, CEL 기반 결정 계층)을 결합하며 CI/CD 파이프라인에 연결할 수 있습니다.


핵심 기능

기능 작동 방식 탐지 대상
정적 서명 스캔 YAML 규칙 파일 + YARA-X 패턴 알려진 악성 문자열, 안전하지 않은 명령, 의심스러운 API 호출
바이트코드 무결성 컴파일된 .pyc 파일 검사 변조 또는 주입된 바이트코드
파이프라인 오염 분석 셸 파이프라인의 소스-싱크 흐름 구문 분석 명령 주입 벡터
동작 / AST 분석 추상 구문 트리를 구축하고 데이터 흐름 추적 프롬프트 주입, 안전하지 않은 데이터 처리
LLM 의미 분석(선택 사항) 스킬 설명과 코드를 LLM(Anthropic 또는 OpenAI)에 보내고 응답을 발견 사항으로 해석 서명이 놓치는 상황 인식 악의적 의도
메타 분석기(선택 사항) 발견 사항 상관 관계, 오탐 필터링, 심각도 순위 지정 중복 규칙의 노이즈 감소
클라우드 기반 AI 방어 추가 검사를 위해 Cisco의 AI-Defense 서비스 호출 클라우드 호스팅 위협 인텔리전스
VirusTotal 통합 해시 조회 / 선택적 파일 업로드 스킬에 번들된 알려진 악성코드 바이너리
CEL 결정 계층 공식 cel-go 런타임을 사용하여 유형화된 사실을 평가하고 정책 적용(끄기 / 섀도우 / 강제) 결정적이고 제한된 규칙 적용

스캐너는 단일 스킬 디렉토리 또는 스킬 리포지토리에서 재귀적으로 실행할 수 있으며 결과를 다양한 형식(JSON, SARIF, HTML, Markdown 등)으로 출력할 수 있습니다.


일반적인 워크플로우

  1. 설치 – pip install cisco-ai-skill-scanner(또는 uv 사용).
  2. 구성 – 사용하려는 LLM 또는 클라우드 API에 대한 환경 변수를 설정합니다.
  3. 실행 –
    skill‑scanner scan /path/to/skill \
        --use-behavioral --use-llm --enable-meta \
        --format sarif --output results.sarif
    
    이 명령은 정적, 동작 및 선택적 LLM 엔진을 실행하고 CEL 정책을 적용하며 GitHub Code Scanning이 표시할 수 있는 SARIF 보고서를 작성합니다.
  4. CI/CD – 재사용 가능한 GitHub-Actions 워크플로우 또는 pre-commit 훅을 추가하여 모든 풀 리퀘스트가 자동으로 스캔되도록 합니다.
  5. 검토 – HTML 또는 SARIF 보고서를 검토합니다. 발견 사항은 심각도(정보, 낮음, 중간, 높음, 심각)로 분류됩니다. "발견 사항 없음" 결과는 최선의 노력일 뿐이며 스킬이 안전하다는 것을 보장하지 않습니다.

사용 대상

  • 재사용 가능한 스킬 패키지를 출시하고 게시 전에 자동화된 안전장치가 필요한 AI 에이전트 개발자.
  • AI 스킬 스캔을 기존 CI 파이프라인에 통합하려는 보안 팀.
  • 기여된 스킬에 기준 보안 정책을 적용해야 하는 플랫폼 운영자(예: 내부 AI 마켓플레이스).

제한 사항(README에 명시된 대로)

  • 스캐너는 최선의 노력입니다. 새로운 또는 제로데이 공격 기술을 탐지할 수 없습니다.
  • 오탐 및 미탐이 예상됩니다. 정책 조정과 수동 검토가 권장됩니다.
  • 일부 고급 분석(LLM, 클라우드 AI-Defense)에는 외부 API 키가 필요하며 비용이 발생할 수 있습니다.
  • CEL 규칙 세트는 현재 섀도우 모드에 있으며, 발견 사항은 보고되지만 자동으로 억제되지는 않습니다.

빠른 시작 치트 시트

# 설치
pip install cisco-ai-skill-scanner

# 간단한 스캔(정적만)
skill-scanner scan ./my-skill

# 동작 + LLM + 메타 필터링을 포함한 전체 스캔
skill-scanner scan ./my-skill \
    --use-behavioral --use-llm --enable-meta \
    --policy strict --format html --output report.html

# CI 통합(GitHub Actions)
# docs/github-actions.md에 표시된 재사용 가능한 워크플로우 추가

결론 – Skill Scanner는 AI 에이전트 스킬 패키지라는 새로운 영역을 대상으로 하는 진정하고 적극적으로 유지 관리되는 보안 분석 도구입니다. 기존의 정적 분석 기술과 선택적 LLM 기반 의미 검사 및 프로그래밍 가능한 CEL 정책 계층을 결합하여 로컬 개발자 사용과 자동화된 CI/CD 적용 모두에 적합합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트