
GitHub 셀프 호스팅 러너 열거 및 공격 도구
Gato, 또는 GitHub Attack Toolkit은 블루팀과 공격적 보안 실무자 모두가 GitHub 조직 내에서 탈취된 개인 액세스 토큰의 영향을 평가할 수 있게 해주는 열거 및 공격 도구입니다.
이 도구는 또한 자체 호스팅 러너를 사용하는 공개 저장소를 검색하고 철저히 열거할 수 있게 해줍니다. GitHub는 자체 호스팅 러너를 비공개 저장소에만 사용할 것을 권장하지만, 수천 개의 조직이 자체 호스팅 러너를 사용하고 있습니다.
Gato는 최소 Python 3.7 이상의 OS X와 Linux를 지원합니다.
도구를 설치하려면 저장소를 복제하고 pip install을 사용하면 됩니다. 가상 환경 내에서 수행하는 것을 권장합니다.
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에 있어야 합니다.
도구를 설치한 후 gato 또는 praetorian-gato를 실행하여 시작할 수 있습니다.
기본 도구의 매개변수는 gato -h를 사용하여 확인하고, 각 모듈의 매개변수는 다음을 실행하여 확인하는 것을 권장합니다:
gato search -hgato enum -hgato attack -h이 도구는 작동하기 위해 GitHub 클래식 PAT가 필요합니다. 생성하려면 GitHub에 로그인하고 GitHub Developer Settings로 이동하여 Generate New Token을 선택한 다음 Generate new token (classic)을 선택하세요.
토큰을 생성한 후 셸에서 export GH_TOKEN=<YOUR_CREATED_TOKEN>을 실행하여 GH_TOKEN 환경 변수를 설정하세요. 또는 토큰을 안전한 비밀번호 관리자에 저장하고 애플리케이션이 요청할 때 입력하세요.
문제 해결 및 개발자 모드 설치나 단위 테스트 실행과 같은 추가 세부 사항은 wiki를 참조하세요.
자세한 문서는 wiki를 참조하세요. 또한 도구의 다양한 모듈에 대한 OpSec 고려 사항도 확인하세요!
소프트웨어 내에서 버그를 발견했다고 생각되면 도구의 출력과 수행하려던 작업을 포함하여 이슈를 열어주세요.
동작이 버그인지 확실하지 않다면 대신 토론 섹션을 사용하세요!
기여를 환영합니다! 새로운 기능을 작업하기 전에 검토해 주세요. 우리의 설계 방법론과 코딩 표준을 확인하세요!
또한 도구에 중요한 변경을 제안하는 경우 이슈 열기를 통해 변경 동기에 대한 대화를 시작해 주세요.
Gato는 Apache License, Version 2.0에 따라 라이선스가 부여됩니다.
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.