
'패치 불가능한' 보안 사고를 마주했을 때: PS5 롬 키 유출이 남긴 질문들
소니 PS5의 롬 키 유출 사건을 통해 살펴본 '패치 불가능한' 보안 사고의 본질과, 엔지니어가 갖춰야 할 심층 방어 및 키 로테이션 전략에 대하여.
송찬영
CTO

안녕하세요. 풀링포레스트 CTO 송찬영입니다.
새해 첫날부터 엔지니어들의 등골을 서늘하게 만드는 소식이 들려왔습니다. 소니의 플레이스테이션 5(PS5)의 롬 키(ROM Keys)가 유출되었다는 뉴스였죠. 단순히 게임 콘솔이 뚫렸다는 가십거리로 넘기기엔, 이 사건이 시사하는 기술적 무게감이 상당합니다. 이번 유출이 치명적인 이유는 해당 키가 소프트웨어 업데이트로 변경할 수 있는 성질의 것이 아니라, APU 제조 단계에서 실리콘에 물리적으로 각인(Burned)된 정보이기 때문입니다.

보안에는 'Root of Trust(신뢰의 뿌리)'라는 개념이 있습니다. 시스템이 부팅될 때 가장 먼저 실행되는 코드가 "이 하드웨어와 소프트웨어는 조작되지 않았다"는 것을 보증해줘야, 그 위에 올라가는 운영체제와 애플리케이션을 믿을 수 있게 됩니다. 소니는 이 뿌리를 하드웨어 깊숙한 곳, 즉 BootROM에 심어두었습니다. 그런데 그 뿌리를 검증하는 암호화 키가 세상에 드러난 겁니다.
솔직히 말해, 이 뉴스를 접하고 저는 과거의 부끄러운 기억 하나가 떠올라 얼굴이 화끈거렸습니다.
주니어 시절, 저는 보안을 '단단한 자물쇠'라고만 생각했습니다. 당시 진행하던 프로젝트에서 클라이언트 앱 내부에 암호화 키를 하드코딩해서 배포한 적이 있습니다. 코드를 난독화했으니 안전할 것이라 자만했고, 바이너리를 뜯어볼 해커는 없을 거라 낙관했습니다. 하지만 서비스가 성장하고 트래픽이 몰리자, 누군가 그 키를 추출해 API를 무단으로 호출하기 시작했습니다.
그때의 막막함은 지금도 생생합니다. 키를 바꾸자니 이미 배포된 수만 개의 앱이 작동을 멈출 것이고, 그대로 두자니 데이터가 줄줄 새는 상황이었으니까요. 소니의 상황도 스케일만 다를 뿐 본질은 같습니다. 이미 전 세계에 팔린 수천만 대의 하드웨어를 전부 수거해 칩을 교체하지 않는 이상, 이 보안 구멍은 영원히 '패치 불가능'한 상태로 남게 됩니다.
풀링포레스트 팀원들에게도 늘 강조하는 이야기지만, "절대 뚫리지 않는 방패는 없다"는 전제 위에서 아키텍처를 설계해야 합니다.
이번 사태를 보며 우리는 '불변성(Immutability)'의 양면성을 다시금 깨닫습니다. 인프라나 코드 배포에서 불변성은 예측 가능성을 높여주는 훌륭한 도구지만, 보안 키(Key) 관리나 인증 체계에 있어서 '변경 불가능함'은 재앙이 될 수 있습니다.
우리가 이번 이슈에서 얻어야 할 기술적 교훈은 명확합니다.
첫째, 의존성을 분산시켜야 합니다. 하드웨어 보안 모듈(HSM)이나 특정 솔루션을 맹신하지 마세요. 소니처럼 하드웨어 레벨의 방어가 무력화되었을 때, 소프트웨어 레벨(커널, 애플리케이션)에서 2차, 3차 방어선이 작동해야 합니다. 이를 '심층 방어(Defense in Depth)'라고 부릅니다.
둘째, 키 로테이션(Key Rotation) 전략은 선택이 아닌 필수입니다. AWS KMS나 HashiCorp Vault 같은 도구를 사용하는 이유도 여기에 있습니다. 만약 키가 유출되더라도, 즉시 해당 키를 폐기하고 새로운 키로 시스템을 중단 없이 전환할 수 있는 구조를 만들어야 합니다. 하드웨어에 박제된 키는 그 유연성을 가질 수 없습니다.
셋째, '공격 비용'을 높이는 데 집중해야 합니다. 해커가 시스템을 뚫는 데 들이는 비용이 얻을 수 있는 이익보다 크게 만드는 것이 현실적인 보안의 목표입니다. PS5의 경우, 이제 부트로더 복호화의 난이도가 현저히 낮아졌으니, 소니는 OS 업데이트를 통해 커널 레벨의 익스플로잇을 막는 데 엄청난 리소스를 쏟아부어야 할 겁니다.
보안 사고는 언제나 예고 없이 찾아옵니다. 지금 작성하고 있는 그 코드, 혹은 설정하고 있는 서버의 환경 변수에 '절대 변하지 않을 것'이라 믿고 넣어둔 비밀 정보는 없으신가요?
소니의 엔지니어들이 겪고 있을 고초에 위로를 보내며, 오늘 하루 우리 시스템의 '신뢰의 뿌리'는 얼마나 유연하고 견고한지 다시 한번 점검해보는 계기가 되었으면 합니다. 안전한 시스템은 완벽한 차단이 아니라, 최악의 상황에서도 복구할 수 있는 유연함에서 나옵니다.


