Docs | Src |   A-  |  A+   | -/-

Metadata
sourcehttps://xark.es/b/mythos-firefox-150
created2026-04-24
byopenai:gpt-5.4

A quick look at Mythos run on Firefox: too much hype?

앤트로픽(Anthropic)이 Mythos announcement를 공개했을 때, 처음에는 정말 인상적이었다. 거의 걱정스러울 정도였다. 하지만 자세히 읽어보면, 대중에게 공개된 근거는 헤드라인이 주는 인상만큼 깔끔하지 않다. 흔히 인용되는 "2만 달러 미만"이라는 수치는, 미토스(Mythos)가 그 비용으로 치명적인 버그 하나를 가볍게 찾아냈다는 뜻이 아니다. 앤트로픽의 설명에 따르면, 그 예산은 약 천 회의 스캐폴드(scaffolded) 실행과 수십 건의 발견을 포함한 대규모 탐색 과정 전체에 쓰였다. 이것만으로도 주목할 만하지만, 사람들이 반복해서 말하는 극적인 버전과는 전혀 다른 주장이다. 이어서 모질라(Mozilla)는 미토스를 이용해 Firefox 150에서 대량의 AI 발견 이슈를 식별했다는 글을 올렸고, 이 글 역시 같은 방향으로 서사를 밀어붙이는 듯하다. 이제 AI가 취약점 연구에 본격적으로 등장했다는 이야기다. 실제로 그 글의 제목은 "제로데이의 수명이 다해 간다(The zero-days are numbered)"이다.

이 주장은 대담해 보이지만, 어쩌면 사실일 수도 있다. 다만 공개된 근거만으로는 그 주장 중 가장 강한 버전을 뒷받침하지 못한다. 그리고 앤트로픽이 고른 선택된(chosen) 집단에 속하지 않는 이상, 이런 공개 주장들이 단순한 마케팅인지, 아니면 정말 판을 바꾸는 변화인지 판단하기가 쉽지 않다.

흥미로운 질문은 미토스가 버그를 찾았느냐가 아니다. 그 점은 분명하다. 진짜 중요한 질문은 어떤 종류의 버그를 찾았는지, 얼마나 심각한지, 그리고 그 발견이 실제로 방어자와 공격자 사이의 균형을 바꾸는지다.

나는 몇 시간을 들여 Firefox 커밋 이력, 권고문 참조, 연결된 버그들을 훑어보며 모질라가 말한 숫자가 실제로 무엇을 뜻하는지 감을 잡아보려 했다. 모든 패치를 완전히 감사한 것은 아니지만, 적어도 마케팅 사이클이 보통 허용하는 것보다 더 현실적인 시각을 갖기에는 충분했다.

주장

모질라는 Firefox 150에서 미토스와 연관된 취약점 271건이 식별됐다고 보고했다. 하지만 동시에 Firefox 150 보안 권고문에는 이 주장을 Firefox 전용 버그 ID 271개짜리 단일하고 깔끔한 목록으로 대응시켜 놓지 않았다. 여기에는 여러 제보자에게서 나온 개별 CVE가 많이 들어 있고, 그중 최소 세 건은 앤트로픽에 공이 돌아가도록 명시돼 있다. 여기에 더해 몇몇 집계형 "메모리 안전성(memory safety) 버그" 항목도 있다.

이 네 개 항목만 해도 수백 건의 버그로 연결된다. 이 사실만으로도 헤드라인 숫자를 너무 문자 그대로 받아들여서는 안 된다는 점을 바로 알 수 있다. AI의 도움을 받은 대규모 정리 작업은, 각각의 수정이 모두 직접 악용 가능한 고급 취약점이 아니더라도 여전히 중요할 수 있다. 여기서 연결된 버그 수는 각각 1, 55, 154, 107건으로 총 317건이다. 하지만 이것을 모질라의 "식별된 취약점 271건" 주장과 곧바로 비교해서는 안 된다. 집계형 CVE 묶음에는 Firefox 150만이 아니라 Thunderbird와 ESR 릴리스도 포함되기 때문이다.

여기에는 기본적인 집계 문제도 있다. 모질라의 271이라는 수치, Bugzilla 버그 ID, 권고문 CVE, 개별 커밋은 같은 단위가 아니다. 외부에서는 공개된 정보로 그림의 일부를 재구성할 수는 있지만, 271이라는 숫자를 깔끔하게 설명하는 Firefox 전용 단일 권위 목록은 만들 수 없다. 그렇다고 모질라가 틀렸다는 뜻은 아니다. 다만 외부인은 권고문을 이 주장의 완벽한 원장(ledger)인 것처럼 과도하게 해석하지 말아야 한다는 뜻이다.

데이터가 시사하는 것

나는 커밋, 버그, CVE, 수정된 하위 시스템을 묶어 보여주고 몇 가지 통계도 표시하는 작은 도구를 대충 바이브 코딩(vibecoding)으로 만들었다. 또 버그 내용에 들어 있는 키워드를 기준으로 점수를 매겨, 실제로 우선 검토할 만한 버그를 추려 보려는 서툰 시도도 했다. 이 도구를 쓰면 커밋을 빠르게 훑어볼 수 있고, 재현성을 위해 요약 끝부분에서 내 스크립트 소스도 받을 수 있다.

정확한 총계를 무시하더라도, 데이터의 전체적인 형태는 꽤 많은 정보를 준다.

이 구분은 중요하다. "버그를 찾았다"는 말은 "악용 가능한 취약점을 찾았다"는 말과 같지 않다. 그리고 "무기화 가능한 체인 구성 요소를 찾았다"는 말과는 더더욱 다르다.

브라우저 익스플로잇에서는 다음 사이에 넓은 스펙트럼이 존재한다.

이 스펙트럼을 하나의 헤드라인 숫자로 뭉개면 주목은 받을 수 있다. 하지만 정밀성은 잃는다.

FIREFOX_BETA_149_END와 FIREFOX_BETA_150_END 태그 사이 통계

나는 이 태그들을 대략적인 릴리스 기간으로 사용한다. 미토스의 정확한 경계로 본 것은 아니다. 이 차이는 중요하다. 아래 통계는 Firefox 150 개발 기간 전체를 넓게 설명하는 것이지, 미토스 유래 수정만 깔끔하게 분리한 집합이 아니다. 따라서 규모와 패치 분포를 보여주는 데는 유용하지만, "이것이 271건의 미토스 취약점이다"라고 읽어서는 안 된다.

또 하나 눈에 띄는 점은, 이 버그들과 연결된 많은 커밋이 앤트로픽 게시글보다 며칠 또는 몇 주 앞서 있었다는 것이다. 특히 4월 2일에 뚜렷한 급증이 보인다. 놀라운 일은 아니다. 권고문 집계는 대개 늦게 이뤄지고, 릴리스 CVE 아래 묶이는 수정 중 일부는 분명 그보다 앞서 작성됐다. 예를 들면 3월 5일에 이미 작성된 경우가 있다.

이것들은 "진짜 취약점"인가?

어떤 기준을 중시하느냐에 따라 답이 달라진다.

방어자 입장에서는 답이 간단하다. 대체로 그렇다. 이런 수정 가운데 많은 것은 중요하다. 메모리 안전성 문제, 객체 수명(lifetime) 실수, 경쟁 조건(race condition), 잘못된 소유권(ownership), 직렬화(serialization) 문제는 공격자가 활용하기 전에 제거되길 방어자가 바라는 전형적인 패턴이다. 어떤 버그가 단독으로는 악용 불가능하더라도, 안전 여유를 줄이거나 다른 문제와 결합될 때 유용해질 수 있다. 예를 들면 상대 읽기(relative read)나 임의 읽기(arbitrary read) 원시 요소 같은 경우다.

공격자처럼 생각한다면 기준은 더 높다. 버그가 진짜 흥미로우려면 지렛대를 제공해야 한다. 메모리 제어, 타입 혼동(type confusion), 권한 경계 침범, 샌드박스 탈출, 혹은 익스플로잇을 실질적으로 진전시키는 다른 무언가가 있어야 한다. 그런 기준으로 보면, 공개된 수정 상당수는 명백한 익스플로잇 금맥이라기보다 하드닝(hardening)과 버그 부채 감축에 더 가깝다.

그렇다고 이것이 비판은 아니다. 하드닝은 좋은 일이다. 하지만 그것은 모델이 이제 고가치 브라우저 체인을 찾는 데 최상급 공격 연구자보다 뛰어나다는 것을 입증하는 일과는 다르다.

이 지점에서 취약점의 맥락(context) 이야기를 해야 한다. 방어자에게는 악용 가능성 맥락과 무관하게 취약점은 취약점이다. 하지만 브라우저에서는 추가 사용자 상호작용 뒤에 숨은 공격 표면도 있고, 아주 특정한 설정, 런타임 옵션 등에서만 드러나는 경우도 있다. 이런 경우는 취약점을 무기화하기에 신뢰할 만하지 않다. 공격자라면 보통 그런 표면에 시간을 들이지 않는다.

패치 집합에서 눈에 띄는 점

연결된 수정들을 빠르게 훑어보면 몇 가지 범주가 반복해서 나타난다.

이 중 일부는 정확히 위험한 버그가 나오는 지점이다. 반면 일부는 대규모 자동화 검토가 촉발한 예방적 유지보수로 보는 편이 더 적절하다.

그래서 CVE-2026-6746에 해당하는 2014596 같은 개별 이슈가 거대한 집계형 CVE 묶음보다 더 눈에 띈다. 구체적인 use-after-free는 잠재적으로 악용 가능한 보안 문제로 판단하기가 쉽다. 반면 "수정된 메모리 안전성 버그"라는 긴 목록은 방향성 측면에서는 중요하지만, 개별 버그를 직접 살펴보지 않는 한 분석적으로는 훨씬 약하다.

미토스가 잘하는 것으로 보이는 점

Firefox 150 데이터를 가장 호의적으로 읽으면, 다음과 같은 결론이 나온다.

미토스는 의심스러운 패턴을 대규모로 드러내는 데 매우 능한 듯하다.

이것만으로도 충분히 가치가 있다. Firefox 같은 규모의 코드베이스 전반에서 정리 버그, 수명 위험, API 오용, 불안전한 가정, 잠복한 메모리 안전성 문제를 찾아낼 수 있는 모델이라면, 그 발견 중 일부만 직접 악용 가능하더라도 유용하다. 방어 팀 입장에서는 더 빠른 하드닝, 더 넓은 코드 리뷰 범위, 수동 분류 작업에 덜 낭비되는 시간으로 이어질 수 있다. 공개된 정보만 놓고 보면, 잘 뒷받침되는 부분도 바로 이 대목이다.

아마 이것이 가장 중요한 실질적 결과일 것이다. 보안 팀은 모델이 완전한 익스플로잇 체인을 혼자 만들어내지 않더라도 큰 가치를 얻을 수 있다.

다만 그 가치가 다른 LLM과 비교해 얼마나 특별한지는 분명하지 않다. 직접 어떤 모델이든 코드베이스에서 버그를 찾도록 돌려봤거나, 자기만의 에이전트를 만들어봤다면, 미토스가 찾은 패턴 대부분에 대해 비슷한 경고를 낼 수 있으리라는 자신이 아마 있을 것이다. 예를 들어 구글 빅 슬립(Google Big Sleep)을 보자. 이미 미토스보다 훨씬 더 의미 있었을 가능성도 있다. 그런데도 이렇게 극적인 발표는 없었다.

아직 입증되지 않은 것

공격 측면의 주장은 훨씬 뒷받침하기 어렵다.

공개된 근거만으로는 아직도 알 수 없는 것이 많다. 얼마나 많은 토큰(token), 실행(run), 분석가 시간(analyst-hours)이 필요했는지, 인간의 필터링이 얼마나 들어갔는지, 얼마나 많은 발견이 중복이었는지 또는 가치 낮은 크래시였는지, 같은 표적에서 미토스가 다른 강력한 모델과 비교해 어떤 성능을 보였는지, 그리고 수정된 버그 가운데 실제 익스플로잇 개발 맥락에서 실질적으로 중요했을 버그가 몇 개인지 모두 불분명하다.

모질라가 악용 가능성을 입증하는 데 시간을 썼을 것 같지는 않다. 미토스가 이들을 위해 PoC를 제공했을 것 같지도 않다. 일부 커밋에 crashtest가 포함돼 있기는 하지만 말이다. 실제로 악용 가능한 버그 수를 모르면, 이것을 보안 혁명이라기보다 대규모 버그 채굴(bug-mining) 캠페인의 성공으로 보는 편이 더 타당하다.

그리고 이 구분은 중요하다. 브라우저 보안은 버그 수정 개수로 측정되지 않는다. 공격자가 의미 있는 역량을 잃었는지로 측정된다. 그런데 이번 사례에서는 그 점이 아직 분명하지 않다.

방어자에게의 관련성 vs 공격자에게의 관련성

현재 내가 내린 결론은 이렇다.

방어자에게 미토스는 지금 당장 의미 있어 보인다. 발견된 것들 가운데 상당수가 "그저" 안정성 문제, 수상한 정리 버그, 잠복한 메모리 안전성 위험일 뿐이라 해도, 그것들을 제거하면 코드베이스가 나아지고 공격자의 미래 기회도 줄어든다. 다만 내가 보기에 더 견고한 코드베이스에서도 비슷한 결과를 낼지는 의문이다. 그래서 미토스가 애플(Apple) 사파리(Safari)나 구글(Google) 크롬(Chrome)에서도 비슷한 결과를 내는지 몹시 궁금하다. 내기를 걸어야 한다면, 아마 그렇지 않을 것이라고 보겠다 :)

공격자에게는 이야기가 덜 설득력 있다. 모질라의 공개만으로 미토스가 갑자기 기존의 공격 우위를 지워버렸다는 점은 전혀 입증되지 않는다. 오히려 공개된 근거는, AI가 현재는 단독의 निर्ण정적 익스플로잇 발견 증거라기보다 광범위한 하드닝 지원 수단으로서 방어에 더 쉽게 쓰인다는 점을 시사한다.

그래서 나는 공개된 공격자 측 주장과 모질라의 숫자를 분리해서 봐야 한다고 생각한다. 예를 들어 어떤 팀은 자신들의 RCE 및 샌드박스 탈출 체인이 릴리스 이후에도 여전히 살아 있다고 공개적으로 말했다. 이것만으로 강력한 증거가 되는 것은 아니다. 그래도 "많은 수정이 들어갔다"는 말이 곧 "공격 문제는 해결됐다"는 뜻은 아니라는 점을 상기시켜 준다.

앞으로는 달라질 수 있다. 하지만 이번 Firefox 릴리스가 이미 달라졌음을 입증하는 것은 아니다.

결론

Firefox 150 데이터는, 특히 대규모 방어 보안 작업에서 진짜로 유용한 도구를 보여준다. 하지만 공개된 기록만으로는 사람들이 여기서 끌어내고 싶어 하는 가장 강한 주장까지 정당화되지는 않는다. 헤드라인 숫자는 인상적이지만, 의미가 매우 다른 버그들을 한데 묶어 놓았고 공개적으로도 깔끔한 집계로 풀어주지 않는다.

그래서 현재 내 견해는 간단하다.

바깥은 늘 위험하다. 안전하게 지내라. 행간을 읽어라. 과장된 게시물을 경계하고, 그들이 밀어붙이려는 서사에 휩쓸리지 말라.

a/dom/media/webrtc/MediaEngineFake.cpp +++ b/dom/media/webrtc/MediaEngineFake.cpp @@ -151,7 +151,6 @@ MediaEngineFakeVideoSource::CreateFrom( const MediaEngineFakeVideoSource* aSource) {

auto src = MakeRefPtr();

static_cast<MediaTrackSettings>(src->mSettings) = *aSource->mSettings;


`MediaEngineFakeVideoSource`는 WebRTC 테스트 시 실제 카메라 없이 소스 피드에 연결할 때 쓰는 가짜 비디오 소스다. 패치는 아주 단순하다. 비디오 소스를 복제할 때 원본 소스 옵션을 복사하지 않는다. 이것은 인스턴스별 오래된 데이터(stale data)다. 이 복사는 원래도 별 쓸모가 없다. 비디오 소스 옵션은 나중에 할당 과정에서 초기화돼야 하기 때문이다. 다만 이후에 [Allocate](https://github.com/mozilla-firefox/firefox/blob/main/dom/media/MediaManager.cpp#L4524) 경로를 거치지 않고 소스를 쓴다면 문제가 될 수 있다. 나는 `mSettings` 복사는 유지되었으므로 `aSource`가 해제된 것은 아니라고 본다. 따라서 이것은 기존 정상 경로를 통해 할당됐던 옵션만 담고 있을 가능성이 크다. 이것이 메모리 손상으로 이어진다면, [MediaDevices](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices) API 퍼징으로 쉽게 발견됐을 것 같다는 느낌이 든다. - 악용 가능성: 낮음 - 맥락: 현실적 #### 버그 2023302 - `ClearHeaders` 호출 시 `mResponseHead` null 검사. r=necko-reviewers,jesup 이 커밋은 포인터에 메서드를 호출하기 전에 null 검사를 추가한다. - 악용 가능성: 없음 - 맥락: 해당 없음 #### 버그 2022051. r=bvisness.

diff --git a/js/src/wasm/WasmIonCompile.cpp b/js/src/wasm/WasmIonCompile.cpp index 0e0df7c0eef77..19d78084d452d 100644 --- a/js/src/wasm/WasmIonCompile.cpp +++ b/js/src/wasm/WasmIonCompile.cpp @@ -5544,7 +5544,8 @@ class FunctionCompiler { MInstruction* dstData = MWasmLoadField::New(

     alloc(), dstArrayObject, nullptr, WasmArrayObject::offsetOfData(),

     mozilla::Nothing(), MIRType::WasmArrayData, MWideningOp::None,

@@ -5553,7 +5554,8 @@ class FunctionCompiler { MInstruction* srcData = MWasmLoadField::New(

     alloc(), srcArrayObject, nullptr, WasmArrayObject::offsetOfData(),

     mozilla::Nothing(), MIRType::WasmArrayData, MWideningOp::None,

나는 SpiderMonkey의 JIT을 이것이 악용 가능한지 아닌지 판단할 만큼 잘 알지 못한다.

이 커밋 전에는 두 로드가 평범한 이동 가능한 필드 로드(field load)로 생성됐다. MWasmLoadField에서 이는 "트랩 메타데이터(trap metadata) 없음"을 뜻하고, 명령은 이동 가능하다고 취급된다. 반면 트랩 메타데이터가 있으면 대신 가드(guard)가 된다(js/src/jit/MIR-wasm.h:2754). 이 차이는 중요하다. 객체 포인터에서 wasm 필드 로드가 null에서 실패할 수 있고, 백엔드는 maybeTrap()을 이용해 방출된 faulting instruction에 올바른 wasm 트랩 사이트를 붙인다(js/src/jit/Lowering.cpp:8731, js/src/jit/CodeGenerator.cpp:10684).

판단은 여러분에게 맡긴다.

부록 B: CVE와 연결된 버그가 있는 전체 커밋 목록, 컴포넌트별 정렬

커밋 인벤토리 - accessible - 2002899 Bug 2002899: UIA 제공자(provider)를 명시적으로 연결 해제. a=diannaS DONTBUILD CVE-2026-6784 - 2022338 Bug 2022338 - 문서가 아닌 원격 accessible이 원격 outer doc에 연결되지 못하게 함. a=diannaS CVE-2026-6785 - 2027237 Bug 2027237 - embedder doc이 동일한 PBrowser에 의해 관리되는지 검사. a=diannaS DONTBUILD CVE-2026-6785 - 2027291 Bug 2027291 - AccIterable::IteratorState에서 mParent를 강한 참조(strong reference)로 변경. a=RyanVM CVE-2026-6785 - 2027293 Bug 2027293 - SetSelectionBoundsAt 호출 전에 editor를 가져와 유지. a=diannaS DONTBUILD CVE-2026-6785 - 2027962 Bug 2027962: Shutdown 검사 a=RyanVM DONTBUILD CVE-2026-6785 - 2027971 Bug 2027971 - ID 0으로 원격 비문서 accessible 생성 금지. a=RyanVM DONTBUILD CVE-2026-6785 - 2029743 Bug 2029743 - ToDOMPoint에서 content에 대한 강한 참조를 반환. a=diannaS DONTBUILD CVE-2026-6786 - browser - 1963301 Bug 1963301 - Form Autofill의 프로그래밍 방식 포커스 처리 개선. r=dimi,geckoview-reviewers,tcampbell CVE-2026-6784 - 1963301 lint 실패를 유발해 "Bug 1963301 - Form Autofill의 프로그래밍 방식 포커스 처리 개선. r=dimi,geckoview-reviewers,tcampbell" 되돌림 CVE-2026-6784 - 1963301 Bug 1963301 - Form Autofill의 프로그래밍 방식 포커스 처리 개선. r=dimi,geckoview-reviewers,tcampbell CVE-2026-6784 - 1963301 mozlint 실패를 유발해 "Bug 1963301 - Form Autofill의 프로그래밍 방식 포커스 처리 개선. r=dimi,geckoview-reviewers,tcampbell" 되돌림 CVE-2026-6784 - 1963301 Bug 1963301 - Form Autofill의 프로그래밍 방식 포커스 처리 개선. r=dimi,geckoview-reviewers,tcampbell CVE-2026-6784 - 2012436 Bug 2012436. r=tschuster,daleharvey CVE-2026-6784 - 2012436 xpc 실패 @ test_richsuggestions_order.js를 유발해 "Bug 2012436. r=tschuster,daleharvey" 되돌림 CVE-2026-6784 - 2012436 Bug 2012436. r=tschuster,daleharvey CVE-2026-6784 - 2025609 Bug 2025609 - BlockedSiteParent.sys.mjs에서 browsingContext 정보를 사용. a=RyanVM DONTBUILD CVE-2026-6785 - build - 2020817 Bug 2020817 - Part 2: MOZ_NON_TERMINATED_STRING 정적 분석 추가, a=diannaS CVE-2026-6784 - docshell - 2025354 Bug 2025354 a=diannaS CVE-2026-6785 - 2028524 Bug 2028524, document 누수 방지, r=farre, a=dsmith CVE-2026-6784 - dom - 1536243 Bug 1536243 - FFmpeg extradata padding을 0으로 채우기 위해 av_mallocz 사용. r=media-playback-reviewers,jolin CVE-2026-6784 - 1999158 Bug 1999158. a=diannaS DONTBUILD CVE-2026-6785 - 2001319 Bug 2001319 - Part 1: 안드로이드(Android)에서 MediaDRM 프로비저닝을 origin ID 사용 방식으로 갱신. r=aosmond,geckoview-reviewers,media-playback-reviewers,tcampbell CVE-2026-6784 - 2001319 Bug 2001319 - Part 2: 탐색 데이터 삭제 시 MediaDRM origin 프로비저닝 해제. r=aosmond,media-playback-reviewers,webrtc-reviewers,jib CVE-2026-6784 - 2014435 Bug 2014435 - MediaEngineFakeVideoSource::CreateFrom에서 mOpts를 복사하지 말 것. r=padenot CVE-2026-6784 - 2014596 Bug 2014596 - 서로 다른 shadow root 간 수동 슬롯 재할당 수정. a=diannaS DONTBUILD CVE-2026-6746 - 2019004 Bug 2019004 - 이중 IPC 채널을 통한 FileSystemAccessHandle의 이중 닫기(double-close) 경쟁 조건 수정, a=diannaS DONTBUILD CVE-2026-6786 - 2020817 Bug 2020817 - Part 4: BeginReading/Data를 호출하는 nsACString 호출자에 주석을 달고 정리, a=diannaS CVE-2026-6784 - 2021769 Bug 2021769: 이 클래스들의 CC 설정 단순화. a=diannaS DONTBUILD CVE-2026-6747 - 2021788 Bug 2021788 - WMFVideoMFTManager::CreateBasicVideoFrame()에서 signed long 오버플로우 방지. r=media-playback-reviewers,jolin CVE-2026-6784 - 2022276 Bug 2022276 - 사용자 정의 경로 처리 헬퍼 개선. a=diannaS DONTBUILD CVE-2026-6785 - 2022335 Bug 2022335 - 취소 후 cache 동작을 더 빨리 종료. a=diannaS DONTBUILD CVE-2026-6785 - 2022367 Bug 2022367 - CopyJSSettings에서 override 문자열 복사. a=diannaS DONTBUILD CVE-2026-6784 - 2022373 Bug 2022373. a=diannaS CVE-2026-6785 - 2022604 Bug 2022604 - VideoFrame.copyTo()가 RGB surface에 잘못된 stride를 사용하던 문제 수정. a=diannaS CVE-2026-6748 - 2022610 Bug 2022610. a=diannaS DONTBUILD CVE-2026-6749 - 2022785 Bug 2022785 - 부모 프로세스에서 PRF evalByCredential 목록 길이 제한. r=keeler CVE-2026-6786 - 2023544 Bug 2023544 - mAsyncWaitAlgorithms.forget() 사용 a=diannaS DONTBUILD CVE-2026-6785 - 2023599 Bug 2023599. a=diannaS CVE-2026-6785 - 2023608 Bug 2023608 - ObservableArrayProxyHandler를 올바르게 가져오기. a=diannaS CVE-2026-6785 - 2023670 Bug 2023670 - Part 1: 전송 가능한 StruturedCloneHolders에 대해서만 nsIInputStream 전송 허용, a=diannaS DONTBUILD CVE-2026-6784 - 2023670 Bug 2023670 - Part 2: WriteIPCParams에서 전송 상태 초기화, a=diannaS DONTBUILD CVE-2026-6784 - 2023814 Bug 2023814 - ImageData structured cloning 하드닝. a=diannaS CVE-2026-6785 - 2023925 Bug 2023925 - SVG 필터 속성 enum 현대화. a=diannaS CVE-2026-6786 - 2024225 Bug 2024225 - GetAnonymousRootElementOfTextEditor 단순화. a=diannaS CVE-2026-6784 - 2024238 Bug 2024238. a=diannaS DONTBUILD CVE-2026-6784 - 2024240 Bug 2024240 - 이벤트 디스패치와의 상호작용에서 LinuxGamepadService 수명주기 정리. a=diannaS DONTBUILD CVE-2026-6784 - 2024242 Bug 2024242: VSyncParent 정리 a=diannaS DONTBUILD CVE-2026-6785 - 2024346 Bug 2024346 - RuntimeService::Cleanup()을 한 번만 실행. a=diannaS DONTBUILD CVE-2026-6786 - 2024416 Bug 2024416 - 인터페이스가 여전히 유효할 때만 ObservableArray 콜백 호출; a=diannaS CVE-2026-6786 - 2024424 Bug 2024424 mozreportmediaerror 이벤트를 비동기로 디스패치 r=alwu CVE-2026-6784 - 2024425 Bug 2024425: 기본 frame을 가져올 때 PresShell을 지역 변수에 캡처. a=diannaS DONTBUILD CVE-2026-6785 - 2024429 Bug 2024429 - 인터페이스에서 일관된 handle 타입 사용. a=RyanVM DONTBUILD CVE-2026-6786 - 2024432 Bug 2024432 - 이동 시 Geolocation 서비스 업데이트. a=diannaS DONTBUILD CVE-2026-6786 - 2024440 Bug 2024440 - Shared Array Buffer 또는 Object 거부, a=RyanVM DONTBUILD CVE-2026-6785 - 2024442 Bug 2024442, 실패 시 nursery wrapper가 누수되지 않게 함, r=mccr8, a=dsmith CVE-2026-6785 - 2024446 Bug 2024446 - abort 알고리즘 내부에서 unfollow하지 않음 a=diannaS DONTBUILD CVE-2026-6785 - 2024455 Bug 2024455. r=aosmond CVE-2026-6786 - 2024455 여러 실패를 유발해 "Bug 2024455. r=aosmond" 되돌림. CVE-2026-6786 - 2024455 Bug 2024455. r=aosmond CVE-2026-6786 - 2024458 Bug 2024458: 만일을 대비해 sigslot을 위해 self-ref 유지. a=diannaS DONTBUILD CVE-2026-6785 - 2024463 Bug 2024463 - Part 1 목록 크기 검사 a=diannaS CVE-2026-6785 - 2024463 Bug 2024463 - Part 2 assert 추가 a=diannaS CVE-2026-6785 - 2024468 Bug 2024468 - CloseWithReason 동안 UDPSocket이 살아 있게 보장, a=diannaS DONTBUILD CVE-2026-6786 - 2024476 Bug 2024476: 공유 RuntimeService::mNavigatorProperties에 대한 보호되지 않은 접근 수정. a=diannaS DONTBUILD CVE-2026-6786 - 2024478 Bug 2024478: death grip 추가 a=diannaS DONTBUILD CVE-2026-6785 - 2024650 Bug 2024650 - MaybeSubmit이 문서를 해제할 수 있는 스크립트를 호출함 a=diannaS DONTBUILD CVE-2026-6785 - 2024653 Bug 2024653, 변경되지 않는 속성 설정을 더 일관되게 처리, r=farre, a=dsmith CVE-2026-6785 - 2024654 Bug 2024654 - ShadowRoot::InvalidateStyleAndLayoutOnSubtree 단순화. a=diannaS CVE-2026-6785 - 2024655 Bug 2024655, reflector 갱신 조정, r=jonco,sfink a=dsmith CVE-2026-6785 - 2024656 Bug 2024656 - 강한 PresShell 참조 유지. a=diannaS CVE-2026-6785 - 2025278 Bug 2025278 - part 2. a=diannaS DONTBUILD CVE-2026-6785 - 2025281 Bug 2025281 - MediaIPCUtils 정리. a=diannaS CVE-2026-6784 - 2025332 Bug 2025332 - ErrorResultClearUnionData를 더 자주 호출해야 함. a=diannaS CVE-2026-6786 - 2025348 Bug 2025348 - screen 및 orientation 생성 정리. a=diannaS DONTBUILD CVE-2026-6786 - 2025349 Bug 2025349: StreamList에 deathgrip 추가 a=RyanVM DONTBUILD CVE-2026-6785 - 2025350 Bug 2025350 - StructuredCloneBlobClonedErrorHolder 기록 시 크기 검증에 CheckedInt 사용. a=diannaS DONTBUILD CVE-2026-6785 - 2025360 Bug 2025360 - nsXMLPrettyPrinter 누수 방지, r=hsivonen, a=dsmith CVE-2026-6785 - 2025363 Bug 2025363 - 실제로 IgnoreOpensDuringUnload, r=edgar,a=dsmith CVE-2026-6785 - 2025370 Bug 2025370 - EventListenerManager::GetTypedEventHandler의 오류 경우를 올바르게 처리, r=edgar, a=dsmith CVE-2026-6785 - 2025379 Bug 2025379: header 스냅샷 생성 a=RyanVM DONTBUILD CVE-2026-6785 - 2025381 Bug 2025381 - AbortSignal의 reason을 더 일관되게 처리. a=diannaS DONTBUILD CVE-2026-6785 - 2025387 Bug 2025387. a=diannaS DONTBUILD CVE-2026-6784 - 2025399 Bug 2025399 - GamepadPlatformService에 스레드 안전성 주석 추가. a=diannaS DONTBUILD CVE-2026-6785 - 2025400 Bug 2025400: gamepad에 mutex 추가 a=diannaS DONTBUILD CVE-2026-6785 - 2025407 Bug 2025407 - HTMLAllCollection::GetSupportedNames 코드를 nsContentList::GetSupportedNames와 중복 제거., a=dsmith CVE-2026-6785 - 2025415 Bug 2025415 - IndexedDB: CopyingStructuredCloneReadCallback가 캐시된 Blob wrapper를 반환해, 복제 값은 독립 복사본이어야 한다는 명세 요구를 위반함. a=RyanVM CVE-2026-6785 - 2025420 Bug 2025420: MessageBodyService 정리 a=diannaS DONTBUILD CVE-2026-6785 - 2025427 Bug 2025427: deathgrip 추가 a=RyanVM DONTBUILD CVE-2026-6785 - 2025429 Bug 2025429. a=diannaS DONTBUILD CVE-2026-6785 - 2025430 Bug 2025430: CDM shutdown 검사 a=RyanVM DONTBUILD CVE-2026-6785 - 2025458 Bug 2025458 - SetCDMProxy가 항상 task queue에서 실행되도록 보장. a=diannaS CVE-2026-6786 - 2025461 Bug 2025461: GMPUtils 조정, LOG 수정 a=diannaS DONTBUILD CVE-2026-6786 - 2025463 Bug 2025463 - 인코딩된 temporal layer ID의 경계 검사 추가. a=diannaS CVE-2026-6786 - 2025466 Bug 2025466 - MFCDMChild::IPDLActorDestroyed에서 mIPDLSelfRef를 마지막에 해제. a=diannaS DONTBUILD CVE-2026-6784 - 2025479 Bug 2025479 - ArrayOfRemoteAudioData::ElementAt에서 사용 전 IPC 제공 오디오 샘플 필드 검증. a=diannaS DONTBUILD CVE-2026-6785 - 2025481 Bug 2025481 - WMFCDMProxy에 누락된 shutdown guard 추가. a=diannaS CVE-2026-6786 - 2025483 Bug 2025483 speex_resampler_set_rate() 오류 시에도 mBeginProcessing 갱신 a=diannaS DONTBUILD CVE-2026-6786 - 2025485 Bug 2025485 - AudioData::SetTrimWindow의 경계 검사 개선. a=diannaS CVE-2026-6786 - 2025489 Bug 2025489: 오버플로우 방지 a=RyanVM DONTBUILD CVE-2026-6785 - 2025493 Bug 2025493 - a=diannaS CVE-2026-6785 - 2025494 Bug 2025494 - MOZ_UNANNOTATED 제거. a=diannaS CVE-2026-6786 - 2025497 Bug 2025497. a=diannaS DONTBUILD CVE-2026-6785 - 2025502 Bug 2025502 - compositor thread에서 MediaSystemResourceService shutdown 직렬화. a=diannaS DONTBUILD CVE-2026-6785 - 2025506 Bug 2025506. a=diannaS DONTBUILD CVE-2026-6786 - 2025511 Bug 2025511 - a=diannaS CVE-2026-6786 - 2025513 Bug 2025513. a=diannaS CVE-2026-6786 - 2025515 Bug 2025515 - WatchManager를 통해 비디오 MediaStreamTrack 렌더링 연결을 지연. a=diannaS DONTBUILD CVE-2026-6785 - 2025515 Bug 2025515 - 분리된 출력에서도 Add/RemoveVideoOutput를 항상 허용. a=diannaS DONTBUILD CVE-2026-6785 - 2025517 Bug 2025517 - GmpPluginNotifierVideoConduit shutdown 순서 정리 a=diannaS DONTBUILD CVE-2026-6785 - 2025520 Bug 2025520: 이 비교 수정. a=diannaS DONTBUILD CVE-2026-6786 - 2025883 Bug 2025883 - VideoFrame.copyTo()가 YUV surface에서 잘못된 stride를 사용하던 문제 수정. a=diannaS CVE-2026-6751 - 2025883 Bug 2025883 - AudioData CopySamples에 소스 frames-per-channel 전달. a=diannaS CVE-2026-6751 - 2025883 Bug 2025883 - AudioData.copyTo()의 interleaved-to-interleaved 잘못된 frame offset 계산 수정. a=diannaS CVE-2026-6751 - 2025883 Bug 2025883 - AudioData.copyTo()의 planar-to-interleaved가 frame offset을 적용하지 않던 문제 수정. a=diannaS CVE-2026-6751 - 2025948 Bug 2025948: IPCOpen assertion 변경 a=diannaS DONTBUILD CVE-2026-6785 - 2025949 Bug 2025949 - HonorUserPreferencesForTrackSelection에서 TextTrack에 대한 강한 참조 유지. a=diannaS DONTBUILD CVE-2026-6785 - 2025953 Bug 2025953 - webauthn: 수동 객체 캐싱 대신 내장 Cached webidl 기능 사용 a=diannaS CVE-2026-6785 - 2025955 Bug 2025955 - MessageEvent(ToParent)RunnableWorkerErrorReport::ReportError에서 raw pointer 대신 RefPtr<DOMEventTarget>를 메서드 파라미터로 사용. a=diannaS CVE-2026-6785 - 2025969 Bug 2025969 - txXPathNode를 값으로 복사 a=diannaS DONTBUILD CVE-2026-6785 - 2025970 Bug 2025970 - 순환 인덱싱 방지 a=diannaS DONTBUILD CVE-2026-6785 - 2025971 Bug 2025971 - 소유된 txXPathNodetxSingleNodeContext getter 사용 a=diannaS DONTBUILD CVE-2026-6785 - 2025973 Bug 2025973 - txExecutionState::TemplateRule에 값 의미론(value-semantics) 사용 a=diannaS DONTBUILD CVE-2026-6785 - 2025976 Bug 2025976 - txxPathNode를 참조 대신 값으로 변경 a=diannaS DONTBUILD CVE-2026-6785 - 2025977 Bug 2025977 - index entry 다시 가져오기 a=diannaS DONTBUILD CVE-2026-6785 - 2026278 Bug 2026278 - AutoSVGViewHandler::mRoot를 강한 참조로 변경 a=diannaS DONTBUILD CVE-2026-6784 - 2026280 Bug 2026280 - RefPtr 객체로 ServiceWorkerRegistration::RevokeActor() 호출. a=diannaS DONTBUILD CVE-2026-6785 - 2026282 Bug 2026282 - SMILCSSValueType::ValueFromString에서 flush하지 않음 a=diannaS DONTBUILD CVE-2026-6786 - 2026285 Bug 2026285 - dom/streams의 모든 값을 래핑. a=diannaS CVE-2026-6785 - 2026292 Bug 2026292 - 접근성 서비스를 불필요하게 호출하지 않음, r=edgar, a=dsmith CVE-2026-6784 - 2026310 Bug 2026310 - ProcessProfileDataSequenceRooter 추가. a=diannaS DONTBUILD CVE-2026-6785 - 2027148 Bug 2027148 - VideoEngine 정리. a=diannaS DONTBUILD CVE-2026-6784 - 2027152 Bug 2027152. a=diannaS DONTBUILD CVE-2026-6786 - 2027161 Bug 2027161 - GMP 플러그인 및 actor 수명 단순화. a=diannaS DONTBUILD CVE-2026-6786 - 2027238 Bug 2027238 - callback 오버로드 대신 promise 기반 SendRequestMemoryReport 사용. a=RyanVM DONTBUILD CVE-2026-6786 - 2027268 Bug 2027268 - normalize() 처리 단순화, r=emilio,masayuki, a=dsmith CVE-2026-6785 - 2027302 Bug 2027302. a=diannaS CVE-2026-6786 - 2027342 Bug 2027342. a=diannaS CVE-2026-6785 - 2027384 Bug 2027384 - 비디오 캡처 스레드에서도 destroyed 상태 유지. a=diannaS DONTBUILD CVE-2026-6784 - 2027541 Bug 2027541 - mochitest-plain 테스트. a=diannaS DONTBUILD CVE-2026-6754 - 2027694 Bug 2027694 - 수동 DomainMatchingMode 캐스트 제거. a=diannaS DONTBUILD CVE-2026-6784 - 2027959 Bug 2027959. a=diannaS DONTBUILD CVE-2026-6785 - 2027995 Bug 2027995 - BrowserParent::SendHandleTap 호출자가 BrowserParent에 대한 강한 참조를 유지하도록 함., a=dsmith CVE-2026-6785 - 2028000 Bug 2028000: 실패 시 이것을 0으로 초기화. 이 함수는 이것을 덮어써야 한다. a=diannaS DONTBUILD CVE-2026-6786 - 2028267 Bug 2028267. a=diannaS DONTBUILD CVE-2026-6785 - 2028275 Bug 2028275. a=diannaS CVE-2026-6785 - 2028290 Bug 2028290. a=diannaS DONTBUILD CVE-2026-6785 - 2028291 Bug 2028291: WebTransport CloseSession() 정리, a=dsmith CVE-2026-6785 - 2028525 Bug 2028525 - 이벤트 디스패치 중 CookieStoreNotifier가 살아 있게 유지, a=diannaS DONTBUILD CVE-2026-6786 - 2028528 Bug 2028528 - dictionary root 처리 a=diannaS DONTBUILD CVE-2026-6785 - 2028551 Bug 2028551 a=diannaS DONTBUILD CVE-2026-6785 - 2029415 Bug 2029415 - UpdateFilter() 내부에서 flush하지 않음. a=diannaS DONTBUILD CVE-2026-6786 - 2029436 Bug 2029436 - patch 1 - [beta] SetFontInternal()을 넘겨 CurrentState() 내부 참조를 잡고 있지 않기. a=diannaS DONTBUILD CVE-2026-6785 - 2029436 Bug 2029436 - patch 2 - [beta] ParseSpacing 헬퍼 개선 및 호출자 갱신. a=diannaS DONTBUILD CVE-2026-6785 - 2029440 Bug 2029440 - a=diannaS DONTBUILD CVE-2026-6785 - 2029449 Bug 2029449: 만일을 대비해 이것을 지연. a=dsmith CVE-2026-6785 - 2029450 Bug 2029450 - nsFrameLoaderOwner에서 onload를 항상 해제, r=mccr8, a=dsmith CVE-2026-6785 - 2029461 Bug 2029461: 사용자 정의 메모리 할당자 제거. a=RyanVM DONTBUILD CVE-2026-6784 - 2029690 Bug 2029690 - 올바른 doc에서 fullscreen 요청 처리, r=edgar, a=dsmith CVE-2026-6785 - 2029800 Bug 2029800 - 빠른 수정. a=diannaS DONTBUILD CVE-2026-6784 - 2029809 Bug 2029809 - LoopingDecodingState의 profiler label에 정적 문자열 리터럴 사용. a=diannaS CVE-2026-6786 - 2030123 Bug 2030123 - ClientNavigateOpChild가 IPC를 잃었으면 조기 반환, r=farre a=RyanVM CVE-2026-6785 - 2030320 Bug 2030320. a=RyanVM DONTBUILD CVE-2026-6785