피드로 돌아가기
FFmpeg의 스물한 개 제로데이
GeekNewsGeekNews
Security

FFmpeg의 스물한 개 제로데이

보안 에이전트를 통한 FFmpeg 제로데이 21개 발굴 및 비용 90% 절감

neo2026년 6월 14일14advanced

Context

150만 줄의 최적화된 C 코드로 구성된 FFmpeg는 복잡한 미디어 파싱 로직으로 인해 공격 표면이 매우 넓은 구조임. 기존의 퍼징과 수동 감사만으로는 20년 이상 잠재된 힙/스택 버퍼 오버플로 등의 정교한 취약점을 완전히 제거하는 데 한계가 존재함.

Technical Solution

  • 코드베이스의 아키텍처와 데이터 진입점 및 프로토콜 핸들러를 우선 파악하는 공격 표면 분석 수행
  • 단순 파일 스캔이 아닌 공격자 제어 입력의 데이터 흐름을 추적하는 그래프 기반 분석 경로 설계
  • 이론적 버그를 배제하기 위해 재현 가능한 입력값과 실행 확인을 강제하는 가드레일 메커니즘 도입
  • 대상 구성요소와 상호작용하는 하네스(harness)를 자동 식별 및 생성하여 가설을 검증하는 루프 구축
  • AV1 RTP depacketizer의 Temporal Delimiter 처리 로직에서 메모리 할당 없는 커서 이동으로 인한 불변식 파괴 지점 포착
  • 조작된 OBU 크기를 통한 힙 버퍼 덮어쓰기와 buffer_replace 시의 free 포인터 변조로 Instruction Pointer 제어 경로 확보

Impact

  • 제로데이 취약점 총 21개 발견 (CVE-2026-39210~39218 및 DFVULN 시리즈)
  • 분석 비용 약 $1k 소요로 Anthropic Mythos 모델 대비 비용 90% 절감
  • 최대 23년 동안 잠재되어 있던 CVE-2026-39214 취약점 발굴

Key Takeaway

대규모 C 코드베이스의 보안 분석 시 단순 패턴 매칭보다 데이터 흐름 분석과 실행 가능한 PoC 검증을 결합한 에이전트형 접근 방식이 훨씬 효율적임.


1. 외부 입력값이 포함된 포인터 연산 시 메모리 할당량과 커서 이동 거리의 일치 여부를 반드시 검증할 것

2. 리팩터링 과정에서 기존의 경계 검사 로직이 누락되거나 조건문이 변경되었는지 회귀 테스트를 강화할 것

3. 고도로 최적화된 C 코드일수록 정수 오버플로가 힙 할당 크기에 영향을 주어 Buffer Overflow로 이어지는 경로를 집중 점검할 것

원문 읽기