GitHub

다운로드 51
업데이트 2025. 11. 29.

GitHub 앱 설치

새로운 GitHub 앱 설치 시 탐지합니다.

쿼리

GitHub 감사 로그에서 실시간으로 GitHub 앱 설치 로그를 추출합니다.

| search action == "integration_installation.create"
| rename actor_ip as src_ip, actor as user

메시지

  • GitHub 앱 설치: 관리자 $user, 앱 $integration

출력 필드 순서

  • _log_time, src_ip, user, action, repo, integration, name, repository_selection, permissions, user_agent

위협 분석

  • GitHub 앱은 조직 내 저장소, 워크플로우, 이슈, 권한 관리 등 다양한 기능에 대한 광범위한 접근 권한을 부여할 수 있습니다.
    • 공격자가 조직의 GitHub 관리자 계정을 탈취한 경우, 악성 GitHub 앱을 설치하여 지속적인 권한 유지, 코드 변조, 워크플로우 하이재킹 등 광범위한 공격을 수행할 수 있습니다.
  • GitHub 앱은 API 호출 및 자동화 기능을 통해 내부 리포지토리에서 데이터를 수집하거나 외부로 전송하는 등의 악성 자동화 행위에 사용될 수 있어 공급망 공격(Supply Chain Attack)의 주요 벡터가 됩니다.
  • 특히, GitHub 앱 설치는 관리 권한을 가진 계정에서만 수행 가능하며, 설치 후에는 권한 범위에 따라 조직 전체 또는 특정 저장소에 대해 지속적으로 실행될 수 있으므로 공격 발생 시 영향 범위가 매우 큽니다.
  • 정상 사용자 활동처럼 보일 수 있어 초기 탐지가 어렵고, 설치된 앱이 여러 저장소에 권한을 가지는 경우 추적 및 사고 대응이 복잡해질 수 있습니다.

오탐 유형

  • 관리자가 새로운 CI/CD 도구, 코드 스캔 솔루션, 자동화 툴 등을 도입하면서 정상적으로 GitHub 앱을 설치하는 경우 발생할 수 있습니다.
  • 외부 협력사 또는 서비스 연동을 위해 GitHub 앱을 설치하는 정당한 업무 절차가 존재하는 경우에 탐지될 수 있습니다.
  • 기존 앱의 권한 변경 또는 재설치를 위해 동일한 앱이 다시 설치되는 경우에도 탐지될 수 있습니다.

대응 방안

  • 설치 주체 확인
    • GitHub 앱을 설치한 계정($user)이 정상적인 관리자 계정인지 확인하고, 해당 작업이 의도된 것인지 당사자에게 즉시 확인합니다.
  • 앱 권한 검증
    • 설치된 앱의 permissionsrepository_selection을 검토하여 과도한 권한이 부여되지 않았는지 확인합니다.
    • 필요 이상의 조직 전체 권한(org-wide permissions)을 요청하는 앱은 즉시 검토 대상입니다.
  • 위험한 앱 제거
    • 의도하지 않은 설치로 확인될 경우 즉시 앱을 삭제하고, 해당 앱이 접근한 저장소 및 활동 로그를 조사합니다.
  • 계정 및 인증 검토
    • 앱을 설치한 계정의 로그인 이력, IP 주소, 사용자 에이전트(User-Agent) 등을 분석하여 계정 탈취 가능성을 조사합니다.
  • 추가 이상 행위 분석
    • 앱 설치 전후로 비정상적인 PR 생성, 권한 변경, 워크플로우 실행 등의 이상 행위가 있었는지 확인합니다.
  • 보안 정책 강화
    • GitHub 앱 설치 권한을 최소한의 관리자에게만 제한하고, 설치 승인 절차를 도입합니다.
    • 앱 권한 사전 검토 프로세스 도입, 앱 사용 현황 정기 점검, 불필요한 앱 제거 정책을 운영합니다.

MITRE ATT&CK