사이버 공격과 방어의 실무
개발자가 클라우드 서비스의 API 키를 포함한 설정 파일을 실수로 공개 Git 리포지토리에 커밋해 버렸다. 알아챈 즉시 그 파일을 삭제하는 변경을 커밋했다. 이후에 해야 할 대응으로 가장 적절한 것은?
- A삭제 변경을 커밋했으므로 키는 더 이상 누구에게도 보이지 않으며, 그 이상의 대응은 아무것도 필요 없다
- B이력에 남고 이미 수집되었을 가능성도 있으므로, 키를 즉시 무효화하여 새 키로 바꾸고, 악용이 없었는지 이용 기록으로 확인한다
- C리포지토리 이름을 바꾸면 이전 이름으로 공개된 오래된 내용에는 접근할 수 없게 되므로, 유출된 키는 그대로 계속 사용해도 된다
정답과 해설 보기
정답: B. 이력에 남고 이미 수집되었을 가능성도 있으므로, 키를 즉시 무효화하여 새 키로 바꾸고, 악용이 없었는지 이용 기록으로 확인한다
Git에서는 파일을 삭제하는 변경을 커밋해도 이전 버전은 이력에 남으며 누구나 꺼낼 수 있습니다. 공개 리포지토리는 인증 정보를 찾는 프로그램에 의해 짧은 시간 안에 자동으로 조사되고 있으므로, 공개된 시점에 유출된 것으로 취급합니다. 가장 중요한 것은 키를 무효화하고 새것으로 바꾸는 것이며, 그런 다음 이용 기록을 확인하고 필요하면 이력에서도 지웁니다. 재발을 막기 위해 인증 정보는 시크릿 관리 서비스에 두고, 커밋 전에 비밀 정보를 검출하는 구조(시크릿 스캔)를 사용합니다.