1Password's AI patching benchmark is misleading
1Password의 AI 패치 벤치마크는 오해를 부른다 — Trail of Bits의 반박
Trail of Bits가 1Password의 FLAWED 보고서가 제시한 'AI 패치 클린 수정률 26%'라는 수치가 오도하고 있다고 반박했습니다. 잘못된 수정을 지시한 프롬프트와 테스트 금지 조건이 포함된 실험 설계의 문제를 지적하며, 자사 컨설팅과 Patch the Planet 프로젝트의 실제 데이터를 공개했습니다. 검증용 에이전트 스킬 2종도 함께 릴리스했습니다.
- 주제
본문
Trail of Bits가 1Password가 2026년 8월 6일 발표한 FLAWED 보고서를 정면으로 반박했습니다. 보고서의 헤드라인 수치인 'AI 모델이 클린 수정을 만들어낸 비율 26%'가 실제 AI 패치 능력을 왜곡한다는 주장으로, 방어자들이 취약점 수정에 도움이 될 기술의 사용을 주저하게 만들 위험이 있다고 지적합니다. 이 글은 자사 컨설팅 프로젝트와 OpenAI와의 공동 이니셔티브인 Patch the Planet에서 수집한 인간 및 에이전트 패치 품질 데이터를 공개하고, post-patch-validation과 review-walkthrough라는 두 에이전트 스킬도 함께 배포합니다.
헤드라인 수치를 왜곡하는 네 가지 실험 설계
Trail of Bits가 1Password의 코드와 데이터를 검토한 결과, 26%라는 수치가 일반적인 패치 작업의 척도로 부적합한 이유 네 가지를 찾았습니다. 첫째, 표본이 어려운 수정만 골라 구성됐습니다. 수정이 복잡한 여섯 개 취약점을 선택했는데 버그별 클린 수정률이 3%에서 60%까지 분포해 평균이 표본 구성에 크게 좌우되며, 여섯 개 표본 평균의 표준 오차가 약 9%p인데도 보고서는 이를 밝히지 않았습니다. 둘째, 데이터의 22%를 차지하는 두 프롬프트가 에이전트에게 의도적으로 잘못된 수정을 적용하라고 지시했습니다. 셋째, 데이터의 36%를 차지하는 평가 모드가 에이전트의 빌드와 코드 실행을 금지해, 패치를 테스트하고 결과를 반영할 수 있는 실험과 그렇지 않은 실험을 하나의 수치로 합쳤습니다. 넷째, 모델마다 reasoning 설정이 달랐는데 GPT-5.5는 medium, Opus 4.8은 high로 실행됐고, 둘 다 최고 설정에서 테스트되지 않았으며 effort를 높일 때의 효과도 측정되지 않았습니다.
보고서 자체 데이터가 보여주는 다른 결과
Trail of Bits는 보고서와 함께 공개된 패치와 테스트 결과를 재분석해, 에이전트가 코드를 실행할 수 있었고 잘못된 수정을 지시받지 않은 시행만 추렸습니다. 이 조건에서 1Password의 모델들이 생성한 3,067개 패치 중 2,634개(86%)가 제공된 exploit을 차단했습니다. upstream 수정을 참고한 것으로 분류된 실행은 제외했으며, exploit 차단이 완전한 수정을 의미하지는 않지만 합리적인 작업 조건에서의 유용한 패치 능력을 보여준다고 설명합니다.
지시와 채점 방식의 추가 문제
채점 체계도 여러 문제를 안고 있습니다. proof-of-concept exploit을 받은 에이전트는 그것을 막으면 멈추라는 지시를 받았는데, 채점자는 해당 exploit이 실행하지 않는 취약 경로까지 평가해 중단 규칙과 채점 기준이 어긋납니다. 또한 기존 테스트를 건드리지 말라는 지시 때문에 올바른 수정에 필요한 의도된 동작 변경이 회귀로 채점됐는데, ActiveMQ 판정의 8%가 이에 해당했습니다. 모델이 자기 패치를 채점한 결과는 인간 검토자와 전체 5개 범주 기준 65.9%만 일치했고(원 버그 수정 여부 87.7%, 신규 버그 도입 여부 70.5%), 두 모델 채점자가 같은 패치의 36.8%에 서로 다른 결과를 부여했습니다. Linux 레퍼런스 수정 자체에 off-by-one 취약점이 있었는데 이를 따라한 패치 248개 중 자동 채점자는 24개만 잡아냈고, Chromium 채점자는 콜백의 use-after-free를 남긴 패치들을 클린으로 통과시켰습니다.
인간 개발자의 기준선 — 이상적 조건에서도 8개 중 1개 실패
비교 기준으로 Trail of Bits는 2024~2026년 236건의 보안 평가에서 접수된 2,265개 취약점의 첫 수정을 분석했습니다. 개발자들은 자기 소프트웨어의 유지보수 담당자이자 상세 보고서를 받았고 패치가 검토될 것을 알고 있었음에도, 283개의 첫 수정(12.5%, 8개 중 1개)이 문제를 완전히 해결하지 못했습니다. 95% 신뢰구간은 10.5%~14.5%이며, 비공식 대화에서 수정돼 기록에 남지 않은 초기 실패가 있을 수 있어 실제 실패율은 더 높을 수 있다고 덧붙입니다.
Patch the Planet 실전 데이터와 freenginx 사례
2026년 9월 14일까지 병합 또는 종료된 186개 PR 중 메인테이너는 126개(67.7%)를 머지했고, 그중 91개(72.2%)는 보안 관련 수정 없이 원안대로 수용됐습니다. 머지되지 않고 닫힌 60개 중 기술적 근거로 명시적 거부된 것은 4개뿐이었습니다. 1Password 보고서가 비판한 freenginx 패치 사례에서는 에이전트가 작성한 수정이 취약 경로 하나를 남기고 정리 단계에서 새 크래시를 유발했는데, 흥미롭게도 별도 수정을 커밋한 메인테이너도 동일한 크래시를 만들어냈습니다. 인간과 에이전트가 같은 버그에서 같은 실수를 저지른 사례로, 신뢰성 비교에는 동등한 조건의 측정이 필요하다고 강조합니다. 머지 이후 약 33,500개 후속 커밋을 추적한 결과 기능 버그 최소 10건, 빌드·테스트·릴리스 자동화 버그 4건, 성능 버그 1건을 찾았으나 exploit 가능한 보안 취약점은 없었습니다.
새 에이전트 스킬과 유용한 벤치마크의 조건
post-patch-validation은 원 버그 재현, 동일 실패로 이어지는 다른 경로 테스트, 회귀·신규 취약점 검사, 깨진 테스트 실행을 불확정으로 처리하는 네 단계로 에이전트가 제출 전 불완전한 수정을 걸러내게 돕습니다. review-walkthrough는 브랜치 전체 diff를 논리적 순서로 설명하는 대화형 워크스루로 바꿔 리뷰어를 지원합니다. Trail of Bits는 유용한 패치 벤치마크가 연구 질문에 맞는 대표 표본을 쓰고, 도구·지시·reasoning 설정 등 작업 조건의 효과를 측정하며, 제공된 exploit 너머의 정확성을 검증 가능하게 만들고, 취약점별 분산을 보고하고, 에이전트 유무에 따른 개발자 비교를 측정해야 한다고 정리합니다.