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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
gato — GitHub Actions 파이프라인 열거 및 공격 도구 | Kitploit
도구/GitHubGitHub/praetorian-inc/gato
ReconnaissanceVulnerability ScannersExploitationInformation GatheringPost-ExploitationPenetration TestingDevSecOpsSecret DetectionSupply Chain SecurityRed TeamingArchived
GitHub
9194개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
praetorian-inc/gato

gato

GitHub Actions 파이프라인 열거 및 공격 도구

저장소 보기

[!WARNING]

이 저장소는 더 이상 사용되지 않으며 보관되었습니다.

Gato는 Praetorian의 멀티 플랫폼 CI/CD 취약점 탐지 및 공격 자동화 도구인 Trajan 으로 대체되었습니다. Trajan은 GitHub Actions(Gato)와 GitLab(Glato) CI/CD 공격 기능을 하나의 적극적으로 유지 관리되는 프로젝트로 통합합니다.

Trajan으로 마이그레이션하세요: https://github.com/praetorian-inc/trajan

이 저장소에는 더 이상 업데이트, 버그 수정 또는 보안 패치가 제공되지 않습니다.


Supported Python versions

Gato (GitHub Attack Toolkit)

gato

Gato, 즉 GitHub Attack Toolkit은 블루 팀원과 침투 테스트 실무자 모두 GitHub 조직의 공개 및 비공개 리포지토리 내에서 파이프라인 취약점을 식별하고 악용할 수 있도록 하는 열거 및 공격 도구입니다.

이 도구는 손상된 개인 액세스 토큰을 활용하기 위한 사후 침투 기능과 함께 공개 리포지토리에 대한 포이즈닝된 파이프라인 실행 취약점 및 작업 아티팩트 시크릿을 식별하는 열거 기능을 제공합니다.

GitHub는 자체 호스팅 러너를 비공개 리포지토리에만 사용할 것을 권장하지만, 수천 개의 조직이 자체 호스팅 러너를 사용하고 있습니다. 기본 구성은 종종 취약하며, Gato는 워크플로 파일 분석과 실행 로그 분석을 혼합하여 대규모로 잠재적으로 취약한 리포지토리를 식별합니다.

버전 1.7

Gato 버전 1.7은 Actions 아티팩트 시크릿 스캐너를 도입했습니다.

Actions 아티팩트 시크릿 스캐너는 시크릿을 위해 GitHub Actions 워크플로 아티팩트를 열거합니다. Praetorian 연구원들은 이 스크래너를 사용하여 여러 주요 오픈 소스 프로젝트에서 중요한 취약점을 식별했습니다. 이러한 취약점에 대한 세부 정보는 공개 절차가 완료된 후에 공개될 예정입니다. 이 작업은 처음에 Palo Alto Networks의 연구에서 영감을 받았습니다.

Actions 아티팩트 시크릿 스캐너는 다음 작업을 수행합니다:

  1. 대상 리포지토리에서 GitHub Actions 워크플로 아티팩트 다운로드
  2. 다운로드한 아티팩트를 재귀적으로 추출
  3. NoseyParker로 아티팩트에서 시크릿 스캔
  4. 결과 보고

NoseyParker는 Actions 아티팩트 시크릿 스캐너를 실행하는 시스템의 $PATH에 설치되어 있어야 합니다.

공개 워크플로 아티팩트의 시크릿은 많은 거짓 양성을 포함할 수 있습니다. 기본적으로 Actions 아티팩트 시크릿 스캐너는 일반적인 거짓 양성과 관련된 규칙 및 결과를 제외합니다. 모든 시크릿 스캔 결과를 포함하려면 --include_all_artifact_secrets 플래그를 사용할 수 있습니다.

다음은 GitHub 조직 목록에 대해 Actions 아티팩트 시크릿 스캐너를 실행하고, 자체 호스팅 러너 열거를 비활성화하고, 모든 아티팩트 시크릿 결과를 포함하며, JSON 파일로 출력하는 예제 명령입니다.

root@kitploit:~
gato e --enum_wf_artifacts --include_all_artifact_secrets --skip_sh_runner_enum -O testorgs.txt  -oJ testorgoutput.json

기본적으로 Actions 아티팩트 시크릿 스캐너는 단일 리포지토리에 소요되는 시간을 줄이기 위해 다음과 같은 제한을 적용합니다:

  • 이름당 하나의 아티팩트만 다운로드
  • 리포지토리당 최대 50개 아티팩트 다운로드
  • 536MB 초과 파일 최대 10개 다운로드
  • 2.68GB 초과 파일은 다운로드하지 않음

이러한 제약 조건은 Actions 아티팩트 시크릿 스캐너가 48시간 내에 상위 200개 GitHub 조직을 스캔할 수 있도록 최적화되었습니다. 이러한 제약 조건을 수정하려면 gato/enumerate/repository.py의 scan_wf_artifacts() 함수에서 업데이트할 수 있습니다.

새로운 기능

  • Actions 아티팩트 시크릿 스캐너 추가
  • GitHub 조직 목록에 대해 모듈 실행 지원
  • 자체 호스팅 러너 열거 비활성화 기능
  • 절전 비활성화 옵션
  • 출력에서 공개 및 비공개 리포지토리 구분
  • 여러 버그 수정
  • GitHub App 설치 토큰에 대한 열거 지원

대상 사용자

  • 손상된 클래식 PAT가 공격자에게 제공할 수 있는 액세스 수준을 이해하려는 보안 엔지니어
  • 자체 호스팅 러너 공격에 대한 탐지를 구축하려는 블루 팀
  • 레드 팀원
  • 자체 호스팅 러너를 사용하는 조직에 대해 RCE를 증명하려는 버그 바운티 헌터

기능

  • GitHub Classic PAT 권한 열거
  • GitHub 코드 검색 API 기반 열거
  • SourceGraph 검색 열거
  • GitHub Action 실행 로그 파싱을 통한 자체 호스팅 러너 식별
  • 대량 리포지토리 스파스 클론 기능
  • GitHub Action 워크플로 파싱
  • 자동 명령 실행 포크 PR 생성
  • 자동 명령 실행 워크플로 생성
  • 자동 워크플로 시크릿 유출
  • SOCKS5 프록시 지원
  • HTTPS 프록시 지원
  • GitHub Actions 워크플로 아티팩트 시크릿 스캐닝

시작하기

설치

Gato는 Python 3.7 이상이 설치된 OS X 및 Linux를 지원합니다.

도구를 설치하려면 리포지토리를 클론하고 pip install을 사용하세요. 가상 환경 내에서 수행하는 것이 좋습니다.

root@kitploit:~
git clone https://github.com/praetorian-inc/gato
cd gato
python3 -m venv venv
source venv/bin/activate
pip install .

Gato는 또한 git 버전 2.27 이상이 시스템의 PATH에 설치되어 있어야 합니다. 포크 PR 공격 모듈을 실행하려면 sed도 시스템 PATH에 설치되어 있어야 합니다.

Dev 브랜치

메인에 아직 추가되지 않은 최신 Gato 기능을 포함하는 개발 브랜치를 유지 관리합니다. 버그가 발생할 가능성이 더 높지만, dev 브랜치에서도 통합 테스트 스위트를 실행하므로 명백한 버그는 없을 것입니다.

dev 브랜치를 사용하려면 pip install을 실행하기 전에 체크아웃하기만 하면 됩니다!

특정 사용 사례에서 버그가 발생하면 이슈를 열어주세요!

사용법

도구를 설치한 후 gato 또는 praetorian-gato를 실행하여 시작할 수 있습니다.

기본 도구의 매개변수를 보려면 gato -h, 각 모듈의 매개변수를 보려면 다음을 실행하는 것이 좋습니다:

  • gato search -h
  • gato enum -h
  • gato attack -h

도구가 작동하려면 GitHub 클래식 또는 앱 설치 토큰이 필요합니다. 토큰을 생성하려면 GitHub에 로그인하여 GitHub Developer Settings로 이동한 후 Generate New Token을 선택하고 Generate new token (classic)을 선택하세요.

토큰을 생성한 후 셸에서 export GH_TOKEN=<YOUR_CREATED_TOKEN>을 실행하여 GH_TOKEN 환경 변수를 설정하세요. 또는 안전한 비밀번호 관리자에 토큰을 저장하고 애플리케이션이 요청할 때 입력하세요.

GitHub App 설치 토큰을 생성하는 경우, 앱에는 열거 모듈을 실행하기 위해 최소한 Actions:read 및 Contents:read 권한이 있어야 합니다.

문제 해결 및 개발자 모드 설치 또는 단위 테스트 실행과 같은 추가 세부 사항은 wiki를 참조하세요.

문서

자세한 문서와 도구의 다양한 모듈에 대한 OpSec 고려 사항은 wiki를 참조하세요!

버그

소프트웨어에서 버그를 발견했다고 생각되면 도구의 출력과 수행하려던 작업을 포함하여 이슈를 열어주세요.

동작이 버그인지 확실하지 않은 경우 대신 토론 섹션을 사용하세요!

기여

기여를 환영합니다! 새로운 기능을 작업하기 전에 설계 방법론 및 코딩 표준을 검토해 주세요.

또한 도구에 중요한 변경 사항을 제안하는 경우 이슈를 열어 변경 동기에 대한 대화를 시작하세요.

라이선스

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

root@kitploit:~
Copyright 2023 Praetorian Security, Inc

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
도구 다운로드