AI 에이전트 스킬 설치 전, 숨겨진 악의적 코드를 잡아내는 보안 검사 도구
Claude Code나 Codex 같은 AI 에이전트에 새로운 스킬을 붙여줄 때, 그 스킬이 내 데이터를 몰래 빼돌리거나 시스템 권한을 탈취하려 하지 않는지 확인하고 싶다면 이 도구가 필요합니다. SkillSpector는 스킬 파일이나 저장소를 스캔해 71가지 취약점 패턴을 찾아내고, 위험도를 0~100점으로 매겨 '설치해도 안전한가'라는 질문에 답해 주는 보안 검사기입니다. 설치 전에 실행해 악성 코드를 걸러내면, 에이전트가 신뢰할 수 있는 환경에서 일할 수 있습니다.
스킬 보안이 필요한 이유
AI 에이전트 스킬은 보통 별도의 검증 절차 없이 실행 권한을 부여받습니다. 연구 데이터셋의 31,132개 스킬 중 26.1%가 취약점을 포함하고 있으며, 5.2%는 악의적 의도가 의심된다는 분석이 있습니다. SkillSpector는 이러한 위험을 사전에 차단하기 위해 설계되었습니다. 이 도구는 NVIDIA Verified Skills 파이프라인의 일부로, 스킬이 공개되기 전에 스캔과 평가, 서명을 거치는 과정을 지원합니다. 통과한 스킬만 NVIDIA 스킬 카탈로그에 게시됩니다.
71가지 패턴으로 포착하는 위험 신호
SkillSpector는 프롬프트 인젝션, 데이터 유출, 권한 상승, 공급망 공격 등 17개 카테고리에 걸쳐 71가지 취약점 패턴을 탐지합니다.
- 프롬프트 인젝션 탐지 안전 제약을 무시하거나 숨겨진 지시를 포함하는 6가지 패턴을 감지합니다.
- 데이터 유출 추적 환경 변수 수집, 파일 시스템 열거, 대화 컨텍스트 외부 전송 등 4가지 유출 경로를 분석합니다.
- 공급망 위험 관리 버전 고정되지 않은 의존성, 악성 바이트코드, 타이포스쿼팅 등 10가지 이상의 공급망 공격 시그니처를 확인합니다.
- 코드 구조 분석 exec() 호출, 동적 임포트, 위험한 실행 체인 등 코드 레벨의 위험한 동작을 AST(구문 트리) 기반으로 탐지합니다.
설치 방법과 사용법
SkillSpector는 Python 기반 도구로, uv 또는 pip를 통해 설치할 수 있습니다. Docker 이미지를 사용해도 Python 환경을 별도로 구축하지 않고 실행할 수 있습니다. 기본 사용법은 skillspector scan ./my-skill/ 명령을 실행하는 것입니다. Git 저장소 URL, zip 파일, 디렉터리, 단일 파일 등 다양한 형식의 입력을 지원합니다. LLM 기반 심층 분석을 원하면 OpenAI, Anthropic, Bedrock 등 다양한 프로바이더의 API 키를 환경 변수로 설정하면 됩니다. LLM 분석을 건너뛰고 빠른 정적 분석만 수행하려면 --no-llm 옵션을 추가합니다.
사용 전 확인 사항
SkillSpector는 스킬의 안전성을 판단하는 도구이지만, 모든 위험을 100% 차단한다고 보장하지는 않습니다. 특히 LLM 분석을 사용할 경우, 선택한 모델에 따라 구조화된 출력 지원 여부가 달라질 수 있어 HTTP 400 오류가 발생할 수 있습니다. 또한 원격 입력에 대해 100 MiB의 다운로드 제한과 10,000개의 zip 멤버 제한이 적용되며, 이를 초과하면 실행이 중단됩니다. MCP 서버로 실행할 경우, HTTP 전송은 인증 없이 제공되므로 외부 네트워크에 노출하기 전에 반드시 인증이 가능한 리버스 프록시를 구성해야 합니다. 이 도구는 NVIDIA의 검증 파이프라인과 연동되어 있지만, 독립적으로 사용할 때도 최신 버전의 취약점 패턴 데이터베이스를 유지하는 것이 중요합니다.