라이프스타일
GitHub 시크릿 스캐닝, 새 분류기 도입: 문맥으로 진짜 시크릿 가려내 오탐 줄이고 속도 높였다고 밝혀
GitHub는 코드에서 비밀번호·키 같은 자격 증명을 찾는 시크릿 스캐닝을, 규칙으로 후보를 찾은 뒤 소형 AI 모델이 판단하는 2단계 방식으로 바꿨다고 밝혔다. GitHub 설명에 따르면 오탐은 줄고 스캔은 빨라지며 비용은 낮아지고, 코드를 푸시하기 전에 범용 시크릿을 막을 수 있다.
읽는 데 약 6분

무슨 일이 있었나
GitHub는 공식 블로그에서 시크릿 스캐닝을 위해 학습시킨 문맥 인식형 시크릿 분류기를 설명했다. 여기서 시크릿은 비밀번호, API 키, 연결 문자열처럼 공개되면 안 되는 자격 증명을 뜻하며, 시크릿 스캐닝은 코드에서 이런 내용을 찾아내는 기능이다. GitHub에 따르면 시크릿 스캐닝은 두 시점에 작동한다. 푸시 보호는 푸시(코드 변경을 저장소, 즉 코드가 보관되는 프로젝트 공간에 올리는 일)가 받아들여지기 전에 변경 사항을 스캔한다. 푸시 후 스캔은 코드가 커밋된 뒤 저장소 내용을 계속 스캔하며, 잠재적 시크릿이 발견되면 경고를 만든다.
GitHub는 기존 LLM(대형 언어 모델) 기반 흐름과 비교해 새 분류기가 푸시 후 스캔 실행 시간 중앙값을 86% 줄였다고 밝혔다. 이 효율 덕분에 범용 시크릿 탐지를 푸시 보호까지 넓혀, 개발자가 푸시하기 전에 결과를 받을 수 있게 됐다.
범용 시크릿 판단이 어려운 이유
GitHub에 따르면 범용 시크릿은 뚜렷한 접두사, 길이, 문자 집합, 체크섬(데이터가 올바른지 확인하는 문자열)이 없을 수도 있다. 문법이 빌드 식별자, 체크섬, 자산 해시, 예시 값 같은 비민감 문자열과 겹칠 수 있어 문맥이 결정적인 신호가 된다. 일반 독자에게는 같은 문자열도 실제 설정 파일과 테스트 예제에서 의미가 완전히 다를 수 있다는 뜻이다.
새 흐름의 작동 방식
GitHub에 따르면 새 스캐너는 2단계로 작동한다. 1단계에서는 정규 표현식(regex, 고정 규칙으로 텍스트 패턴을 비교하는 방법)으로 후보 문자열을 넓게 찾으며, 진짜 시크릿을 최대한 놓치지 않는 '높은 재현율'이 목표다. 2단계에서는 이 작업에 맞게 미세 조정(재학습)한 ModernBERT 분류기가 각 후보와 주변 문맥을 평가한다. GitHub는 이 모델을 작고 효율적이라고 설명한다. 모델 입력에는 후보 값, 파일 경로, 시크릿 유형, 제한된 범위의 주변 문맥이 들어가고, 출력은 분류 점수이며 스캐너는 이를 보고 후보를 계속 처리할지 결정한다.
GitHub는 분류기가 플레이스홀더 값, 테스트용 가짜 데이터(test fixture), 체크섬 같은 유사 문자열을 걸러낼 수 있고, 신뢰도 높은 발견만 경고가 된다고 밝혔다. 또한 분류기는 '시크릿처럼 보이는 것'과 '진짜일 가능성이 높은 시크릿'을 최선을 다해 구분할 뿐이라고 솔직히 인정했다.
GitHub가 공개한 성과 수치
| 지표 | GitHub 발표 결과(기존 LLM 흐름 대비) |
|---|---|
| 푸시 후 스캔 실행 시간 중앙값 | 86% 감소 |
| 오프라인 평가 정밀도(동일한 공개 트래픽) | 13% 높음 |
| 오프라인 평가 재현율(동일한 공개 트래픽) | 19% 높음 |
| 소유자 가중 경고 수락률(고객 A/B 실험) | 11.5% 증가 |
| 서비스 비용(원격 LLM 호출 대비) | 98% 넘게 감소 |
표의 '정밀도'는 발행된 경고 중 실제 시크릿인 비율, '재현율'은 실제 시크릿 중 찾아낸 비율을 뜻한다. 'A/B 실험'은 새 흐름과 기존 흐름을 서로 다른 고객에게 적용해 결과를 비교하는 방식이다. GitHub는 한꺼번에 많은 경고를 해결하는 고객으로 인한 왜곡을 줄이려고 수락률을 저장소 소유자별로 가중했다고 설명했다.
학습 및 배포 세부 사항
GitHub에 따르면 학습 데이터는 세 가지 출처를 결합했다. 첫째는 GitHub 저장소에서 가져온 제품 파생 예시(시크릿 탐지 기능의 사용 피드백과 사람의 검증 포함), 둘째는 높은 재현율의 regex 후보(사람이 단 라벨과 약한 라벨 포함, 후자는 더 거친 자동 표시), 셋째는 문서 속 시크릿, 테스트용 가짜 데이터, 공개 키, 체크섬 같은 까다로운 상황을 위해 특별히 만든 합성 예시다. 학습 전에 같은 저장소, 후보 값, 예시를 공유하는 행을 묶어, 거의 중복된 데이터가 학습 세트와 평가 세트에 동시에 들어가지 않게 했다.
GitHub는 또 추론, 즉 모델이 실제로 판단하는 과정을 빠르게 하려고 모델을 8비트 양자화(모델 수치를 더 낮은 정밀도로 저장)해 ONNX라는 모델 파일 형식으로 내보냈다고 밝혔다. 이후에는 프로덕션 환경 피드백으로 지속적인 개선 루프를 만드는 것과, 시크릿 탐지와 추출을 한 번에 수행하는 새 모델 아키텍처를 탐색하는 두 방향에 집중할 계획이다.
일반 독자에게 의미하는 바
GitHub는 이를 통해 개발자와 보안 팀이 오탐을 덜 보고, 커밋·풀 리퀘스트(pull request)·일상 개발 흐름에서 더 빠른 피드백을 받을 것이라고 밝혔다. GitHub의 설명은 이렇다. 정밀도가 높으면 방해되는 경고가 줄고, 재현율이 높으면 더 많은 진짜 시크릿을 잡으며, 비용이 낮으면 스캔 범위를 계속 넓힐 수 있다.
자주 묻는 질문
이 분류기는 기존 규칙 기반 스캔을 대체하나요?
GitHub 설명에 따르면 대체하지 않습니다. regex가 여전히 후보 문자열을 빠르게 만들고, 분류기는 '시크릿처럼 보이는 것'과 '진짜일 가능성이 높은 시크릿'을 구분해 오탐을 줄이는 데 쓰입니다.
푸시 보호와 푸시 후 스캔은 무엇인가요?
GitHub 설명에 따르면 푸시 보호는 푸시가 받아들여지기 전에 변경 사항을 스캔해 개발자가 대응할 기회를 줍니다. 푸시 후 스캔은 코드가 커밋된 뒤 저장소를 계속 스캔하며, 잠재적 시크릿이 발견되면 경고를 만듭니다.
글에 나온 수치는 믿을 만한가요?
모든 수치는 GitHub 자체 블로그에서 나온 것으로, 자사 제품에 대한 GitHub의 자기 진술입니다. 이 점을 전제로 읽으시기 바랍니다.
GitHub는 앞으로 무엇을 할 계획인가요?
GitHub는 프로덕션 피드백을 바탕으로 한 지속적 개선 루프를 만들고, 시크릿 탐지와 추출을 한 번에 수행하는 새 모델 아키텍처를 탐색할 계획이라고 밝혔습니다.
같은 주제의 글
라이프스타일
Google Play 발표: 개발자 계정 없이 AI로 만든 앱을 내 기기에서 실행
Google은 2026년 10월 13일 Google Play 업데이트를 공개했다. 일반 사용자가 Google AI Studio로 개인용 Android 앱을 만들어 자신의 기기에서 실행할 수 있으며, 현재 일부 시장의 18세 이상에게만 제공된다. Ask Play 비교 기능과 가족 연령대 공유도 포함된다. 아래 내용은 Google의 설명을 정리한 것이다.
라이프스타일
Google, AI 모델 Gemini 4 Argon 개발자 대상 공개 발표
Google은 2026년 10월 13일 개발자가 AI 모델 Gemini 4 Argon을 사용할 수 있다고 밝혔다. 소프트웨어 엔지니어링, 기업 지식 업무, 사이버 보안 방어 등 복잡한 워크플로를 내세우며, Gemini API 유료 등급으로 이용하고 Google AI Ultra 구독자는 체험할 수 있다.
라이프스타일
Meta 등 빅테크, 10개국 법집행기관과 서아프리카 사기 조직 단속: 계정 370만 개 이상 삭제, 피해자 117명 구조
Meta는 14개 다른 기술 기업, 10개국 법집행기관과 런던에서 공동 작전을 벌여 주로 미국·영국인을 노린 서아프리카 기반 사기 조직을 단속했다고 밝혔다. Meta에 따르면 계정·페이지·그룹 370만 개 이상이 삭제됐고 28명이 체포됐으며 인신매매 피해자 117명이 구조됐다.
라이프스타일
Apple, 차세대 Apple TV 4K 공개: Siri AI가 거실로, 출시 초기에는 영어만 지원
Apple 보도자료에 따르면 새 Apple TV 4K는 대화형 Siri AI, A19 칩, 핸즈프리 마이크를 탑재하고 4스피커 서라운드 사운드를 지원합니다. 핵심 내용과 사용 제한, 일반 사용자에게 미치는 영향을 정리했습니다.