SOC2는 보안 프로그램이 아니라 보고서입니다
요약
SOC2 인증이 실제 보안 프로세스의 작동 여부가 아닌 문서화된 프로세스의 존재 여부만을 측정한다는 한계를 지적합니다. 진정한 보안을 위해서는 컴플라이언스를 넘어 IAM 제한, 단기 자격 증명 사용, 실질적인 사고 대응 능력 등이 필요함을 강조합니다.
핵심 포인트
- SOC2는 프로세스의 실질적 작동이 아닌 문서화된 존재 여부만 측정함
- 형식적인 컴플라이언스는 실제 보안 위협을 방어하지 못함
- 진정한 보안은 IAM 폭발 반경 제한과 단기 자격 증명 사용을 포함함
- 사고 대응 런북 테스트와 시크릿 교체 능력 등 실질적 대응력이 중요함
description: SOC2는 프로세스가 존재하는지를 측정할 뿐, 그 프로세스가 제대로 작동하는지를 측정하지 않습니다. 진정한 보안이란 무엇인지, 그리고 왜 감사가 이를 포착하지 못하는지에 대해 알아봅니다.
SOC2는 보안을 돕기보다 오히려 해치는 데 더 많은 역할을 해왔습니다.
개념 자체가 아니라, 그 주변을 둘러싼 보여주기식 행위(theater) 때문입니다.
저는 아무도 강제하지 않는 정책 문서를 통해 MFA(다요소 인증)가 "강제"된 상태로 SOC2를 통과하는 기업들을 보았습니다. 관리자가 3분 만에 200개의 권한을 승인해 버리는 액세스 검토(Access reviews)도 보았습니다. 로드 밸런서(load balancer)에서 멈춰버리는 "전송 중 및 저장 시(in transit and at rest)" 암호화도 보았습니다.
감사인은 승인합니다. Type II 보고서는 영업 자료(sales deck)에 포함됩니다. 모두가 다음 단계로 넘어갑니다.
그동안 공유된 관리자 자격 증명(admin credential)은 여전히 2021년의 Slack DM에 남아 있습니다.
프레임워크의 실제 문제점
SOC2는 프로세스가 존재하는지를 측정할 뿐, 그 프로세스가 제대로 작동하는지를 측정하지 않습니다.
엉망인 통제(control)를 일관되게 문서화하면 통과할 수 있습니다. 반대로 매우 훌륭한 비공식적 관행을 운영하고 있더라도 실패할 수 있습니다.
이 프레임워크는 결과에 대해서는 의견을 내지 않으며, 오직 문서화에 대해서만 따집니다. 벤더의 컴플라이언스(compliance) 보고서에 얼마나 큰 비중을 둘지 결정하려고 할 때, 이 차이는 엄청나게 중요합니다.
진정한 보안의 모습
진정한 보안은 다음과 같은 모습입니다:
- IAM(Identity and Access Management)에 대한 폭발 반경(Blast radius) 제한 — 단순히 존재하는 정책이 아니라, 경계에서 범위가 지정되고 검토되며 강제되는 정책
- 어디에서나 사용되는 수명이 짧은 자격 증명(Short-lived credentials) — CI 비밀(secrets)에 앉아 있는 장기 수명 키가 아니라, 시간 제한이 있는 assume-role 방식
- 동료 검토(Peer-reviewed)를 거친 인프라 변경 — 애플리케이션 코드에 적용하는 것과 동일한 코드 리뷰 문화
- ID 이상 징후에 대한 알림(Alerting) — 단순히 "로그인이 성공했는가"가 아니라, "이 로그인 패턴이 이 시점에 이 주체(principal)에게 정상적인가"를 확인
- 새벽 3시에 실제로 사고를 수습할 수 있는 온콜(On-call) 엔지니어 — 읽는 사람이 6시간의 여유와 작동하는 Slack을 가지고 있다고 가정하는 런북(runbooks)이 아닌 실제 대응 능력
이 중 어느 것도 독점적으로 SOC2 통제 항목인 것은 아닙니다. 대부분은 감사에 의해 전혀 측정되지 않습니다.
진단 질문
만약 당신의 보안 프로그램이 감사인이 떠난 다음 날 바로 무너진다면, 당신은 보안 프로그램을 가진 것이 아닙니다. 당신은 보고서를 가진 것입니다.
컴플라이언스 (Compliance)는 바닥입니다. 우리는 그것을 천장처럼 취급해 왔습니다.
압박 테스트를 해볼 만한 네 가지 질문
- 누군가가 마지막으로 사고 대응 런북 (incident response runbook)을 타이머를 맞추고 실시간으로 처음부터 끝까지 실제로 테스트한 것이 언제입니까?
- 만약 오늘 하나가 유출된다면, 프로덕션 (production) 환경의 모든 시크릿 (secret)을 교체하는 데 얼마나 걸립니까?
- 지난 90일 동안 사용하지 않은 프로덕션 IAM 권한을 가진 엔지니어가 몇 명입니까?
- 모든 서비스 계정 (service account)과 그 계정이 무엇을 할 수 있는지 열거할 수 있습니까?
만약 이 질문들 중 어떤 답변이라도 "불분명함"이라면, SOC2 Type II 보고서도 그 사실을 바꾸지는 못할 것입니다. 보고서는 단지 당신이 그 격차를 일관되게 문서화했다는 것을 의미할 뿐입니다.
당신의 환경에서 서류상으로는 좋아 보이지만 실제로는 실패하는 통제 항목 (controls)은 무엇입니까? 다른 분들은 어떤 패턴을 보고 계시는지 진심으로 궁금합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기