
keyFinder v2.2.1
Chrome 및 Firefox용 수동적 API 키 및 비밀 탐지 브라우저 확장 프로그램. 80개 이상의 탐지 패턴, 설정 불필요.
KeyFinder
Chrome 및 Firefox를 위한 수동적 API 키 및 비밀 발견 도구
KeyFinder는 Chrome 및 Firefox용 브라우저 확장 프로그램으로, 방문하는 모든 페이지에서 유출된 API 키, 토큰, 비밀 및 자격 증명을 수동적으로 스캔합니다. 설정 없이 백그라운드에서 조용히 실행됩니다.
탐지 항목
KeyFinder는 80개 이상의 탐지 패턴을 제공하며, 다음 출처의 비밀을 포함합니다:
| 카테고리 | 제공자 |
|---|---|
| 클라우드 | AWS (액세스 키, 비밀 키, 세션 토큰, Cognito), Google Cloud (API 키, OAuth, 서비스 계정), Azure (스토리지 키, SAS 토큰, 연결 문자열) |
| 소스 제어 | GitHub (PAT, OAuth, 세분화된 토큰), GitLab (PAT, 파이프라인, 러너 토큰), Bitbucket |
| 결제 | Stripe (비밀, 공개, 제한, 웹훅), PayPal Braintree, Square |
| 커뮤니케이션 | Slack (봇, 사용자, 앱 토큰, 웹훅), Discord (봇 토큰, 웹훅), Telegram, Twilio, SendGrid |
| AI / ML | OpenAI, Anthropic, HuggingFace, Replicate |
| 데이터베이스 | MongoDB, PostgreSQL, MySQL, Redis 연결 문자열 |
| SaaS | Shopify, Sentry, New Relic, PlanetScale, Linear, Notion, Datadog, Algolia, Mapbox |
| 인프라 | HashiCorp Vault, Terraform, Docker Hub, NPM, Cloudflare, DigitalOcean, Doppler, Pulumi, Grafana |
| 암호화 | RSA, EC, OpenSSH, PGP, DSA 개인 키 |
| 일반 | JWT, Bearer 토큰, Basic Auth, API 키 할당, 자격 증명 URL, 높은 엔트로피 문자열 |
작동 방식
KeyFinder는 모든 페이지에서 10가지 공격 표면을 스캔합니다:
- 스크립트
srcURL - 모든 스크립트 소스 URL에서 쿼리 매개변수의 키워드와 토큰을 검사합니다 - 인라인 스크립트 -
<script>태그 내용에서 비밀 패턴을 스캔합니다 - 외부 스크립트 - 동일 출처의 JavaScript 파일을 가져와 스캔합니다
- 메타 태그 -
<meta>태그에서 유출된 API 키와 토큰을 확인합니다 - 숨겨진 양식 필드 -
<input type="hidden">값을 검사합니다 - 데이터 속성 -
data-*속성에서 민감한 값을 스캔합니다 - HTML 주석 - 실수로 커밋된 비밀이 있는 주석 노드를 분석합니다
- URL 매개변수 - 링크와 href에서 쿼리 문자열의 토큰을 분석합니다
- 웹 저장소 - localStorage와 sessionStorage를 스캔합니다
- 네트워크 응답 - XHR 및 Fetch 응답에서 유출된 비밀을 가로챕니다
또한 섀넌 엔트로피 분석이 적용되어 문서화되지 않은 비밀 형식일 수 있는 무작위 고엔트로피 문자열을 감지합니다.
기능
- 제로 종속성 - 순수 바닐라 JavaScript, jQuery나 외부 라이브러리 없음
- Manifest V3 - 서비스 워커 아키텍처로 최신 Chrome 및 Firefox에 최적화
- 수동적 스캐닝 - 모든 페이지 로드 시 자동 실행
- SPA 지원 - MutationObserver가 동적으로 주입된 DOM을 다시 스캔
- 탭별 알림 배지 - 탭에 발견 사항이 있을 때 빨간 점 아이콘 오버레이
- 사용자 정의 키워드 - 자체 검색어 추가 가능 (검증됨, 최대 50개)
- 운영 콘솔 대시보드 - 플랫 터미널 UI: 심각도별 정렬된 발견 사항, 심각도 타일 클릭하여 필터링, 최신 발견 사항 티커, 실시간 검색 (
/포커스,Esc초기화) - 원클릭 분류 - 일치 칩 클릭하여 비밀 복사, 상대적 타임스탬프 (호버 시 절대 표시), 발견 사항별 삭제
- 내보내기 - 필터링된 발견 사항을 JSON 또는 CSV로 다운로드 (포뮬러 인젝션 방지 필터 포함)
- 강화된 브리지 - MAIN <-> ISOLATED CustomEvent 채널에 페이지별 nonce 적용
- 제한된 저장소 - 최대 5000개 발견 사항, FIFO 제거, 탭 간 직렬화된 쓰기
- 낮은 리소스 사용 - 최소한의 CPU 및 메모리 사용
- 모든 프레임 - iframe 및 포함된 콘텐츠 스캔
설치
Chrome
Firefox
소스에서 설치
git clone https://github.com/momenbasel/keyFinder.git
Chrome:
chrome://extensions로 이동- 개발자 모드 활성화
- 압축 해제된 확장 프로그램 로드 클릭 후
keyFinder폴더 선택
Firefox:
about:debugging> "This Firefox"로 이동- 임시 부가 기능 로드 클릭
keyFinder폴더에서manifest.firefox.json선택
사용법
- 확장 프로그램 설치
- 정상적으로 웹 브라우징 - KeyFinder가 백그라운드에서 모든 페이지를 스캔합니다
- 확장 프로그램 아이콘 클릭하여 통계 확인 및 키워드 관리
- View Findings 클릭하여 전체 결과 대시보드 열기
- 심각도, 제공자 또는 유형별로 필터링 - 심각도 타일을 클릭하여 즉시 필터링;
/를 누르면 검색 가능 - JSON 또는 CSV로 내보내기하여 보고
사용자 정의 키워드 추가
확장 프로그램 아이콘을 클릭하고, 입력 필드에 키워드를 입력한 후 Add를 클릭합니다. 해당 키워드는 방문하는 모든 페이지에서 스크립트 URL, 인라인 코드 및 키-값 할당을 스캔하는 데 사용됩니다.
기본 키워드: key, api_key, apikey, api-key, secret, token, access_token, auth, credential, password, client_id, client_secret
아키텍처
keyFinder/
manifest.json # Chrome MV3 manifest
manifest.firefox.json # Firefox MV3 manifest
popup.html # 확장 프로그램 팝업 UI
results.html # 발견 사항 대시보드
js/
background.js # 서비스 워커 - 저장소 및 메시지 처리
patterns.js # 80개 이상의 비밀 탐지 정규식 패턴
content.js # ISOLATED-world 페이지 스캐너 - DOM, 스크립트, 네트워크
interceptor-loader.js # ISOLATED 로더 - nonce 설정, MAIN-world 인터셉터 주입
interceptor.js # MAIN-world XHR/Fetch 훅 + 전역 window 스캔
popup.js # 팝업 로직
results.js # 대시보드 로직 (필터링 및 내보내기)
css/
popup.css # 팝업 스타일
results.css # 대시보드 스타일
icons/
icon16.png
icon48.png
icon128.png
scripts/
build.sh # Chrome 및 Firefox zip 패키지 빌드
보안
위협 모델, 공개 정책 및 알려진 제한 사항은 SECURITY.md를 참조하세요. 릴리스 노트는 CHANGELOG.md에 있습니다.
면책 조항
이 도구는 보안 연구 및 승인된 테스트용으로만 사용됩니다. 자신의 애플리케이션에서 유출된 비밀을 식별하거나 승인된 침투 테스트 중에 사용하세요. 귀하는 자신의 행동에 대한 책임이 있습니다.
전문 서비스
keyFinder는 미국에 설립된 보안 평가 회사인 GreyCore Labs에서 구축 및 유지 관리합니다. 귀하의 제품에도 동일한 수준의 관심이 필요하십니까?
- 침투 테스트 - 웹, API, 모바일, 클라우드. 24시간 이내 고정 견적 제공, 요청 시 수정된 샘플 보고서 제공.
- 무료 외부 공격 표면 스캔 - 48시간 이내 한 페이지 보고서, 의무 없음.
라이선스
MIT