Mastermind: Strategy-grounded Learning for Repository-Scale Vulnerability Reproduction
이 논문은 플래너가 고수준의 전략을 학습하고 전이하도록 훈련함으로써 저장소 규모의 취약점 재현을 개선하는 이중 루프 프레임워크인 Mastermind를 소개하며, 이는 CyberGym에서 84.5%의 통과율을 달성하고 여러 고정된 LLM 실행기(executor)에 걸쳐 기존 베이스라인들을 유의미하게 능가한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
거대한 기계(마치 거대한 코드 도서관 같은) 속에 숨겨진 매우 구체적인 결함을 찾아내려 한다고 상상해 보십시오. 그 결함이 존재한다는 것을 증명하려면, 기계를 특정 방식으로 충돌하게 만들 수 있도록 자물쇠에 완벽하게 들어맞는 아주 작고 맞춤 제작된 열쇠(즉, "개념 증명" 또는 "PoC")를 만들어야 합니다. 만약 그렇게 할 수 있다면, 당신은 취약점을 찾아낸 것입니다.
이 논문은 문제가 "일꾼"(AI)이 열쇠를 만들거나 돌리는 데 서툴다는 것이 아니라고 주장합니다. 문제는 일꾼이 계속해서 잘못된 열쇠를 시도하거나 잘못된 방을 뒤지고 있다는 점입니다. 그들은 행동하는 데는 효율적이지만, 계획을 세우는 데는 형편없습니다.
다음은 이 논문의 해결책인 Mastermind가 간단한 비유를 통해 어떻게 작동하는지 설명하는 내용입니다.
문제: "바쁘지만 길을 잃은" 일꾼
매우 숙련된 정비사(AI 실행기/Executor)를 상상해 보십시오. 그는 어떤 도구든 사용할 수 있고, 어떤 문이든 열 수 있으며, 어떤 엔진이든 고칠 수 있습니다. 하지만 만약 당신이 그에게 "고장 난 부품을 찾아라"라고 말한다면, 그는 엔진 블록을 놓친 채 라디오, 타이어, 좌석 등을 확인하며 몇 시간을 허비할 수도 있습니다.
최근의 AI 에이전트들은 바로 이런 정비사와 같습니다. 그들은 지시를 완벽하게 따를 수는 있지만, 어디를 먼저 살펴봐야 할지에 대한 좋은 전략이 없기 때문에 엉뚱한 곳에서 시간을 낭비하곤 합니다.
해결책: Mastermind (장군과 서기)
Mastermind는 생각하는 것과 행동하는 것을 분리하여 직무를 두 가지 역할로 나눕니다.
- 장군 (설계자/Planner): 이 부분은 학습을 담당합니다. 도구나 기계에는 손을 대지 않습니다. 이의 유일한 임무는 *"엔진실로 가서 연료 라인을 확인하고, 밸브를 시계 방향으로 돌려보시오"*와 같이 짧고 명확한 지도(즉, "전략")를 작성하는 것입니다.
- 서기/일꾼 (실행기/Executor): 이것은 실제로 작업을 수행하는 고정된 AI(예: GPT-5.5)입니다. 이 모델은 변경되거나 재학습되지 않으며, 단지 장군이 작성한 지도를 읽고 명령을 수행할 뿐입니다.
Mastermind가 학습하는 법: "이중 루프" 시스템
논문은 장군이 더 나은 지도를 작성할 수 있도록 만드는 영리한 두 부분의 학습 시스템을 소개합니다.
루프 1: "노트" (경험 루프)
장군이 이 특정 기계를 위한 전용 노트를 가지고 있다고 상상해 보십시오. 만약 장군이 "연료 라인을 확인하라"고 지시했는데 일꾼이 아무것도 발견하지 못했다면, 장군은 노트에 다음과 같이 적습니다. "연료 라인은 정상임; 다시 확인하지 말 것." 이 노트는 일시적이며 현재 작업에 특화되어 있습니다. 이는 장군이 이번 기계에 대한 다음 시도에서 똑같은 실수를 반복하지 않도록 도와줍니다.루프 2: "두뇌 훈련" (정책 루프)
이 단계는 장군이 실제로 똑똑해지는 과정입니다. 수많은 시도와 수많은 기계를 거친 후, 장군은 자신의 노트를 살펴보며 스스로에게 묻습니다. "내가 '연료 라인을 확인하라'고 했을 때 보통 효과가 있었나? '타이어를 확인하라'고 했을 때 보통 실패했나?"
시스템은 보상 체계(마치 비디오 게임의 점수처럼)를 사용하여 장군에게 알려줍니다: "잘했어, 그 전략이 충돌을 일으켰어!" 또는 "안 좋았어, 그건 시간 낭비였어." 장군은 자신의 내부 두뇌(가중치)를 업데이트하여 결함을 찾는 방법에 대한 일반적인 규칙을 학습하며, 이를 통해 한 번도 본 적 없는 새로운 기계에서도 능력을 발휘할 수 있게 됩니다.
이것이 왜 중요한가
이 논문은 수백 개의 실제 코드 취약점을 가진 CyberGym이라는 벤치마크에서 테스트를 진행했습니다.
- Mastermind 없이: 단순히 AI가 무작위 추측을 하거나(또는 8개의 무작위 추측을 동시에 시도하더라도), 약 **63%**의 문제를 해결합니다.
- Mastermind와 함께: AI가 더 나은 계획을 세우도록 가르침으로써, 동일한 기반의 AI 일꾼을 사용하여 **84.5%**의 문제를 해결했습니다.
핵심 요점
이 논문은 복잡한 소프트웨어 작업에서는 순수한 힘보다 전략이 더 중요하다고 주장합니다.
이것은 보물 찾기와 같습니다. 당신은 가장 강하고 빠른 달리기 선수(AI 실행기)를 가질 수 있지만, 만약 그에게 좋은 지도(전략)가 없다면 그는 제자리에서 뱅뱅 돌 뿐일 것입니다. Mastermind는 AI가 더 나은 지도를 그리는 법을 가르칩니다. 일단 AI가 좋은 지도를 그리는 법을 배우면, 그 지도를 어떤 달리기 선수(심지어 더 작거나 다른 AI라도)에게 주더라도 그들은 모두 훨씬 더 잘 보물을 찾아낼 것입니다.
요약하자면: Mastermind는 AI가 손을 움직이는 능력을 강화하는 것이 아니라, AI가 어디로 손을 움직여야 할지 결정하는 지능을 높이는 것입니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.