C2PA 제외 범위로 파일 전체를 서명에서 빼내 타임스탬프까지 위조한 PoC 공개
- C2PA 매니페스트는 임의의 제외 범위(exclusions)를 허용하는데, 저자는 파일 전체 3995383바이트를 제외해 빈 문자열 해시(47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=)에 서명한 매니페스트를 만들었음
- 제외 범위는 claim 서명뿐 아니라 RFC 3161 TSA 타임스탬프 서명까지 무효화하지 않아, 파일이 해당 시각 이전에 존재했다는 증명이 그대로 유지됨
- 저자는 2026년 8월 28일 유로밀리언스 추첨 몇 시간 전 시각의 타임스탬프를 붙인 복권 사진 PoC를 공개했고, verify.contentauthenticity.org에서 지금도 검증을 통과함
- Neal Krawetz가 2025년 6월 'Big Bulleted List'에서 큰 제외 범위를 C2PA 결함으로 이미 지적했지만, 서명자가 이를 의도적으로 악용한 사례는 이번이 처음임
- 구글은 픽셀 10에서 기기 자체 시각을 신뢰하는 온디바이스 신뢰 타임스탬프를 도입했고, 저자는 구현을 아직 평가하지 않았지만 회의적이라고 밝힘
Hacker News opinions
SAML에서 이미 겪은 실수를 C2PA에서 또 하는 거 보면 참. 서명 대상에서 바이트 범위를 통째로 빼는 기능을 왜 스펙에 넣었는지 모르겠음
그럼 서명을 파일 안에 넣으려면 어떻게 하라는 건데? /s
원격 증명이 앞으로 '더 좋아질' 거라는 생각만 해도 화가 남. 2004년 lafkon.net/tc 글이 이걸 정확히 예견했음
EU AI Act 통과시키고 모든 생성 도구에 C2PA 매니페스트 박아넣게 강제하기 전에 이런 거부터 고쳤어야 하는 거 아님?
C2PA는 AI 용도로는 애초에 안 맞음. 전통적 provenance는 원본 생성 후 편집이 없었음을 증명하는 건데, AI 쪽은 AI가 안 건드렸음을 증명하려는 거라 목표가 다름. C2PA로는 마지막 수정이 AI가 아니었다는 정도만 확인됨