모질라, AI로 취약점 271개 발견 "오류 거의 없어"
모질라가 AI 모델인 앤스로픽 Mythos와 맞춤형 에이전트 하네스를 활용해 2개월 만에 Firefox 보안 취약점 271개를 탐지했다. 이번 접근법은 기존 AI 취약점 탐지의 높은 오탐(False Positive) 문제를 극복하여 실무에 즉시 투입할 수 있는 수준의 정확도를 달성했다는 점에서 업계에 큰 의의를 갖는다.
지난달 모질라의 CTO가 AI가 지원하는 취약점 탐지 덕분에 "제로데이(Zero-day) 공격의 날이 얼마 남지 않았다"며 "방어자들이 마침내 결정적으로 승리할 기회를 얻었다"고 선언했을 때, 사람들의 불신은 뻔했다. 결국 이는 너무나 익숙한 패턴의 일부처럼 보였기 때문이다. 즉, AI가 이룬 몇 가지 인상적인 결과만 편집(Cheery-pick)해서 내놓고, 더 복잡한 뉘앙스를 담은 세부 정보는 생략한 채 과대광고 열차를 계속 굴러가게 두는 식이었다.
이러한 회의론을 의식하여, 모질라는 목요일에 소프트웨어 취약점 식별을 위한 AI 모델인 앤스로픽 Mythos(미토스)를 사용하여 두 달 동안 Firefox 보안 결함 271개를 색출해 낸 과정을 비하인드 씬으로 공개했다. 모질라 엔지니어들은 블로그 포스트를 통해, 마침내 실무에 투입할 수 있게 된 이번 돌파구가 주로 두 가지 요인의 결과라고 밝혔다: (1) 모델 자체의 성능 향상, (2) Mythos가 Firefox 소스 코드를 분석할 수 있도록 지원하는 모질라의 맞춤형 '하네스(harness)' 개발이다.
"오류(False Positive)가 거의 없다"
엔지니어들은 AI 기반 취약점 탐지와 관련된 그들의 이전 시도들이 원치 않는 쓰레기 데이터들로 가득했다고 말했다. 일반적으로 누군가 모델에 코드 블록을 분석하라고 지시하면, 모델은 타당해 보이는 버그 보고서를 전례 없는 규모로 쏟아냈다. 그러나 필연적으로 인간 개발자가 추가로 조사해 보면 세부 사항의 상당수가 AI가 지어낸 '환각(Hallucination)' 현상이라는 것을 발견하게 되었다. 그러고 나면 인간 개발자는 다시 예전 방식대로 취약점 보고서를 처리하기 위해 엄청난 작업을 투자해야만 했다.
모질라의 브라이언 그린스테드(Brian Grinstead) 수석 엔지니어는 인터뷰에서 모질라의 Mythos를 활용한 작업은 달랐다고 밝혔다. 가장 큰 차이점은 '에이전트 하네스'의 사용이었는데, 이는 특정 일련의 작업들을 안내하기 위해 대형 언어 모델(LLM)을 감싸는 코드를 의미한다. 이러한 하네스가 유용하려면 프로젝트별 의미 체계, 도구 및 프로세스에 맞게 이를 맞춤화하는 데 상당한 리소스가 필요하다.
그린스테드는 그의 팀이 구축한 하네스를 "목표를 달성하기 위해 LLM을 구동하는 코드"라고 설명했다. 그는 이것이 모델에 지시(예: '이 파일에서 버그 찾기')를 내리고, 도구(예: 파일 읽기/쓰기 및 테스트 케이스 평가 허용)를 제공한 다음 완료될 때까지 루프를 돌린다고 덧붙였다.
이 하네스는 Mythos에게 인간 모질라 개발자들이 사용하는 것과 동일한 도구와 파이프라인에 대한 액세스 권한을 부여했으며, 여기에는 테스트에 사용하는 특수 Firefox 빌드도 포함되었다.
그는 다음과 같이 자세히 설명했다. "이러한 하네스를 사용하면 결정론적이고 명확한 성공 신호나 작업 검증 신호만 정의할 수 있다면, AI에게 계속 작업하라고 지시할 수 있습니다. 우리의 경우 메모리 안전 문제를 찾을 때 Firefox의 샌티아이저 빌드(Sanitizer build)를 사용하며, 이 빌드가 충돌하면 작업이 성공한 것입니다. 우리는 에이전트를 소스 파일로 향하게 하고 '이 파일에 문제가 있다는 것을 알고 있으니, 찾아보세요'라고 말합니다. 그러면 AI는 테스트 케이스를 직접 만듭니다. 우리에게는 해당 테스트를 실행할 수 있는 기존의 퍼징(Fuzzing) 시스템과 도구가 있습니다. AI는 'HTML을 정확히 이렇게 구성하면 여기에 문제가 생길 것'이라고 말하며 이를 도구로 보냅니다. 그러면 도구가 예 또는 아니오라고 대답합니다. 도구가 예라고 하면 추가 검증이 이루어집니다."
이러한 추가 검증은 첫 번째 LLM의 출력 결과를 평가하는 두 번째 LLM의 형태로 이루어진다. 높은 점수를 받은 결과는 개발자들에게 기존 전통적인 방식으로 발견된 버그 리포트를 볼 때와 같은 수준의 확신을 준다.
그는 "결과적으로 도출된 버그들을 살펴보면, 오 탐지(False Positive)가 거의 없습니다"라고 말했다.
목요일에 공개된 비하인드 씬에는 Mythos, 그리고 일부 Claude Opus 4.6을 사용하여 모질라가 발견한 271개 취약점 중 12개에 대한 전체 Bugzilla 보고서가 공개되어 있다. 안전하지 않은 메모리 상태를 유발하는 테스트 케이스(HTML 또는 기타 코드)가 각 보고서에 제공되며, 이는 Firefox의 모든 버그가 보안 취약점으로 간주되기 위해 모질라가 요구하는 것과 동일한 기준을 충족한다. 최소 하나의...