피드로 돌아가기
Who actually has admin access to your GitHub repos? Most teams have no idea
Dev.toDev.to
Security

60초 내 GitHub Access Sprawl 탐지를 위한 Read-only Governance Scanner 설계

Who actually has admin access to your GitHub repos? Most teams have no idea

Abhishek Chowdhury2026년 5월 10일5intermediate

Context

GitHub의 유연한 권한 모델로 인한 Access Drift 및 권한 과잉 부여 문제 발생. 기존 관리 방식은 수많은 레포지토리와 팀 설정을 수동으로 확인해야 하는 운영 효율성 저하 및 보안 취약점 내포.

Technical Solution

  • Read-only 설계를 통한 조직 설정 변경 위험 제거 및 보안성 확보
  • GitHub API 기반의 데이터 수집과 rules.py의 독립적 로직 분리를 통한 확장 가능한 룰 엔진 구조 설계
  • 90일 이상의 Inactive 상태 및 N개 이상의 레포지토리 Admin 권한 보유자 식별을 통한 Admin Sprawl 탐지 로직 구현
  • Jinja2 템플릿 기반의 HTML, Markdown, JSON 멀티 포맷 리포트 생성으로 감사 대응 및 SIEM 연동 지원
  • GitHub Actions의 Cron Job 연동을 통한 정기적인 Access Review 자동화 파이프라인 구축
  • Python requests 및 rich 라이브러리를 활용한 경량 CLI 인터페이스 구현으로 도입 마찰 최소화

1. 90일 이상 미접속자의 Write/Admin 권한 회수 여부 검토

2. 특정 레포지토리에 과도한 수의 Admin이 할당되었는지 임계치 설정 및 점검

3. 외부 협업자(Outside Collaborator)의 불필요한 권한 유지 여부 전수 조사

4. 직접 권한 부여(Direct Access) 대신 팀 기반 권한 관리로의 전환 가능성 검토

원문 읽기