GitGat을 사용하여 소스 제어 보안 상태 평가

모든 게시물

소스 제어 시스템은 소프트웨어 개발 라이프사이클에서 가장 민감한 링크 중 하나입니다. 여기에는 소프트웨어 소스 코드, 빌드 스크립트, IaC(코드형 인프라) 스크립트, 경우에 따라 비밀 및 추가적인 민감한 정보가 저장됩니다. 따라서 소스 제어 시스템 보안은 소프트웨어 개발 환경 보안의 첫 번째 단계 중 하나가 되어야 합니다.

SCM 보호를 목표로 GitGat을 개발했습니다. GitGat은 독립적인 OPA 세트입니다(정책 에이전트 열기) Rego로 작성된 정책. OPA를 사용하면 다른 OPA 기반 도구의 일부로 또는 독립 실행형 애플리케이션으로 다양한 사용 사례가 가능해집니다. GitGat은 SCM 계정의 보안 설정을 평가하고 상태 보고서와 실행 가능한 권장 사항을 제공합니다. 상태 보고서는 보안 전문가가 읽을 수 있는 형식(MD 파일) 또는 기계가 읽을 수 있는 형식(JSON 파일)으로 생성되어 자동화된 정책 결정 및 조치를 지원할 수 있습니다.

GitHub는 세계 최고의 SCM 시스템 중 하나이기 때문에 우리는 그것이 우리의 출발점이 되기를 원했습니다. 우리는 궁극적으로 다른 SCM 플랫폼으로 지원을 확대하는 것을 목표로 하고 있습니다.

GitGat은 현재 다음 정책 계열 평가를 지원합니다.

  • 컨트롤에 액세스 - 예방하다 초기 액세스 자격 증명 도용에 기반한 기술.
    • 2단계 인증 확인 현재 2FA를 사용하지 않는 사람이 누구인지 파악하여 조직이나 그 구성원에게 시행됩니다.
    • 해당 저장소 가시성을 검증하십시오. 계획대로야. 
    • 제어 검증 배포 및 SSH .
  • 권한 – 과도한 권한으로 인한 공격 단계 방지 실행, 방어 회피, 자격 증명 액세스,
    • 관리자 권한이 있는 사용자 지도
    • 팀 권한을 매핑하고 관리자 권한이 있는 팀에 알립니다.
  • 지점 보호 – 의도하지 않은, 허용되지 않은 저장소 수정을 이용하는 공격 단계를 방지합니다. 실행력, 지속성, 방어회피, 영향력
    • 보호된 분기와 보호되지 않은 분기 매핑
    • 분기 보호 구성 매핑 – 어떤 보호가 적용되어 있는지 이해합니다(예: 검토 및 서명된 커밋 시행, 기록 삭제 방지).
  • 파일 수정 추적 – GitHub를 사용할 때 기본적으로 부여되는 파일 액세스 권한을 이용하는 공격 방지/감지 단계: 실행, 지속, 방어 회피.

다음과 같은 오픈 소스 도구를 활용하여 비밀 스캐닝 지원을 추가할 계획입니다. 자식 누출.

모든 보안 전문가가 알고 있듯이 보안 규칙과 정책은 일반적으로 프로젝트별 결정의 기초입니다. 각 프로젝트에는 승인된 이해관계자의 특별 승인이 필요한 특별한 조건과 제약이 있습니다. 이러한 특별한 경우를 쉽게 관리할 수 있도록 GitGat은 상태 관리를 지원합니다. 사용자가 유지 관리하는 JSON 개체인 상태는 이러한 예외를 저장할 수 있습니다. 이를 통해 보안 상태를 지속적으로 검사하고 새로운 내용이나 상태에 포함되지 않은 내용에 대해서만 경고를 받을 수 있습니다. 

SCM 보안 태세 개선의 출발점으로 이러한 문제를 선택한 이유에 대한 자세한 위협 분석은 README에서 확인할 수 있습니다. GitGat 저장소

우리는 모두가 프로젝트를 시도해 보도록 초대합니다. 자유롭게 비판을 해주시기 바랍니다, 아이디어, 요청, 심지어 도움까지. 이 프로젝트가 성장할 수 있는 방향은 다양하며, 여러분과 함께 그 방향을 탐색하게 되어 기쁩니다.

이 콘텐츠는 소프트웨어 공급망 전반에 걸쳐 코드 아티팩트와 코드 개발 및 전달 프로세스에 최첨단 보안을 제공하는 선도적인 엔드투엔드 소프트웨어 공급망 보안 솔루션 제공업체인 Scribe Security에서 제공합니다. 자세히 알아보기.