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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
legitify — GitHub 및 GitLab 자산 전체의 잘못된 구성과 보안 위험을 탐지하고 해결합니다. | Kitploit
도구/GitHubGitHub/legit-labs/legitify
Vulnerability ScannersConfiguration AuditingCloud SecurityDevSecOpsSupply Chain SecurityMisconfiguration
GitHublegit-labs/legitify

legitify

GitHub 및 GitLab 자산 전체의 잘못된 구성과 보안 위험을 탐지하고 해결합니다.

저장소 보기
88078152년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
웹사이트
공유

Build & Test Code Analysis Version Releaser Build Docs Go Report Card
Legitify Logo

소스 코드 관리의 보안 태세를 강화하세요!
모든 GitHub 및 GitLab 자산에서 잘못된 구성, 보안 및 규정 준수 문제를 쉽게 탐지하고 해결하세요 🔥
by Legit Security.

Legit Security가 무엇을 하는지 궁금하신가요?

Legit Security는 애플리케이션 보안 태세 관리(ASPM) 및 소프트웨어 공급망 보안 솔루션입니다.
자세한 내용은 비교표를 확인하세요.

https://user-images.githubusercontent.com/107790206/210602039-2d022692-87ea-4005-b9c6-f091158de3ce.mov

설치

여러 가지 방법으로 설치할 수 있습니다:

  • macOS(또는 linux)를 사용하는 경우 homebrew를 통해:
brew install legitify
  • https://github.com/Legit-Labs/legitify/releases에서 최신 legitify 릴리스를 다운로드할 수 있습니다. 각 아카이브에는 다음이 포함됩니다:

    • 대상 플랫폼용 Legitify 바이너리
    • Legit Security에서 제공하는 내장 정책
  • 소스에서 다음 단계로 설치:

git clone [email protected]:Legit-Labs/legitify.git
go run main.go analyze ...
  • GitHub CLI 확장으로 (자세한 내용은 https://github.com/Legit-Labs/gh-legitify 확인)
gh extension install legit-labs/gh-legitify
gh legitify

CI - Legitify 사용자 정의 GitHub Action

Legitify Custom GitHub Actions를 사용하여 CI 프로세스의 일부로 legitify를 실행할 수 있습니다:

name: Legitify Analyze
on:
    workflow_dispatch:
    schedule:
      - cron: '0 11 * * 1-5'

jobs:
  analyze:
    runs-on: ubuntu-latest
    steps:
      - name: Legitify Action
        uses: Legit-Labs/legitify@main
        with:
          github_token: ${{ secrets.PAT_FOR_LEGITIFY }}
          ignore-policies: |
             non_admins_can_create_public_repositories
             requires_status_checks

추가 매개변수 및 구성은 액션 파일을 확인하세요.

출처

legitify 사용자의 소프트웨어 공급망 보안을 강화하기 위해, v0.1.6부터 모든 legitify 릴리스에는 SLSA 레벨 3 출처 문서가 포함되어 있습니다.
출처 문서는 릴리스의 모든 아티팩트와 생성된 도커 이미지를 참조합니다.
SLSA 프레임워크의 공식 검증 도구를 사용하여 출처를 확인할 수 있습니다.
v0.1.6 릴리스의 darwin_arm64 아키텍처 사용 예시:

VERSION=0.1.6
ARCH=darwin_arm64
./slsa-verifier verify-artifact --source-branch main --builder-id 'https://github.com/slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@refs/tags/v1.2.2' --source-uri "git+https://github.com/Legit-Labs/legitify" --provenance-path multiple.intoto.jsonl ./legitify_${VERSION}_${ARCH}.tar.gz

명령어

analyze

SCM_TOKEN=<your_token> legitify analyze

기본적으로 legitify는 모든 리소스(조직, 리포지토리, 멤버, 액션)에 대해 정책을 확인합니다. 보관된 리포지토리는 건너뜁니다.

명령줄 플래그 --namespace와 --org를 사용하여 분석할 리소스를 제어할 수 있습니다:

  • --namespace (-n): 지정된 리소스와 관련된 정책을 분석합니다.
  • --org: 분석을 특정 GitHub 조직 또는 GitLab 그룹으로 제한하며, 보관된 리포지토리는 제외합니다.
  • --repo: 분석을 특정 GitHub 리포지토리 또는 GitLab 프로젝트로 제한합니다.
  • --scm: 소스 코드 관리 플랫폼을 지정합니다. 가능한 값: github 또는 gitlab. 기본값은 github입니다. GitLab에서 실행할 경우 --scm gitlab이 필요합니다.
  • --enterprise: 분석할 엔터프라이즈를 지정합니다. 엔터프라이즈를 분석하려면 엔터프라이즈 슬러그를 제공해야 합니다.
SCM_TOKEN=<your_token> legitify analyze --org org1,org2 --namespace organization,member

위 명령은 org1과 org2에 대해 조직 및 멤버 정책을 테스트합니다.

gpt-analysis

SCM_TOKEN=<your_token> OPENAI_TOKEN=<token> ./legitify gpt-analysis --repo org1/repo1 --org org1

제공된 리포지토리 또는 조직의 보안 태세에 대한 GPT-3 기반 분석.

참고: 리포지토리/조직 메타데이터가 openai 서버로 전송됩니다.

플래그:

  • --org: 분석을 특정 GitHub 조직 또는 GitLab 그룹으로 제한합니다.
  • --repo: 분석을 특정 GitHub 리포지토리 또는 GitLab 프로젝트로 제한합니다.
  • --scm: 소스 코드 관리 플랫폼을 지정합니다. 가능한 값: github 또는 gitlab. 기본값은 github입니다.
  • --token: SCM용 토큰 (또는 SCM_TOKEN 환경 변수 설정).
  • --openai-token: openai API용 토큰 (또는 OPENAI_TOKEN 환경 변수 설정).

--org 또는 --repo 중 하나 또는 둘 다를 제공해야 합니다.

openai 토큰 생성:

  1. https://beta.openai.com/signup으로 이동하여 openai 계정을 만듭니다.
  2. https://platform.openai.com/account/api-keys에서 "Create new secret key"를 누릅니다.

GitHub Action 사용법

워크플로에서 legitify를 GitHub Action으로 실행할 수도 있습니다. 구체적인 예제는 action_examples 디렉토리를 참조하세요.

요구 사항

GitHub (클라우드 및 엔터프라이즈 서버)

  1. legitify를 최대한 활용하려면 최소한 하나의 GitHub 조직의 소유자여야 합니다. 그렇지 않으면 조직 내 최소 하나의 리포지토리 관리자인 경우에도 도구를 사용할 수 있으며, 이 경우 리포지토리 관련 정책 결과만 볼 수 있습니다.
  2. legitify는 리소스를 성공적으로 분석하기 위해 GitHub 개인 액세스 토큰(PAT)이 필요하며, 인수(-t) 또는 환경 변수(SCM_TOKEN)로 제공할 수 있습니다. 전체 분석을 위해 PAT에는 다음 스코프가 필요합니다:
admin:org, read:enterprise, admin:org_hook, read:org, repo, read:repo_hook

자세한 내용은 개인 액세스 토큰 생성을 참조하세요.
세분화된 개인 액세스 토큰은 현재 지원되지 않습니다.

GitHub Enterprise Server

환경 변수 SERVER_URL에 엔드포인트 URL을 설정하면 GitHub Enterprise Server 인스턴스에 대해 legitify를 실행할 수 있습니다:

export SERVER_URL="https://github.example.com/"
SCM_TOKEN=<your_token> legitify analyze --org org1,org2 --namespace organization,member

GitLab 클라우드/서버

  1. 이전 섹션에서 언급했듯이, 최소한 하나의 GitLab 그룹의 소유자여야 합니다. 그렇지 않으면 그룹 내 최소 하나의 프로젝트 관리자인 경우 도구를 사용할 수 있으며, 이 경우 프로젝트 관련 정책 결과만 볼 수 있습니다.
  2. legitify는 리소스를 성공적으로 분석하기 위해 GitLab 개인 액세스 토큰(PAT)이 필요하며, 인수(-t) 또는 환경 변수(SCM_TOKEN)로 제공할 수 있습니다. 전체 분석을 위해 PAT에는 다음 스코프가 필요합니다: read_api, read_user, read_repository, read_registry 자세한 내용은 개인 액세스 토큰 생성을 참조하세요.
    GitLab Cloud에 대해 legitify를 실행하려면 scm 플래그를 gitlab --scm gitlab으로 설정하고, GitLab Server에 대해 실행하려면 SERVER_URL도 제공해야 합니다:
export SERVER_URL="https://gitlab.example.com/"
SCM_TOKEN=<your_token> legitify analyze --namespace organization --scm gitlab

참고 1: 잘못된 서버 인증서를 무시하려면 ignore-invalid-certificate 플래그를 전달하세요.

참고 2: 프리미엄이 아닌 GitLab 계정의 경우 일부 정책(예: 브랜치 보호 정책)이 건너뛰어집니다.

네임스페이스

legitify의 네임스페이스는 수집되어 정책에 대해 실행되는 리소스입니다. 현재 다음 네임스페이스가 지원됩니다:

  1. organization - GitHub 조직(또는 GitLab 그룹) 수준 정책 (예: "조직에 대해 2단계 인증이 적용되지 않음")
  2. actions - 조직 GitHub Actions 정책 (예: "GitHub Actions 실행이 확인된 Actions로 제한되지 않음")
  3. member - 기여자 수준 정책 (예: "오래된 관리자 발견")
  4. repository - GitHub 리포지토리(또는 GitLab 프로젝트) 수준 정책 (예: "최소 2명의 리뷰어에 의한 코드 리뷰가 적용되지 않음"). 참고: 보관된 리포지토리는 --repo 인수로 직접 지정되지 않는 한 무시됩니다.
  5. runner_group - 러너 그룹 정책 (예: "러너가 공개 리포지토리에서 사용 가능")

기본적으로 legitify는 모든 네임스페이스를 분석합니다. --namespace 플래그와 선택한 네임스페이스의 쉼표로 구분된 목록을 사용하여 선택한 네임스페이스로 제한할 수 있습니다.

출력 옵션

기본적으로 legitify는 사람이 읽을 수 있는 형식으로 결과를 출력합니다. 여기에는 심각도별로 나열된 정책 위반 목록과 네임스페이스별로 정렬된 요약 테이블이 포함됩니다.

출력 형식

--output-format (-f) 플래그를 사용하여 legitify는 다음 형식으로 결과를 출력할 수 있습니다:

  1. human-readable - 사람이 읽을 수 있는 텍스트 (기본값).
  2. json - 표준 JSON.
  3. sarif - SARIF 형식 (정보).

출력 구성

--output-scheme 플래그를 사용하여 legitify는 결과를 다양한 그룹화 방식으로 출력할 수 있습니다. 참고: 기본이 아닌 구성을 출력하려면 --output-format=json을 지정해야 합니다.

도구 다운로드