Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
foxguard — 빠른 범용 코드 보안 스캐너로, Rust로 작성되었습니다. 모든 기능이 포함되어 있습니다: 14개 언어 지원, 분류를 위한 TUI, 비밀 정보, 양자 이후 감사, 차이 인식 스캔 등 𓃥 | Kitploit
도구/GitHubGitHub/0sec-labs/foxguard
Static AnalysisVulnerability ScannersEncryption/Decryption ToolsCode AnalysisConfiguration AuditingCryptographyDevSecOpsSecret DetectionSupply Chain SecurityMachine LearningMisconfiguration
28015453일 전Kitploit 검토 완료
GitHub
0sec-labs/foxguard

foxguard

빠른 범용 코드 보안 스캐너로, Rust로 작성되었습니다. 모든 기능이 포함되어 있습니다: 14개 언어 지원, 분류를 위한 TUI, 비밀 정보, 양자 이후 감사, 차이 인식 스캔 등 𓃥

저장소 보기웹사이트

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
<p align="center">
  <img src="https://raw.githubusercontent.com/0sec-labs/foxguard/main/www/public/foxguard-logo.png" width="128" alt="foxguard" />
</p>

<h1 align="center">foxguard</h1>

<p align="center">
  <strong>코드, 시크릿, 의존성, 암호화 위험을 위한 빠른 로컬 보안 스캐닝.</strong>
  <br />
  <sub>오픈 사이버보안 하네스인 <a href="https://github.com/0sec-labs/0sec">0sec</a>에 통합되어 있습니다.</sub>
</p>

<p align="center">
  <a href="https://github.com/0sec-labs/foxguard/actions/workflows/ci.yml"><img src="https://github.com/0sec-labs/foxguard/actions/workflows/ci.yml/badge.svg" alt="CI" /></a>
  <a href="https://github.com/0sec-labs/foxguard"><img src="https://img.shields.io/badge/foxguard-clean-3fb950" alt="foxguard: clean" /></a>
  <a href="https://crates.io/crates/foxguard"><img src="https://img.shields.io/crates/v/foxguard?color=d97706&amp;label=crates.io" alt="crates.io" /></a>
  <a href="https://www.npmjs.com/package/foxguard"><img src="https://img.shields.io/npm/v/foxguard?color=d97706&amp;label=npm" alt="npm" /></a>
  <a href="https://pypi.org/project/foxguard/"><img src="https://img.shields.io/pypi/v/foxguard?color=d97706&amp;label=PyPI" alt="PyPI" /></a>
  <a href="https://github.com/apps/foxguard-app/installations/new"><img src="https://img.shields.io/badge/GitHub_App-Install-2ea44f?logo=github" alt="Install GitHub App" /></a>
</p>

```sh
npx foxguard .
```

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/13909/2ce579a58299a47cd3e965f13b97bf1c5dcaf020496d4a4eb2141d414ff7bd0c.gif" alt="foxguard scan demo" width="640" />
</p>

## 왜 필요한가

- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/checklist.png" alt="">&nbsp; 12개 소스 언어에 걸친 200개 이상의 내장 규칙과 구성 및 매니페스트 검사
- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/git-branch.png" alt="">&nbsp; 14개 언어에 대한 테인트 추적, Python, JavaScript, Go, Java, Ruby, PHP, C#, Kotlin에 대한 파일 간 분석 지원
- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/zap.png" alt="">&nbsp; 빠른 로컬 및 CI 스캔, "이 브랜치가 무엇을 추가했는가?"를 위한 diff 모드 지원
- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/key.png" alt="">&nbsp; 시크릿 스캐닝, OSV 기반 의존성 스캐닝, 포스트 양자 암호화 감사
- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/plug.png" alt="">&nbsp; 공개 레지스트리의 약 98%를 로드하는 Semgrep/OpenGrep 호환 YAML 브리지 ([커버리지 보고서](https://github.com/0sec-labs/foxguard/blob/main/docs/parity/registry-coverage.md))
- <img height="14" src="https://raw.githubusercontent.com/0sec-labs/.github/main/profile/assets/icons/file-code.png" alt="">&nbsp; 터미널, JSON, SARIF, CycloneDX 1.6 CBOM, Semgrep 호환 JSON 출력

## 설치

```sh
npx foxguard .                                      # 설치 불필요
pipx install foxguard                               # PyPI의 사전 빌드된 CLI
curl -fsSL https://foxguard.dev/install.sh | sh     # 사전 빌드된 바이너리 (macOS/Linux)
cargo install foxguard                              # 소스에서 설치
```

독립 실행형 바이너리 설치 프로그램은 GitHub 릴리스 바이너리를 `checksums.txt`와 대조하여 검증합니다. 릴리스 바이너리는 GitHub 아티팩트 증명도 게시합니다. 수동 검증에는 `gh attestation verify`를 사용하거나 [릴리스 출처](https://github.com/0sec-labs/foxguard/blob/main/docs/release-provenance.md)를 참조하세요.

PyPI 휠은 Linux glibc 2.28+ (x86_64/ARM64), macOS (Intel/Apple Silicon), Windows x86_64에서 Python 3.9+를 지원합니다. 기존 Python 가상 환경에서는 `python -m pip install foxguard`를 대신 사용하세요. 이들은 Rust 컴파일러나 런타임 바이너리 다운로드 없이 네이티브 CLI를 설치합니다. Python API는 제공되지 않습니다. Alpine/musl 사용자는 독립 실행형 Linux 릴리스 바이너리를 사용해야 합니다.

**GitHub Action:**

```yaml
- uses: 0sec-labs/foxguard/[email protected]
  with:
    path: .
    severity: medium
    fail-on-findings: "true"
    upload-sarif: "true"
```

**pre-commit:**

```yaml
repos:
  - repo: https://github.com/0sec-labs/foxguard
    rev: v0.14.0
    hooks:
      - id: foxguard
```

통합: [GitHub App](https://github.com/apps/foxguard-app/installations/new), [VS Code](https://marketplace.visualstudio.com/items?itemName=peaktwilight.foxguard), [Claude Code 플러그인](https://github.com/0sec-labs/foxguard/blob/main/docs/claude-code-integration.md), [MCP 서버](https://github.com/0sec-labs/foxguard/blob/main/docs/mcp-server.md).

### 호스팅된 GitHub App 운영

`foxguard-github-app`은 줄바꿈으로 구분된 JSON 로그를 기록합니다. 완료 및 실패한 스캔은 `event=foxguard.scan.completed`와 `event=foxguard.scan.failed`를 사용하며, 상관 관계를 위한 전달, 설치, 저장소, PR, 커밋, 기간, `usage_scope` 필드를 포함합니다. 식별자는 메트릭 레이블이 아닌 로그 필드로 유지하세요.

`FOXGUARD_INTERNAL_ACCOUNTS`를 자신의 GitHub 계정 및 조직의 쉼표로 구분된 목록으로 설정하세요. 일치 여부는 대소문자를 구분하지 않습니다. 다른 소유자는 `external`로 분류되며, 목록이 설정되지 않았거나 소유자가 누락된 경우 `unknown`이 생성됩니다. 외부 활동은 유료 고객의 증거가 아니며, 스캔은 사람이 아닙니다.

설치 레지스트리는 시작 시 및 매시간 GitHub의 App 설치 API의 모든 페이지와 대조하여 조정됩니다. 새로 고침 실패 시 기존 상태가 유지되며, 동시 웹훅이 우선합니다. 희소한 웹훅 메타데이터는 알려진 계정 세부 정보와 관찰된 저장소 이름을 보존합니다. 이러한 이름은 설치의 접근 가능한 저장소에 대한 완전한 인벤토리가 아닙니다.

`FOXGUARD_INSTALLATIONS_PATH`와 `FOXGUARD_PULL_REQUEST_JOBS_PATH`를 영구 저장소에 유지하세요. 스캔 실패와 함께 `foxguard.installations.reconcile_failed`를 모니터링하세요. `foxguard.installations.reconciled`는 성공적인 새로 고침 후 총 설치 수와 내부/외부/알 수 없는 설치 수를 보고합니다. `FOXGUARD_PR_WORKERS`는 측정된 스캐너 최대 메모리와 컨테이너 메모리 제한에 맞게 크기를 조정하세요. 자식 프로세스의 OOM 종료는 호스팅된 애플리케이션을 재시작하지 않고 발생할 수 있습니다.

## 빠른 시작

```sh
foxguard .                              # 모든 항목 스캔
foxguard diff main .                    # main 대비 새로운 발견만
foxguard tui .                          # 대화형 터미널 검토
foxguard secrets .                      # 유출된 자격 증명 및 키
foxguard sca .                          # OSV의 의존성 취약점
foxguard pqc .                          # 포스트 양자 암호화 감사
foxguard --format sarif . > results.sarif
foxguard --format semgrep-json .        # Semgrep CLI 호환 JSON
```

`foxguard --fix src/` 또는 `foxguard --fix src/app.py`를 사용하여 지원되는 테인트 수정을 제자리에서 적용하세요. 대상은 표준 스캔 디렉터리 또는 선택한 파일과 대조하여 확인되며, 해당 범위를 벗어난 발견은 건너뜁니다. Python 명령 주입 수정은 필요할 때 `import subprocess`를 추가하며, 모듈 docstring과 future import를 보존합니다. 커밋하기 전에 생성된 변경 사항을 검토하세요.

네이티브 코드 스캐너의 파일 읽기, 메타데이터, 디렉터리 순회 실패는 성공적인 보고서를 생성하거나 베이스라인을 덮어쓰는 대신 종료 코드 `2`로 종료됩니다. 의도적인 제외와 지원되지 않거나 바이너리이거나 크기가 큰 파일은 건너뛰기로 유지됩니다. 스캔 커버리지를 확인할 때 건너뛴 파일 알림을 검사하세요.

## 터미널 검토

`foxguard tui .`를 실행하고 화살표 또는 Tab으로 **Scan**, **Diff**, **Secrets**, **PQC**를 선택하세요. Diff 모드에서는 Enter를 누르기 전에 대상 브랜치를 입력하세요. 넓은 터미널은 발견 항목을 세부 정보 옆에 표시하고, 작은 터미널은 확장 가능한 세부 정보 보기가 있는 목록을 사용합니다. 소스 컨텍스트, 데이터 흐름, 수정 사항은 발견 항목이 제공하는 경우 항상 스크롤할 수 있습니다.

헤더는 스캔 통계와 베이스라인 카테고리를 분리합니다. 선택된 소스 범위는 추가 주석 행 없이 인라인으로 강조 표시됩니다. 열기 컨트롤은 콘텐츠가 스크롤되는 동안 라이브 세부 정보 창 아래에 유지되며, 축약된 파일 위치는 줄 및 열 접미사를 유지합니다. 검색 및 대화 상자는 활성 상태일 때 자체 단축키를 소유합니다.

소스 컨텍스트를 로드할 수 없는 경우 저장된 발견 스니펫을 계속 사용할 수 있습니다. 시크릿은 원시 소스를 세부 정보 창에 로드하는 대신 수정된 스니펫을 사용합니다.

로딩 카드는 백분율 추정치가 아닌 불확정 활동과 실제 경과 시간을 표시합니다. 스캔 중에는 Ctrl+C로 종료합니다.

| 키 | 동작 |
|-----|--------|
| `j` / `k`, 화살표, Home / End | 발견 항목 간 이동 |
| `v` | 세부 정보 확장 또는 목록/분할 보기로 돌아가기 |
| PageUp / PageDown | 목록 페이지 이동 또는 보이는 세부 정보 스크롤 |
| `/`, Enter | 검색 편집 및 적용 |
| Ctrl+U | 편집 중인 검색 지우기 |
| Esc | 모달 닫기, 검색 편집 취소, 확장된 세부 정보 나가기 또는 적용된 필터 지우기 |
| `0`–`4`, `c`, Shift+C | 최소 심각도, 신뢰도 임계값, 정렬 순서 |
| `f` | All → Unreviewed → Todo → Reviewed → Ignore 순환 |
| `i` | 분류 작업 미리 보기 및 적용 |
| Space, `a`, `x` | 발견 항목 하나 체크, 보이는 선택 토글, 일괄 작업 미리 보기 |
| Shift+F | 명명된 필터 저장, 로드, 교체 또는 삭제; 검토 저장소 복구 |
| `b` | 비교가 가능한 경우 베이스라인 카테고리 순환 |
| Tab, Enter / `o` | 발견 항목/소스/싱크 선택 및 편집기에서 열기 |
| `w`, `[` / `]` | 알림 표시 및 기록 스크롤; 최신 알림이 먼저 표시됨 |
| `e` | CBOM, JSON 또는 SARIF 내보내기 |
| `?`, `q` / Ctrl+C | 도움말 및 종료; Ctrl+C는 모든 모달 내에서도 작동 |

Enter와 `o`는 비어 있지 않은 `$VISUAL`을 사용한 다음 `$EDITOR`를 사용합니다. 두 설정이 모두 없으면 foxguard는 사용 가능한 데스크톱 오프너를 고려하기 전에 `PATH`에서 `nvim`, `vim`, `nano`, `vi`를 찾습니다. 헤드리스 터미널은 `xdg-open`이 필요하지 않습니다. 예를 들어 `VISUAL="nvim" foxguard tui .`를 실행하거나 `EDITOR='code --wait'`를 설정하세요. 잘못된 명시적 편집기 설정은 조용히 대체되지 않고 보고됩니다. 사용 가능한 편집기가 없으면 TUI는 설정 안내와 함께 열린 상태로 유지됩니다. 지원되는 편집기는 선택한 발견 항목/소스/싱크 줄로 이동합니다.

검토 표시는 사용자별 저장소에 자동으로 유지되며, 표준 프로젝트 루트와 스캔 모드(Diff 모드의 대상 포함)로 범위가 지정됩니다. 명명된 필터는 Shift+F로 로드할 때 검색, 심각도, 신뢰도, 검토 상태, 정렬, 베이스라인 카테고리를 복원합니다. 저장소 스캔 구성을 변경하지는 않습니다. 목록은 보이는/전체 발견 항목과 검토 진행 상황을 표시합니다. 필터나 정렬을 변경해도 발견 항목이 계속 보이는 경우 동일한 발견 항목이 선택된 상태로 유지됩니다. 검색 편집을 취소하면 이전에 적용된 쿼리가 복원됩니다.

체크된 발견 항목은 필터 변경 후에도 유지됩니다. `x`는 일괄 작업을 열고, Enter는 정확한 대상, 숨겨진 선택 수, 대상, 효과 범위를 표시합니다. `y`만 미리 보기를 적용하며, Enter를 다시 눌러도 확인되지 않고 Esc는 쓰기 없이 취소합니다. 베이스라인 작업은 정확한 지문을 추가합니다. 규칙/파일 및 프로젝트 전체 구성 작업은 미리 보기가 경고하는 대로 선택되지 않은 발견 항목에도 영향을 미칠 수 있습니다. 구성 대상이 실패하면 성공한 쓰기는 유지되고 결과가 보고됩니다. 일괄 작업은 트랜잭션이 아닙니다.

저장소는 Linux에서 `$XDG_STATE_HOME/foxguard/tui` (또는 `~/.local/state/foxguard/tui`), macOS에서 Application Support, Windows에서 `%LOCALAPPDATA%`를 사용합니다. 원자적 쓰기와 리비전 검사는 한 터미널이 다른 터미널을 조용히 덮어쓰는 것을 방지합니다. 저장소 오류는 로컬 변경 사항을 눈에 띄게 **UNSAVED**로 남깁니다. Shift+F에서 `w`는 저장을 재시도하고, `r`은 디스크에서 명시적으로 다시 로드하며, Shift+R은 현재 프로젝트/모드의 백업 및 재설정을 확인합니다. 다시 로드/재설정은 저장되지 않은 변경 사항을 버릴 수 있습니다. 재설정은 저장되지 않은 표시가 아닌 이전 디스크 바이트를 보존합니다. 검토 저장소에는 소스 코드가 아닌 지문과 필터 설정이 포함됩니다.

내보내기는 보이는 필터링된 행뿐만 아니라 현재 스캔의 결과를 포함하며 현재 작업 디렉터리에 기록됩니다. 기존 일반 파일은 명시적인 `y` 확인이 필요하며 Esc는 취소합니다. 쓰기는 원자적이며 대상 심볼릭 링크(끊어진 링크 포함)는 거부됩니다.

`foxguard tui --baseline .foxguard/baseline.json .`을 사용하여 저장된 베이스라인 비교를 검토하세요. CLI 억제와 달리 터미널 검토는 현재 발견 항목을 유지하고 **introduced**, **recurring**, **resolved** 항목을 분리합니다. Resolved는 검증된 수정이 아니라 현재 스캔의 출력에 없음을 의미합니다. 동등한 범위, 규칙, 임계값을 비교하세요. 베이스라인 ID에는 파일과 소스 위치가 포함되므로 발견 항목을 이동하면 introduced와 resolved로 나타날 수 있습니다. Resolved 행은 읽기 전용 기록 메타데이터이며 검색만 적용되고 `v`는 스크롤 가능한 세부 정보를 확장합니다. 현재 발견 항목 카테고리로 다시 전환하여 현재 스캔을 분류하거나 내보내세요. Git Diff는 브랜치에 대한 별도의 비교로 유지됩니다.

## 언어 지원

| 언어 | 내장 규칙 | 테인트 추적 | 프레임워크 인식 규칙 |
|----------|:-:|:-:|---|
| JavaScript / TypeScript | 예 | 예 | Express, Next.js |
| Python | 예 | 예 | Django, Flask, FastAPI |
| Go | 예 | 예 | Gin |
| Kotlin | 예 | 예 | Spring |
| Java | 예 | 예 | Spring |
| Ruby | 예 | 예 | Rails |
| PHP | 예 | 예 | Laravel |
| Rust | 예 | -- | -- |
| C# | 예 | 예 | .NET |
| Swift | 예 | 예 | iOS |
| Haskell | 예 | -- | Cardano 시드 규칙 |

테인트 추적은 C, Bash, Solidity도 지원합니다. 구성, 매니페스트, 외부 규칙 스캔은 Dockerfile, Nginx, Apache, HAProxy, HCL/Terraform, YAML/JSON/XML/HTML, Semgrep YAML/Coccinelle을 통한 C 등을 지원합니다.

## 보안 모드

```sh
foxguard sca .
foxguard pqc .
foxguard --rules ./semgrep-rules .
```

SCA는 `Cargo.lock`, `package-lock.json`, `pnpm-lock.yaml`, `requirements.txt`, `poetry.lock`, `Pipfile.lock`을 지원합니다. PQC 감사는 양면 스코어카드입니다. CNSA 2.0 마이그레이션 기한과 함께 양자 취약 프리미티브(RSA, ECDSA/DSA, ECDH/DH)를 표시하고, 이미 사용 중인 포스트 양자 알고리즘(ML-KEM, ML-DSA, SLH-DSA, FN-DSA, HQC, X25519MLKEM768과 같은 하이브리드)을 정보성 양자 저항 인벤토리로 감지하여 마이그레이션 준비 비율을 보고합니다. 양쪽 모두 CycloneDX 1.6 CBOM으로 내보내며, 여기서 포스트 양자 알고리즘은 취약점이 아닌 양자 저항 자산으로 나타납니다.

## 구성

foxguard는 스캔 경로에서 위로 `.foxguard.yml`을 자동 검색합니다.

```yaml
scan:
  baseline: .foxguard/baseline.json
  disable_rules: [py/no-eval]

secrets:
  exclude_paths: [fixtures, testdata]
```

허용된 발견 항목을 `// foxguard: ignore[rule-id]`로 인라인 억제하세요.

## 문서

[문서 색인](https://github.com/0sec-labs/foxguard/blob/main/docs/README.md)부터 시작하세요. 주요 참조: [아키텍처](https://github.com/0sec-labs/foxguard/blob/main/docs/architecture.md), [Semgrep/OpenGrep 호환성](https://github.com/0sec-labs/foxguard/blob/main/docs/compatibility.md), [릴리스 런북](https://github.com/0sec-labs/foxguard/blob/main/docs/releasing.md).

## 벤치마크

| Repo | LoC | foxguard | Semgrep | Speedup |
|------|-----|----------|---------|---------|
| express | 15K JS | 0.28s | 6.09s | **22x** |
| flask | 14K Py | 0.33s | 6.51s | **20x** |
| gin | 18K Go | 0.50s | 4.95s | **10x** |
| sentry | 1.3M Py | 35s | 194s | **5x** |

`./benchmarks/run.sh`로 재현하세요. 결과는 머신에 따라 다릅니다. [`benchmarks/README.md`](https://github.com/0sec-labs/foxguard/blob/main/benchmarks/README.md)를 참조하세요.

## 기여

규칙 작성, 테스트, 개발 설정은 [`CONTRIBUTING.md`](https://github.com/0sec-labs/foxguard/blob/main/CONTRIBUTING.md)를 참조하세요.

## 라이선스

MIT OR Apache-2.0 -- [0sec Labs](https://0sec.ai)
도구 다운로드