대규모 환경에서의 바늘 찾기: Windows 취약점 연구를 위한 LLM 지원 대상 선정
요약
Windows 운영체제의 방대한 바이너리 중 취약점 분석 가치가 높은 함수를 선별하는 LLM 기반 파이프라인을 제안합니다. Symbolicate-Enrich-Sample 방식을 통해 수백만 개의 함수를 분석 가능한 수준의 우선순위 목록으로 압축합니다.
핵심 포인트
- Windows 전체 범위의 함수를 대상으로 하는 저비용 배치 파이프라인 제시
- 심볼 복구 및 구조적 특징을 활용한 함수 수준의 위험도 할당
- LLM을 사용하여 도달 가능성, 위험 수준, 버그 클래스 가설 생성
- 720만 개의 함수를 약 22,000개의 핵심 후보로 효율적으로 압축
현대 운영체제의 공격 표면(Attack surface)은 건초더미와 같습니다. 수천 개의 서명된 바이너리(Binaries)와 수백만 개의 함수가 존재하지만, 특정 취약점과 관련이 있는 것은 거의 없습니다. 인간 분석가나 LLM 에이전트는 분석을 수행하기 전에 읽을 가치가 있는 함수를 선택해야 합니다. 운영체제 전체 범위(Whole-OS scope)에서는 분석이 아닌, 바로 이 대상 선정(Target selection)이 병목 제약 조건(Binding constraint)이 됩니다. 본 논문에서는 프로덕션 Windows 바이너리 코퍼스(Corpus)를 쿼리가 가능하고 우선순위가 지정된 연구 대기열로 변환하는 저비용 배치 파이프라인인 Symbolicate-Enrich-Sample을 제시합니다. 우리는 (i) 공개 심볼 파일(Public symbol files)을 자동으로 가져오고 이를 복구된 호출 그래프(Call graph)와 결합함으로써, 심볼이 제거된(Stripped) 벤더 바이너리에 대해 함수 수준의 심볼을 복구합니다; (ii) 각 명명된 함수에 저렴하고 결정론적인 구조적 특징(Structural features)을 부착하고, 해당 특징들을 조건으로 하여 저비용 언어 모델(Language model)을 사용하여 도달 가능성 계층(Reachability tier), 위험 수준(Risk level), 버그 클래스 가설(Bug-class hypothesis) 및 근거(Rationale)를 할당합니다; (iii) 우선순위 가중 중요도 샘플러(Priority-weighted importance sampler)를 통해 다양하고 우선순위가 지정된 배치를 추출합니다. 본 연구의 기여는 선택 기질(Selection substrate), 즉 다운스트림 탐지기(Downstream detector)나 LLM 에이전트가 그 위에서 실행할 수 있는 우선순위 지정 계층을 제공하는 것입니다. 7,231,419개의 함수로 구성된 전체 Windows 이미지에 대해, 생성된 레이블은 현저하게 선택적이며, 여기에 결정론적 필터(Deterministic filters)를 중첩 적용하면 약 22,000개의 함수로 구성된 최종 후보 목록(Shortlist)이 남습니다. 이는 인간이나 에이전트가 처리할 수 있을 만큼 충분히 적은 양의 후보 바늘(Candidate needles)입니다. 우리는 파이프라인의 선택성과 실패 모드(Failure modes)를 규명하고, 방법론을 설명하며, 집계 통계를 보고합니다. 법적 및 이중 용도(Dual-use) 문제로 인해 파생된 데이터셋은 공개하지 않습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기