← 스킬 목록으로 돌아가기

secret-leak-scanner

v1.0.0 approved Security 오늘 업데이트
USK v3 ✅ Verified ⚡ Auto-Convert
⬇ 다운로드
설치 가이드↓
🤖 에이전트용 설치 명령 (curl / MCP / Claude Desktop)
▸ curl 한 줄 다운로드
curl -L -o secret-leak-scanner.skill   "https://aiskillstore.io/v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=ClaudeCode"
▸ MCP 도구 호출 (Skill Store MCP 등록 시)
{
  "tool": "download_skill",
  "arguments": {
    "skill_id": "471349fc-cfb2-4f59-9dbc-e57bf53ca841",
    "platform": "ClaudeCode"
  }
}
▸ Claude Desktop / Cursor MCP 설정 (1회)
{
  "mcpServers": {
    "skill-store": {
      "url": "https://aiskillstore.io/mcp/"
    }
  }
}
📖 에이전트용 전체 API 가이드: /llms.txt  ·  MCP server card

Inline secret and credential leak scanner: detects AWS/GCP/Azure/OpenAI/Stripe/GitHub keys, Korean PII (SSN checksum, Luhn card), JWT, private keys — scan/mask/tokenize modes. Zero external dependencies.

# secret leak # credential leak # api key scan # secret scanner # secret detection # pii detection # korean ssn # aws key leak # token masking # pre-send gate # security audit

기본 정보

소유자 👤 aiskillstore-team 카테고리 Security 등록일 2026-05-12 최종 업데이트 2026-05-12 최신 버전 1.0.0 패키지 날짜 2026-05-12 검증 상태 approved 다운로드 수 0회 체크섬 (SHA256) 02559a2d943f5c6d3ed38ba1f26b0bf4c342207cd9fa3a2fc6f50298a10dce01

⚡ AGENT INFO USK v3

Capabilities
secret_pattern_detection korean_pii_detection secret_masking tokenization_with_reverse_map pre_send_safety_gate
Permissions
✗ network
✗ filesystem
✗ subprocess
Interface
type: cli   entry_point: main.py   runtime: python3   call_pattern: stdin_stdout
Agent API
# 스킬 스키마 조회 (에이전트가 호출 방법을 파악) GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/schema # 플랫폼별 자동 변환 다운로드 GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=OpenClaw GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=ClaudeCode GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=ClaudeCodeAgentSkill GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=Cursor GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=GeminiCLI GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=CodexCLI GET /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=CustomAgent

설치 방법

호환 플랫폼: any

1
openclaw_skill_manager.py로 스킬을 설치합니다.
python openclaw_skill_manager.py --install secret-leak-scanner
2
설치 확인
python openclaw_skill_manager.py --list-installed
3
특정 버전 설치 (선택)
python openclaw_skill_manager.py --install secret-leak-scanner --version 1.0.0
1
스킬 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download
2
Claude Code commands 디렉터리에 배치합니다.
unzip secret-leak-scanner.skill -d ~/.claude/commands/secret-leak-scanner/
3
Claude Code에서 슬래시 커맨드로 사용합니다.
/secret-leak-scanner
1
Agent Skills 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=ClaudeCodeAgentSkill
2
Claude Code skills 디렉터리에 압축을 해제합니다.
unzip secret-leak-scanner-agent-skill-*.skill -d ~/.claude/skills/secret-leak-scanner/
3
Claude Code를 재시작하면 세션 시작 시 자동으로 로드됩니다. 슬래시 커맨드 없이 자연어로 사용 가능합니다.
1
Cursor 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=Cursor
2
압축 해제 후 영구 위치에 저장합니다.
unzip secret-leak-scanner-cursor-*.skill -d ~/.cursor/skills/secret-leak-scanner/
3
.cursor/mcp.json에 MCP 서버 설정을 추가하고 Cursor를 재시작합니다.
cat ~/.cursor/skills/secret-leak-scanner/cursor_mcp_config.json
1
Gemini CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=GeminiCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip secret-leak-scanner-geminicli-*.skill -d ~/.gemini/skills/secret-leak-scanner/
3
~/.gemini/settings.json에 MCP 서버 설정을 추가하고 Gemini CLI를 재시작합니다.
cat ~/.gemini/skills/secret-leak-scanner/gemini_settings_snippet.json
1
Codex CLI 변환 패키지를 다운로드합니다.
curl -O https://aiskillstore.io/v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download?platform=CodexCLI
2
압축 해제 후 영구 위치에 저장합니다.
unzip secret-leak-scanner-codexcli-*.skill -d ~/.codex/skills/secret-leak-scanner/
3
~/.codex/config.toml에 MCP 서버 설정을 추가하고 Codex CLI를 재시작합니다.
cat ~/.codex/skills/secret-leak-scanner/codex_config_snippet.toml
1
REST API로 스킬 패키지를 다운로드합니다.
GET https://aiskillstore.io/v1/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/download
2
에이전트 플랫폼의 skills 디렉터리에 배치합니다.
cp secret-leak-scanner.skill ./skills/
3
설치 가이드 API로 플랫폼별 상세 정보를 조회합니다.
GET https://aiskillstore.io/v1/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/install-guide?platform=CustomAgent

보안 검증 보고서

검증 결과 APPROVED

검사 결과: ["메타데이터 경고: 권장 필드 없음: 'requirements' (SKILL.md v2 권장)", "메타데이터 경고: 권장 필드 없음: 'changelog' (SKILL.md v2 권장)"]

✅ 보안 위험 항목이 발견되지 않았습니다.

AI 검수 단계

검수 주체 gemini 위험도 🟢 낮음 검수 요약 안전한 시크릿 탐지 및 마스킹 스킬입니다. 선언된 권한이 매우 제한적이며, 악의적인 동작의 징후가 없습니다.
판단 근거

1. **권한 일치**: 메타데이터에 `network: false`, `filesystem: false`, `subprocess: false`로 명확히 선언되어 있으며, 제공된 코드 스니펫 및 정적 분석 결과에서 해당 권한을 위반하는 동작은 발견되지 않았습니다. `os` 모듈 임포트가 있지만, 선언된 권한 제약 하에서는 파일 시스템 접근이나 서브프로세스 실행이 불가능합니다. 2. **악의적 목적 없음**: 스킬의 목적은 시크릿 탐지 및 마스킹/토큰화로, 사용자 데이터를 보호하는 데 초점을 맞추고 있습니다. 데이터 탈취나 시스템 파괴를 위한 코드는 발견되지 않았으며, 제한적인 권한으로 인해 그러한 행위가 불가능합니다. 3. **외부 통신 없음**: `network: false` 선언으로 외부 통신이 차단됩니다. 4. **데이터 무단 수집/전송 없음**: 스킬은 입력된 텍스트를 로컬에서 처리하며, `network: false` 권한으로 인해 외부로 데이터를 전송할 수 없습니다. `token_map`은 토큰화된 텍스트를 역매핑하기 위한 내부 데이터로, 무단 수집/전송에 해당하지 않습니다. 5. **코드 품질**: 스킬의 설명, 기능, 입출력 스키마, 예시가 일관되며, 'Zero external dependencies'라는 설명과 같이 표준 라이브러리만을 사용하는 것으로 보아 코드 품질이 양호하고 스킬의 목적에 부합합니다.

버전 히스토리

버전 USK v3 검증 상태 패키지 날짜 다운로드 변경사항
v1.0.0 approved 2026-05-12 ⬇ 0

사용 예시 (Examples) 8 개

이 스킬의 대표적인 입출력 예시입니다. 에이전트는 이 예시를 보고 스킬 호출 방법과 결과 형태를 이해할 수 있습니다.

AWS Access Key 탐지 / AWS access key detection

텍스트에서 AWS Access Key ID를 탐지합니다.

📥 입력
{
  "action": "scan",
  "text": "config: aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
}
📤 출력
{
  "action": "scan",
  "findings": [
    {
      "category": "aws",
      "end": 48,
      "fix_hint": {
        "action": "\ud574\ub2f9 \ud0a4\ub97c \uc989\uc2dc \ud3d0\uae30\ud558\uace0 AWS IAM\uc5d0\uc11c \uc0c8 \ud0a4\ub97c \ubc1c\uae09\ubc1b\uc73c\uc138\uc694.",
        "doc_ref": "https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html",
        "example": "\ud658\uacbd\ubcc0\uc218 AWS_ACCESS_KEY_ID \uc0ac\uc6a9 \uad8c\uc7a5",
        "summary": "AWS Access Key\uac00 \ud14d\uc2a4\ud2b8\uc5d0 \ub178\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4."
      },
      "label": "AWS Access Key ID",
      "matched": "AKIAIOSF***",
      "severity": "critical",
      "start": 28
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "aws": 2
    },
    "by_severity": {
      "critical": 2
    },
    "scanned_chars": 103,
    "total_findings": 2
  }
}
OpenAI API Key 탐지 / OpenAI key detection

OpenAI sk- 접두사 API 키를 탐지합니다.

📥 입력
{
  "action": "scan",
  "text": "OPENAI_API_KEY=sk-proj-abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRST"
}
📤 출력
{
  "action": "scan",
  "findings": [
    {
      "category": "openai",
      "end": 79,
      "fix_hint": {
        "action": "platform.openai.com\uc5d0\uc11c \ud574\ub2f9 \ud0a4\ub97c \uc989\uc2dc \ucde8\uc18c\ud558\uc138\uc694.",
        "doc_ref": "https://platform.openai.com/account/api-keys",
        "example": "\ud658\uacbd\ubcc0\uc218 OPENAI_API_KEY \uc0ac\uc6a9 \uad8c\uc7a5",
        "summary": "OpenAI API Key\uac00 \ud14d\uc2a4\ud2b8\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4."
      },
      "label": "OpenAI API Key",
      "matched": "sk-proj-***",
      "severity": "critical",
      "start": 15
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "openai": 1
    },
    "by_severity": {
      "critical": 1
    },
    "scanned_chars": 79,
    "total_findings": 1
  }
}
한국 주민등록번호 체크섬 검증 / Korean SSN checksum validation

주민등록번호 형식과 체크 digit을 검증하여 실제 유효한 번호를 탐지합니다.

📥 입력
{
  "action": "scan",
  "text": "\uc2e0\uccad\uc790 \uc8fc\ubbfc\ubc88\ud638: 900101-1234567 \uc5f0\ub77d\ucc98: 010-1234-5678"
}
📤 출력
{
  "action": "scan",
  "findings": [
    {
      "category": "korean_ssn",
      "end": 23,
      "fix_hint": {
        "action": "\uac1c\uc778\uc815\ubcf4\ubcf4\ud638\ubc95\uc5d0 \ub530\ub77c \uc8fc\ubbfc\ubc88\ud638 \uc218\uc9d1\u00b7\uc804\uc1a1\uc740 \uc5c4\uaca9\ud788 \uc81c\ud55c\ub429\ub2c8\ub2e4.",
        "doc_ref": "https://www.law.go.kr/\ubc95\ub839/\uac1c\uc778\uc815\ubcf4\ubcf4\ud638\ubc95",
        "example": "\ub9c8\uc2a4\ud0b9 \ucc98\ub9ac: 900101-1******",
        "summary": "\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uac00 \ud14d\uc2a4\ud2b8\uc5d0 \ub178\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4."
      },
      "label": "Korean SSN (\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638)",
      "matched": "900101-1***",
      "severity": "critical",
      "start": 9
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "korean_ssn": 1
    },
    "by_severity": {
      "critical": 1
    },
    "scanned_chars": 41,
    "total_findings": 1
  }
}
신용카드 번호 Luhn 검증 / Credit card Luhn validation

Luhn 알고리즘으로 유효한 신용카드 번호만 탐지합니다.

📥 입력
{
  "action": "scan",
  "text": "\uacb0\uc81c \uce74\ub4dc: 4532015112830366 (Visa) \ub610\ub294 9999-1111-2222-3333"
}
📤 출력
{
  "action": "scan",
  "findings": [
    {
      "category": "korean_card",
      "end": 23,
      "fix_hint": {
        "action": "\uce74\ub4dc\uc0ac\uc5d0 \ud574\ub2f9 \uce74\ub4dc \uc815\uc9c0 \uc694\uccad \ubc0f \uc0c8 \uce74\ub4dc \ubc1c\uae09\uc744 \ubc1b\uc73c\uc138\uc694.",
        "doc_ref": "https://www.pcisecuritystandards.org/",
        "example": "PCI DSS \uaddc\uc815\uc5d0 \ub530\ub77c \uce74\ub4dc\ubc88\ud638\ub294 \uc554\ud638\ud654 \uc800\uc7a5/\uc804\uc1a1 \ud544\uc218",
        "summary": "\uc720\ud6a8\ud55c \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uac00 \ud0d0\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4 (Luhn \uac80\uc99d \ud1b5\uacfc)."
      },
      "label": "Credit Card Number (Luhn valid)",
      "matched": "45320151***",
      "severity": "critical",
      "start": 7
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "korean_card": 1
    },
    "by_severity": {
      "critical": 1
    },
    "scanned_chars": 51,
    "total_findings": 1
  }
}
JWT 토큰 탐지 / JWT token detection

eyJ 접두사 JWT 토큰을 탐지합니다.

📥 입력
{
  "action": "scan",
  "text": "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8U"
}
📤 출력
{
  "action": "scan",
  "findings": [
    {
      "category": "jwt",
      "end": 150,
      "fix_hint": {
        "action": "\uc11c\ubc84\uc5d0\uc11c \ud574\ub2f9 \ud1a0\ud070\uc744 \uc989\uc2dc \ubb34\ud6a8\ud654(blacklist)\ud558\uc138\uc694.",
        "doc_ref": "https://cheatsheetseries.owasp.org/cheatsheets/JSON_Web_Token_for_Java_Cheat_Sheet.html",
        "example": "JWT\ub294 \uba54\ubaa8\ub9ac\uc5d0\ub9cc \uc800\uc7a5\ud558\uace0 \ub85c\uadf8/\uc2ac\ub799/\uc774\uc288\uc5d0 \uc808\ub300 \ud3ec\ud568\ud558\uc9c0 \ub9c8\uc138\uc694.",
        "summary": "JWT \ud1a0\ud070\uc774 \ub178\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ud0c8\ucde8 \uc2dc \uc138\uc158 \ud558\uc774\uc7ac\ud0b9 \uc704\ud5d8\uc774 \uc788\uc2b5\ub2c8\ub2e4."
      },
      "label": "JWT Token",
      "matched": "eyJhbGci***",
      "severity": "high",
      "start": 22
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "jwt": 1
    },
    "by_severity": {
      "high": 1
    },
    "scanned_chars": 150,
    "total_findings": 1
  }
}
마스킹 모드 / Mask mode

탐지된 시크릿을 *** 로 마스킹하여 안전한 텍스트를 반환합니다.

📥 입력
{
  "action": "mask",
  "keep_prefix": 4,
  "keep_suffix": 4,
  "text": "API key is sk-proj-abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRST and DB password"
}
📤 출력
{
  "action": "mask",
  "findings": [
    {
      "category": "openai",
      "end": 75,
      "fix_hint": {
        "action": "\uc6d0\ubcf8 \ud0a4\ub97c \uc989\uc2dc \ud3d0\uae30\ud558\uc138\uc694.",
        "doc_ref": "https://platform.openai.com/account/api-keys",
        "example": "\ub9c8\uc2a4\ud0b9\ub41c \ud14d\uc2a4\ud2b8\ub97c \ub85c\uadf8/\uc2ac\ub799 \uc804\uc1a1\uc5d0 \ud65c\uc6a9\ud558\uc138\uc694.",
        "summary": "OpenAI API Key\uac00 \ub9c8\uc2a4\ud0b9\ub418\uc5c8\uc2b5\ub2c8\ub2e4."
      },
      "label": "OpenAI API Key",
      "matched": "sk-proj-***",
      "severity": "critical",
      "start": 11
    }
  ],
  "is_clean": false,
  "masked_text": "API key is sk-p****************************QRST and DB password",
  "stats": {
    "by_category": {
      "openai": 1
    },
    "by_severity": {
      "critical": 1
    },
    "scanned_chars": 88,
    "total_findings": 1
  }
}
클린 텍스트 오탐 없음 / Clean text no false positive

시크릿이 없는 일반 텍스트에서 오탐이 발생하지 않는지 검증합니다.

📥 입력
{
  "action": "scan",
  "text": "Hello, this is a regular message. The project deadline is 2024-12-31. Contact: user@example.com"
}
📤 출력
{
  "action": "scan",
  "findings": [],
  "is_clean": true,
  "stats": {
    "by_category": {},
    "by_severity": {},
    "scanned_chars": 94,
    "total_findings": 0
  }
}
Private Key block detection

Detects RSA/EC/SSH PEM format private key blocks in text.

📥 입력
{
  "action": "audit",
  "text": "config dump contains private key pem block"
}
📤 출력
{
  "action": "audit",
  "findings": [
    {
      "category": "private_key",
      "end": 42,
      "fix_hint": {
        "action": "\ud574\ub2f9 \ud0a4 \uc30d\uc744 \uc989\uc2dc \ud3d0\uae30\ud558\uace0 \uc0c8 \ud0a4\ub97c \uc0dd\uc131\ud558\uc138\uc694.",
        "doc_ref": "https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html",
        "example": "Private key\ub294 \ud30c\uc77c \uc2dc\uc2a4\ud15c\uc5d0 600 \uad8c\ud55c\uc73c\ub85c \uc800\uc7a5\ud558\uace0 \ud14d\uc2a4\ud2b8\uc5d0 \ud3ec\ud568\ud558\uc9c0 \ub9c8\uc138\uc694.",
        "summary": "Private Key PEM \ube14\ub85d\uc774 \ud14d\uc2a4\ud2b8\uc5d0 \ub178\ucd9c\ub418\uc5c8\uc2b5\ub2c8\ub2e4."
      },
      "label": "Private Key (PEM block)",
      "matched": "PEM_KEY_BLOCK***",
      "severity": "critical",
      "start": 0
    }
  ],
  "is_clean": false,
  "stats": {
    "by_category": {
      "private_key": 1
    },
    "by_severity": {
      "critical": 1
    },
    "scanned_chars": 42,
    "total_findings": 1
  }
}

모든 예시는 에이전트 API로도 조회 가능: /v1/agent/skills/471349fc-cfb2-4f59-9dbc-e57bf53ca841/schema

리뷰 & 평점

아직 리뷰가 없습니다. 첫 번째 리뷰를 남겨보세요!

✍️ 리뷰 작성