← 최신 논문
🤖 machine learning

Agentic Vulnerability Reasoning on Windows COM Binaries

본 논문은 Windows COM 바이너리에서 레이스 컨디션 취약점을 자율적으로 발견하고 검증된 개념 증명 코드를 생성하는 엔드투엔드 에이전트 파이프라인인 SLYP 를 소개하며, 이는 기존 정적 분석 도구 및 코딩 에이전트보다 현저히 우수한 성능을 발휘하여 프로덕션 서비스에서 28 개의 미발견 취약점을 식별하고 14 만 달러의 보상을 획득했습니다.

원저자: Hwiwon Lee, Jongseong Kim, Lingming Zhang

게시일 2026-05-07
📖 4 분 읽기☕ 가벼운 읽기

원저자: Hwiwon Lee, Jongseong Kim, Lingming Zhang

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

거대한 고보안 은행 금고 (Windows 운영 체제) 를 상상해 보세요. 가장 민감한 작업들은 엘리트 초능력의 경비대 (COM 서비스) 가 처리합니다. 이 경비대원들은 건물 전체의 마스터 키를 가지고 있습니다. 하지만 함정이 하나 있습니다. 수백 명의 일반 직원 (인증된 사용자) 들이 경비대원들의 책상 앞에 다가가 작업을 요청할 수 있다는 점입니다.

문제는 두 명의 직원이 정확히 같은 시간에 경비대원에게 말을 걸려고 할 때, 경비대원들이 혼란에 빠질 수 있다는 것입니다. 경비대원들이 엄격한 '한 번에 한 명' 규칙을 따르지 않는다면, 키를 떨어뜨리거나 들고 있던 파일을 삭제하거나, 실수로 마스터 키를 잘못된 사람에게 건네줄 수 있습니다. 컴퓨터 용어로 이러한 현상을 **경쟁 조건 (race conditions)**이라고 하며, 이는 일반 사용자가 '초능력의 경비대' 권한을 탈취할 수 있게 해주는 권한 상승 (privilege escalation) 과정입니다.

문제: 결함 찾기

수년 동안 보안 전문가들은 두 가지 주요 방법을 사용하여 이러한 결함을 찾아냈습니다:

  1. "퍼저 (Fuzzer)" (망치): 금고 문을 향해 수천 개의 무작위 공을 던져 하나가 문을 부수는지 확인하는 것과 같습니다. 큰 구멍을 찾는 데는 좋지만, 두 사람이 정확히 같은 밀리초에 말을 건네는 미세하고 구체적인 타이밍 결함을 찾는 데는 매우 부적합합니다.
  2. "정적 분석기 (Static Analyzer)" (지도 읽는 사람): 이 도구는 잠재적 문제를 찾기 위해 금고의 설계도를 읽습니다. 하지만 이러한 Windows 서비스의 설계도는 종종 냅킨에 낙서처럼 그려져 있습니다 (레이블이 없는 컴파일된 코드). 따라서 지도 읽는 사람은 혼란을 겪고 실제 위험을 놓치며, 위험이 없음에도 "위험!"이라고 소리칩니다 (오경보).

해결책: Slyp (탐정 요원)

이 논문의 저자들은 Slyp라는 새로운 시스템을 구축했습니다. Slyp 를 망치나 지도 읽는 사람이 아니라, 특수 장비가 갖춰진 초지능 탐정 요원으로 생각하세요.

Slyp 는 지저분한 코드를 읽고 레이블이 없더라도 그 의미를 이해하는 데 매우 뛰어난 "두뇌"(대규모 언어 모델) 를 사용합니다. 하지만 두뇌만으로는 부족합니다. 증거를 만지기 위한 손이 필요합니다.

Slyp 의 세 가지 특수 도구:

  1. 이진 탐색기 (Binary Explorer) (손전등): 이 도구는 어둡고 지저분한 코드 안으로 빛을 비추어, 해괴한 문장을 읽을 수 있는 문장으로 번역하고 경비대원들이 방에 들어가기 위해 사용하는 "가상" 문이 무엇인지 파악합니다.
  2. COM 검사관 (COM Inspector) (신원증 스캐너): 이 도구는 공식 레지스트리를 확인하여 경비대원을 호출하는 정확한 방법, 그들의 이름, 그리고 그들이 가진 권한을 파악합니다. 모든 경비대원의 정확한 전화번호와 비밀 악수 코드를 가지고 있는 것과 같습니다.
  3. 동적 디버거 (Dynamic Debugger) (크래시 테스트 더미): 이것이 가장 중요한 도구입니다. 단순히 추측하는 대신, Slyp 는 작은 테스트 프로그램을 작성하여 실제 경비대원에게 실행하고 어떤 일이 일어나는지 관찰합니다. 경비대원이 넘어져 쓰러지면 (크래시 발생), Slyp 는 그 추락을 잡아내고 정확히 어떻게 발생했는지 기록하여 보고서를 작성합니다.

작동 원리: 탐정의 루프

Slyp 는 단순히 한 번 추측하지 않습니다. 루프 방식으로 작동합니다:

  1. 생각: 탐정 두뇌는 코드를 보고 "만약 두 사람이 동시에 파일을 요청하면 경비대원이 그것을 떨어뜨릴지도 모른다"고 말합니다.
  2. 행동: 도구를 사용하여 코드를 확인하고, 특정 "떨어뜨림" 지점을 찾아내며, 그것을 발생시키려고 시도하는 테스트 스크립트를 작성합니다.
  3. 관찰: 테스트를 실행합니다. 경비대원이 쓰러졌습니까?
    • 아니오? 탐정은 "좋아, 내 타이밍이 틀렸어. 약간 다른 스크립트로 다시 시도해 보자"고 말합니다.
    • 예? 탐정은 "잡았다!"라고 말하며 증거가 포함된 공식 보고서를 작성합니다.

결과: 기록을 깨는 사냥

이 논문은 Slyp 를 기존 최고의 도구들과 인간 전문가들과 비교하여 테스트했습니다:

  • 벤치마크 테스트: 20 개의 알려진 문제 지점으로 구성된 테스트 세트에서 Slyp 는 97.3% 의 정확도로 문제를 발견했습니다. 최고의 "지도 읽는 사람"(정적 분석기) 은 약 **30%**만 맞췄습니다. 최고의 "망치"(퍼저) 와 표준 코딩 봇들은 막히거나 대부분을 놓쳤습니다.
  • 실제 사냥: 저자들은 Slyp 를 실제 살아있는 Windows 서비스에 배포했습니다. Slyp 는 **28 개의 완전히 새로운, 이전에 보지 못한 취약점 (제로데이)**을 발견했습니다.
    • Microsoft 의 보안 팀은 이 28 개를 모두 확인했습니다.
    • 그들은 16 개의 공식 CVE(보안 경고 번호) 를 할당했습니다.
    • 저자들은 이러한 구멍을 찾아낸 공로로 140,000 달러의 보상을 받았습니다.

왜 이것이 중요한가

이 논문은 Slyp 가 "지저분한 코드 보기"에서 "작동하는 크래시를 통해 버그가 존재함을 증명"하는 것까지 인간 도움 없이 테스트 코드를 작성할 필요 없이 스스로 수행할 수 있는 최초의 시스템이라고 주장합니다.

어두운 방에서 헐거워진 마루판뿐만 아니라 그 판에 뛰어올라 그것이 부러짐을 증명하고, 증거로 부서진 조각을 건네줄 수 있는 탐정을 가진 것과 같습니다. 이는 이러한 까다로운 타이밍 기반 보안 구멍을 그 어느 때보다 훨씬 빠르고 신뢰성 있게 찾게 해줍니다.

간단히 말해: Slyp 는 Windows 소프트웨어의 숨겨진 타이밍 함정을 찾아내고, 그것을 부수어 위험함을 증명하며, 원래 소스 코드가 필요 없이 당국에 보고할 수 있는 특수 장비가 갖춰진 AI 탐정입니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →