세상 모든 영상을 처리하는 FFmpeg, 제로데이 21개가 한꺼번에 터졌습니다
여러분이 오늘 본 모든 영상은 십중팔구 FFmpeg를 거쳐 갔습니다. 유튜브 재생도, 넷플릭스 스트리밍도, 스마트폰으로 찍은 영상의 변환도 그렇습니다. 그런데 이 거대한 인프라를 떠받치는 소프트웨어에서 제로데이 취약점 21개가 한꺼번에 공개됐습니다. 더 충격적인 건, 이 코드를 유지보수하는 사람이 사실상 한 줌의 자원봉사자뿐이라는 사실인데요.
FFmpeg가 뭐길래 이렇게 중요할까요
FFmpeg를 한마디로 설명하면 영상과 음성의 만능 변환기입니다. 어떤 포맷의 영상이든 받아서 디코딩하고, 다른 포맷으로 인코딩하고, 자르고 붙이고 압축하는 일을 합니다. 우리가 일상에서 이름조차 들어본 적 없을지 모르지만, 사실상 디지털 영상이 오가는 거의 모든 곳에 숨어 있습니다.
규모를 짐작해 볼까요. 유튜브, 넷플릭스, 트위치 같은 스트리밍 서비스가 내부적으로 FFmpeg를 씁니다. 크롬 같은 웹 브라우저, VLC 같은 플레이어, 안드로이드 운영체제, 수많은 영상 편집 앱이 FFmpeg 코드를 가져다 씁니다. 비유하자면 전 세계 영상 산업이 깔고 앉은 보이지 않는 수도관인 셈입니다.
문제는 이 수도관에 구멍이 21개나 뚫린 게 한꺼번에 드러났다는 점입니다.
제로데이가 21개라는 게 왜 무서운가요
먼저 용어부터 정리하겠습니다. 제로데이(zero-day)는 아직 패치가 나오지 않은 상태에서 공개되거나 악용되는 취약점을 말합니다. 방어할 시간이 0일이라는 뜻에서 붙은 이름인데요. 개발자가 “이런 구멍이 있구나” 하고 인지한 날과 공격자가 악용할 수 있는 날 사이에 시간차가 없다는 게 핵심입니다.
영상 처리 소프트웨어의 취약점이 특히 위험한 이유가 있습니다. 영상 파일은 사용자가 별생각 없이 열어보는 데이터이기 때문입니다. 악성 코드가 심긴 동영상 하나를 다운로드하거나, 메신저로 받은 영상을 미리보기로 띄우기만 해도 공격이 작동할 수 있습니다. 사용자가 “실행” 버튼을 누르지 않아도 당할 수 있다는 의미입니다.
게다가 21개가 한 번에 나왔다는 건 단발성 실수가 아니라는 신호이기도 합니다. 오래된 코덱 처리 코드 곳곳에 비슷한 약점이 쌓여 있었을 가능성이 큽니다. 한 외국어 기술 영상은 이 사건을 두고 “오래된 코덱이 비명을 지르며 깨어났다"고 표현했는데요, 수십 년간 손대지 않은 낡은 코드가 일제히 문제를 드러냈다는 뉘앙스입니다.
AI가 찾아낸 취약점이라는 점이 핵심입니다
이번 사건에서 짚고 넘어가야 할 대목이 하나 더 있습니다. 이 21개의 취약점을 사람이 아니라 AI가 무더기로 찾아냈다는 점입니다.
이건 양날의 검입니다. 좋게 보면 AI 기반 코드 분석 도구가 그동안 사람 눈으로 놓쳤던 오래된 버그를 빠르게 발굴해 낸 것입니다. 보안 연구의 생산성이 비약적으로 올라간 셈이죠. 하지만 반대로 보면, 공격자도 똑같은 도구로 무방비 상태의 오픈소스 코드를 대량으로 스캔할 수 있다는 뜻입니다.
여기서 비대칭이 발생합니다. 취약점을 찾는 쪽은 AI로 무장해 속도가 빨라졌는데, 그걸 고쳐야 하는 쪽은 여전히 소수의 자원봉사자입니다. 발견은 자동화되고 수리는 수작업으로 남는 구조인데요. 이 격차가 벌어질수록 오픈소스 프로젝트는 점점 더 불리한 싸움을 하게 됩니다.
진짜 문제는 “21개"가 아니라 “유지보수자 수"입니다
저는 이번 사건의 본질이 취약점 개수에 있지 않다고 봅니다. 핵심은 이 어마어마한 인프라를 떠받치는 사람이 너무 적다는 구조적 현실입니다.
FFmpeg 같은 핵심 오픈소스 프로젝트는 대부분 소수의 자원봉사자가 무보수에 가까운 헌신으로 끌고 갑니다. 전 세계 수조 원 규모의 영상 산업이 그 위에 올라타 있는데, 정작 그 코드를 관리하는 사람들은 회사도 아니고 팀도 아닌 개인입니다. 한 명이 번아웃되거나 손을 놓으면 그대로 멈춰 설 수 있는 구조입니다.
이 문제를 가장 잘 보여주는 그림이 있습니다. 한 개발자가 어느 무명의 누군가가 밤마다 유지보수하는 작은 블록 하나에 거대한 디지털 인프라 전체가 위태롭게 얹혀 있는 모습을 그린 만화인데요. FFmpeg가 바로 그 작은 블록 중 하나입니다. 거대 기업들은 이 코드를 공짜로 가져다 막대한 수익을 올리면서, 정작 보안 패치의 부담은 자원봉사자에게 떠넘겨 왔습니다.
이번 사건이 우리에게 남기는 질문
당장 일반 사용자가 할 수 있는 일은 단순합니다. 영상 플레이어나 운영체제 업데이트가 뜨면 미루지 말고 바로 적용하는 것입니다. 패치가 나오는 순간이 곧 방어가 시작되는 순간이기 때문입니다.
하지만 더 큰 질문은 따로 있습니다. AI가 취약점을 대량으로 찾아내는 시대에, 그걸 수리할 사람과 자원은 누가 댈 것이냐는 문제입니다. 발견은 자동화로 빨라졌는데 수리는 여전히 누군가의 선의에 기대고 있다면, 이런 21개짜리 사건은 앞으로 더 자주, 더 크게 터질 수밖에 없습니다.
우리가 매일 무심코 누리는 디지털 편의가 사실은 얼마나 가느다란 끈에 매달려 있는지, 이번 FFmpeg 사건이 적나라하게 보여준 셈입니다. 여러분이 쓰는 서비스 뒤에는 어떤 보이지 않는 자원봉사자들이 있을까요. 한 번쯤 생각해 볼 만한 질문입니다.
댓글
댓글을 불러오는 중...