Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
noseyparker — Nosey Parker는 텍스트 데이터와 Git 기록에서 비밀 및 민감 정보를 찾는 명령줄 도구입니다. | Kitploit
도구/GitHubGitHub/praetorian-inc/noseyparker
Vulnerability ScannersCode AnalysisInformation GatheringPenetration TestingDevSecOpsSecret DetectionArchived
GitHubpraetorian-inc/noseyparker

noseyparker

Nosey Parker는 텍스트 데이터와 Git 기록에서 비밀 및 민감 정보를 찾는 명령줄 도구입니다.

저장소 보기
2.3k1326개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Nosey Parker는 이제 Titus로 대체되었습니다. Nosey Parker는 공식적으로 은퇴했습니다

공지 게시물 https://www.praetorian.com/blog/titus-open-source-secret-scanner/ 을 참조하세요. Titus 저장소는 https://github.com/praetorian-inc/titus 에서 찾을 수 있습니다.

개요

Nosey Parker는 텍스트 데이터에서 비밀 및 민감한 정보를 찾는 CLI 도구입니다. 이는 본질적으로 비밀 탐지를 위한 특수 목적의 grep 유사 도구입니다.

공격적 보안(예: 레드 팀의 측면 이동 가능)을 위해 설계되었지만 방어적 보안 테스트에도 유용할 수 있습니다. Praetorian에서 수백 건의 공격적 보안 업무에서 비밀을 발견했습니다.

주요 기능:

  • 유연성: 파일, 디렉터리, GitHub 및 Git 히스토리를 기본적으로 스캔하며 확장 가능한 입력 열거 메커니즘을 갖추고 있습니다.
  • 현장 검증된 규칙: 보안 엔지니어의 피드백을 기반으로 높은 정밀도를 위해 선택된 188개의 규칙을 정규 표현식으로 사용합니다.
  • 신호 대 잡음비: 동일한 비밀을 공유하는 일치 항목을 중복 제거하여 검토 부담을 10-1000배 이상 줄입니다.
  • 속도 및 확장성: 멀티코어 시스템에서 GB/s 속도로 스캔할 수 있으며, 보안 업무 중 최대 20TB의 입력을 스캔한 기록이 있습니다.

일반적인 워크플로는 세 단계입니다:

  1. scan 명령을 사용하여 관심 있는 입력을 스캔합니다.
  2. report 명령을 사용하여 스캔 결과의 세부 정보를 보고합니다.
  3. 결과를 검토하고 분류합니다.

설치

Homebrew 공식

root@kitploit:~
brew install noseyparker

사전 빌드된 바이너리

최신 릴리스 페이지에는 x86_64/aarch64 Linux 및 macOS용 사전 빌드된 바이너리가 포함되어 있습니다.

Docker: x86_64/aarch64

root@kitploit:~
docker pull ghcr.io/praetorian-inc/noseyparker:latest

최신 커밋은 main 태그를 통해서도 사용할 수 있습니다.

Docker: x86_64/aarch64, Alpine 기반:

root@kitploit:~
docker pull ghcr.io/praetorian-inc/noseyparker-alpine:latest

최신 커밋은 main 태그를 통해서도 사용할 수 있습니다.

Arch Linux 패키지

https://aur.archlinux.org/packages/noseyparker

Windows

Nosey Parker는 Windows에서 기본적으로 빌드되지 않습니다(#121). WSL1 및 네이티브 Linux 릴리스를 사용하여 Windows에서 실행하는 것이 _가능_합니다.

소스에서 빌드

1. 필수 구성 요소 설치

이는 x86_64 및 aarch64의 여러 Ubuntu Linux 및 macOS 버전에서 테스트되었습니다.

필수 종속성:

  • cargo: 권장 방법: https://rustup.rs 에서 설치
  • cmake: vectorscan-sys 크레이트 및 다른 종속성 빌드에 필요
  • boost: vectorscan-sys 크레이트 빌드에 필요 (지원 버전 >=1.57)
  • git: noseyparker CLI에 버전 정보를 포함하는 데 필요
  • patch: vectorscan-sys 크레이트 빌드에 필요
  • pkg-config: vectorscan-sys 크레이트 빌드에 필요

도움말 얻기

인수 없이 noseyparker 바이너리를 실행하면 최상위 도움말을 출력하고 종료합니다. 특정 명령에 대한 간략한 도움말은 noseyparker COMMAND -h를 실행하여 얻을 수 있습니다. 더 자세한 도움말은 help 명령 또는 긴 형식의 --help 옵션으로 사용할 수 있습니다.

사전 빌드된 릴리스에는 명령줄 도움말을 한 곳에 모은 매뉴얼 페이지도 포함되어 있습니다. 이 매뉴얼 페이지를 Markdown 형식으로 변환한 것은 저장소 여기에도 포함되어 있습니다.

이 문서에서 답변되지 않은 질문이 있으면 토론 시작하기를 해주세요.

용어 및 데이터 모델

데이터 저장소

_데이터 저장소_는 Nosey Parker가 결과를 기록하고 내부 상태를 유지하는 데 사용하는 특수 디렉터리입니다. 필요한 경우 scan 명령에 의해 암시적으로 생성됩니다.

Blob

각 스캔된 입력을 _blob_이라고 합니다. 각 blob에는 git과 동일한 방식으로 계산된 SHA-1 다이제스트인 고유한 blob ID가 있습니다.

출처

각 blob에는 하나 이상의 provenance 항목이 연결되어 있습니다. Provenance 항목은 입력이 어떻게 발견되었는지 설명하는 메타데이터로, 예를 들어 파일 시스템의 파일 또는 Git 저장소 히스토리의 파일 등입니다.

규칙

Nosey Parker는 정규 표현식을 사용하는 규칙 기반 시스템입니다. 각 _규칙_은 일치하는 내용을 주변 컨텍스트와 분리하는 하나 이상의 캡처 그룹이 있는 단일 패턴을 가지고 있습니다. 사용 가능한 규칙은 noseyparker rules list로 나열할 수 있습니다.

규칙 세트

규칙 모음은 _규칙 세트_로 구성됩니다. Nosey Parker의 기본 규칙 세트는 비밀로 보이는 것을 탐지하는 규칙을 포함합니다. 다른 규칙 세트도 사용 가능하며, noseyparker rules list로 나열할 수 있습니다.

일치 항목

규칙의 패턴이 입력과 일치하면 _일치 항목_이 생성됩니다. 일치 항목은 규칙, blob ID, 시작 바이트 오프셋, 끝 바이트 오프셋으로 고유하게 정의되며, 이 필드들은 고유한 일치 식별자를 계산하는 데 사용됩니다.

발견 항목

규칙과 캡처 그룹을 공유하는 일치 항목은 _발견 항목_으로 결합됩니다. 즉, _발견 항목_은 일치 항목의 그룹입니다. 이는 Nosey Parker의 최상위 보고 단위입니다.

사용 예제

참고: Docker 사용 시...

Docker 이미지를 사용할 때는 다음 명령에서 noseyparker를 마운트된 볼륨을 사용하는 Docker 호출로 대체하세요:

root@kitploit:~
docker run -v "$PWD":/scan ghcr.io/praetorian-inc/noseyparker:latest <ARGS>

Docker 컨테이너는 /scan을 작업 디렉터리로 실행되므로, 컨테이너의 /scan에 $PWD를 마운트하면 명령줄 호출에서 탭 완성 및 상대 경로가 작동합니다.

로컬 Git 저장소를 포함한 파일시스템 콘텐츠 스캔

Nosey Parker의 파일시스템 비밀 스캔 워크플로를 보여주는 스크린샷

Nosey Parker는 파일, 디렉터리 및 Git 저장소의 전체 히스토리를 스캔하는 기본 지원을 제공합니다.

예를 들어, 로컬에 cpython.git에 CPython의 Git 클론이 있다면 scan 명령으로 스캔할 수 있습니다. Nosey Parker는 cpython.np에 새 데이터 저장소를 생성하고 그곳에 결과를 저장합니다. (cpython.np라는 이름은 중요하지 않으며, 원하는 대로 지정할 수 있습니다.)

root@kitploit:~
$ noseyparker scan -d cpython.np cpython.git
Scanned 19.19 GiB from 335,849 blobs in 17 seconds (1.11 GiB/s); 2,178/2,178 new matches

 Rule                            Findings   Matches   Accepted   Rejected   Mixed   Unlabeled
──────────────────────────────────────────────────────────────────────────────────────────────
 Generic API Key                        1         8          0          0       0           1
 Generic Password                       8     1,283          0          0       0           8
 Generic Username and Password          2        40          0          0       0           2
 HTTP Bearer Token                      1       108          0          0       0           1
 PEM-Encoded Private Key               61       151          0          0       0          61
 netrc Credentials                     27       588          0          0       0          27

Run the `report` command next to show finding details.

자세한 내용은 noseyparker help scan을 참조하세요.

HTTPS URL에서 Git 저장소 스캔

예를 들어, Nosey Parker 저장소 자체를 스캔하려면:

root@kitploit:~
noseyparker scan --datastore np.noseyparker --git-url https://github.com/praetorian-inc/noseyparker

자세한 내용은 noseyparker help scan을 참조하세요.

GitHub 사용자 또는 조직의 Git 저장소 스캔

--github-user=USER 또는 --github-org=ORG를 사용하세요. 예를 들어, octocat 사용자에 속한 접근 가능한 저장소를 스캔하려면:

root@kitploit:~
noseyparker scan --datastore np.noseyparker --github-user octocat

이러한 입력 지정자는 NP_GITHUB_TOKEN 환경 변수에 GitHub 토큰이 있으면 선택적으로 사용합니다. 액세스 토큰을 제공하면 더 높은 API 속도 제한을 얻고 추가 저장소에 접근할 수 있습니다.

자세한 내용은 noseyparker help scan을 참조하세요.

대화형으로 결과 검토 및 주석 달기

동반 프로젝트인 Nosey Parker Explorer를 참조하세요: Nosey Parker Explorer의 기본 인터페이스 스크린샷

사람이 읽을 수 있는 텍스트 형식으로 결과 보고

Nosey Parker의 사람이 읽을 수 있는 형식으로 결과 렌더링 워크플로를 보여주는 스크린샷

JSON 형식으로 결과 보고

Nosey Parker의 JSON 형식으로 결과 렌더링 워크플로를 보여주는 스크린샷

결과 요약

Nosey Parker는 스캔이 완료되면 결과 요약을 출력합니다. 스캔 후 이 단계를 별도로 실행할 수도 있습니다:

root@kitploit:~
$ noseyparker summarize --datastore np.cpython

 Rule                      Distinct Groups   Total Matches
───────────────────────────────────────────────────────────
 PEM-Encoded Private Key             1,076           1,192
 Generic Secret                        331             478
 netrc Credentials                      42           3,201
 Generic API Key                         2              31
 md5crypt Hash                           1               2

JSON 및 JSON lines을 포함한 추가 출력 형식이 --format=FORMAT 옵션을 통해 지원됩니다.

자세한 내용은 noseyparker help summarize를 참조하세요.

GitHub에서 저장소 열거

github repos list 명령을 사용하여 GitHub 사용자 또는 조직에 속한 저장소의 URL을 나열합니다. 이 명령은 GitHub REST API를 사용하여 사용자 또는 조직에 속한 저장소를 열거합니다. 예를 들어:

root@kitploit:~
$ noseyparker github repos list --user octocat
https://github.com/octocat/Hello-World.git
https://github.com/octocat/Spoon-Knife.git
https://github.com/octocat/boysenberry-repo-1.git
https://github.com/octocat/git-consortium.git
https://github.com/octocat/hello-worId.git
https://github.com/octocat/linguist.git
https://github.com/octocat/octocat.github.io.git
https://github.com/octocat/test-repo1.git

이 명령은 NP_GITHUB_TOKEN 환경 변수에 GitHub 토큰이 있으면 선택적으로 사용합니다. 액세스 토큰을 제공하면 더 높은 API 속도 제한을 얻고 추가 저장소에 접근할 수 있습니다.

JSON 및 JSON lines을 포함한 추가 출력 형식이 --format=FORMAT 옵션을 통해 지원됩니다.

자세한 내용은 noseyparker help github를 참조하세요.

통합

Nosey Parker에는 몇 가지 타사 통합이 있습니다:

  • Nosey Parker는 Homebrew에 패키징되어 있습니다.
  • Nosey Parker는 Arch Linux에 패키징되어 있습니다.
  • Nosey Parker를 실행하는 GitHub Action을 사용할 수 있습니다.
  • DefectDojo에는 Nosey Parker v0.16 JSON용 파서가 포함되어 있습니다.
  • Nemesis는 Nosey Parker를 지원합니다.
  • noseyparker-compact는 간결한 보고서 후처리기를 제공합니다.
  • segfault.net 일회용 루트 서버에는 Nosey Parker가 사전 설치되어 제공됩니다.

여기에 나열되지 않은 공유하고 싶은 통합이 있으면 PR을 생성해 주세요.

기여

Discussions 영역에서 질문하거나 아이디어를 공유하세요.

기여는 환영합니다, 특히 새로운 정규식 규칙을 환영합니다. 새로운 정규식 규칙 개발은 별도 문서에 자세히 설명되어 있습니다.

중요한 코드 변경을 고려하고 있다면 먼저 이슈를 열거나 토론을 시작해 주세요.

이 프로젝트에는 사용을 권장하는 여러 pre-commit 훅이 활성화되어 있습니다. 로컬 저장소에 설치하려면 pre-commit이 설치되어 있는지 확인하고 다음을 실행하세요:

root@kitploit:~
$ pre-commit install

이러한 검사는 간단한 오류를 신속하게 감지하는 데 도움이 됩니다.

라이선스

Nosey Parker는 Apache License, Version 2.0에 따라 라이선스가 부여됩니다.

도구 다운로드
  • sha256sum: 다이제스트 계산에 필요 (보통 coreutils 패키지에서 제공)
  • zsh: 빌드 스크립트에 필요
  • 2. create-release.zsh 스크립트를 사용하여 빌드

    root@kitploit:~
    $ rm -rf release && ./scripts/create-release.zsh
    

    성공하면 release에 릴리스 아티팩트로 채워진 디렉터리 구조가 생성됩니다. 명령줄 프로그램은 release/bin/noseyparker에 있습니다.