자격증명 노출 패턴 8가지와 대응 순서
NHI 자격증명 노출 패턴 여덟 가지를 실제 점검 신호와 대응 순서로 정리했습니다.


목차(4)
2026년 10월 3일 수정. 이 글은 NHI Kill Chain 시리즈에서 다룬 여덟 가지 자격증명 노출 패턴을 실무 관점으로 정리합니다. 이전 글에 있던 정확한 사고 수치와 실제 사례처럼 적힌 가상 시나리오는 근거가 확인되지 않아, 관찰 가능한 신호와 대응 절차를 중심으로 다시 썼습니다.
자격증명 관리가 어려워지는 여덟 가지 경우
Ghost Key: 퇴사자와 연결된 키가 여전히 작동합니다. 계정 상태와 담당자를 확인하고 발급 서비스에서 키 상태를 살피세요. 여러 작업이 공유하는 키라면 서비스가 중단되지 않도록 교체 계획을 먼저 세워야 합니다.
Shadow Key: 시크릿이 원래 보관 장소를 벗어나 채팅·티켓·문서에 나타납니다. 노출 위치를 기록하고 해당 사본의 접근을 제한한 뒤, 누군가 읽었을 가능성이 있으면 키를 교체하세요.
Aged Key: 조직의 교체 정책을 넘겨 오래 작동한 키입니다. 오래됐다는 사실만으로 침해를 단정하지 말고 사용처와 의존성을 확인해 안전하게 교체하세요.
Over-shared Key: 여러 서비스나 사람이 하나의 키를 함께 씁니다. 교체 전에 의존하는 작업을 나열하고 가능하면 범위가 좁은 키로 나누세요.
Zombie Key: 파일에서는 삭제됐지만 자격증명은 여전히 작동합니다. 저장소에서 지워도 키는 폐기되지 않습니다. 커밋 기록을 확인하고 발급 서비스에서 기존 키를 폐기한 뒤 새 키를 검증하세요.
Drifted Key: 담당자가 예상하지 못한 여러 곳에 자격증명이 나타납니다. 연결 소스의 사본을 확인하고 노출된 곳마다 조사하세요. 시스템 사이의 이동 경로는 로그와 담당자 확인을 통해 재구성해야 합니다.
Public Key: 살아 있는 키가 공개 저장소나 페이지에 보입니다. 노출된 것으로 보고 빨리 교체하거나 폐기하고, 발급 서비스의 접근 로그를 조사하세요. 누가 복사했다는 증거를 기다릴 필요는 없습니다.
Unattributed Key: 탐지 결과에 확인된 담당자가 없습니다. 발급 계정과 사용 서비스를 찾고 조치 담당자를 지정하세요. 더는 필요하지 않은 키라면 폐기합니다.
공통 대응 순서
먼저 키의 위치와 유효성을 확인하고, 담당자·권한·의존하는 작업을 파악합니다. 교체하거나 폐기한 뒤에는 예전 키가 더 이상 작동하지 않고 필요한 서비스는 정상인지 확인하세요. 오용 가능성이 있다면 접근 로그를 보존해 조사해야 합니다.
이 이름들은 조사 항목을 정리하기 위한 것으로, 서로 배타적인 진단이나 제품의 자동 분류 결과가 아닙니다. 공개된 키가 오래됐고 담당자도 없을 수 있습니다. 이름보다 실제 증거를 근거로 우선순위를 정하세요.
Cremit이 지원하는 범위
Cremit Platform은 지원하는 연결 저장소, 클라우드 저장 공간, 협업 도구, 컨테이너 이미지에서 노출된 자격증명을 찾습니다. 지원 유형은 발급 서비스에 유효성을 확인하고 탐지 결과에 담당자를 지정할 수 있습니다. 조직의 모든 키를 볼 수 있는 것은 아니며 모든 담당자를 자동 추론하거나 CI 실행 환경을 감시하고 키를 자동 교체하지도 않습니다. 제공자 로그와 IAM 검토, 발급 서비스에서의 조치가 함께 필요합니다.
출처와 참고 자료
GitHub 문서, 시크릿 검사와 대응: https://docs.github.com/en/code-security/concepts/secret-security/secret-scanning
GitHub 문서, 저장소의 민감한 데이터 제거: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository
OWASP, Non-Human Identities Top 10: https://owasp.org/projects/non-human-identities-top-10
이어서 읽기
다음 글을 메일로 받아보세요
Cremit의 월간 자격증명 보안 브리프. 한 통에 핵심만 담습니다.