ProfMalPlus: 정적-동적 분석 시너지를 통한 에이전트 협업 기반 악성 NPM 패키지 탐지
요약
ProfMalPlus는 정적·동적 분석과 LLM 에이전트 협업을 결합하여 악성 NPM 패키지를 탐지하는 새로운 프레임워크를 제안합니다. 객체 민감형 동작 그래프와 다중 에이전트 추론을 통해 기존 탐지기보다 월등히 높은 성능을 입증했습니다.
핵심 포인트
- 정적·동적 분석과 LLM 에이전트의 협업을 통한 공급망 공격 탐지
- 객체 민감형 동작 그래프 및 코드 슬라이스 기반의 보안 분석
- 로컬 및 글로벌 심판 에이전트를 활용한 다단계 추론 구조
- 98.1%의 F1-score 달성 및 미확인 악성 패키지 597개 식별
오픈 소스 소프트웨어는 전이적 의존성(transitive dependencies), 특히 NPM 패키지에 주입된 악성 코드를 통한 공급망 공격(supply-chain attacks)에 취약합니다. 기존의 탐지기들은 난독화된 동작을 불충분하게 모델링하거나, JavaScript의 객체 중심(object-centric) 특징을 간과하며, 정적 분석(static analysis)과 동적 분석(dynamic analysis)의 협업이 미흡하고, 동작 추상화 과정에서 의미론적 정보(semantic information)를 손실하는 경우가 많습니다. 우리는 객체 민감형 동작 그래프(object-sensitive behavior graphs)와 주석이 달린 코드 슬라이스(code slices)에 대한 협업적 LLM 추론을 결합한 악성 NPM 패키지 탐지기인 ProfMalPlus를 제안합니다. 이 시스템은 설치 명령과 엔트리 파일(entry files)을 식별한 다음, 민감한 API, 제3자 호출(third-party calls), 그리고 해결되지 않은 호출(unresolved calls)을 포착하는 그래프를 구축합니다. 이러한 그래프로부터 ProfMalPlus는 보안 관련 슬라이스를 추출하고 인라인 정적 분석 증거를 추가합니다. 로컬 심판 에이전트(Local judge agents)는 각 슬라이스를 독립적으로 평가합니다. 자기 일관성(Self-consistency)은 반복된 판단을 통합하여 LLM의 분산(variance)을 줄이며, 글로벌 심판(global judge)은 이들의 보고서를 엔트리 수준의 판결로 합성합니다. 결정되지 않은 사례의 경우, 라우터(router)가 레지스트리 유래 모듈 및 메서드 의미론을 추가하는 제3자 보강(third-party enrichment) 또는 런타임 의존적 동작을 해결하기 위해 샌드박스(sandbox)에서 패키지를 실행하는 동적 증강(dynamic augmentation) 중 하나를 선택합니다. 보강된 증거는 재평가를 위해 다시 입력됩니다. 마지막으로, 로컬라이제이션 에이전트(localization agent)는 설명과 함께 악성 코드 스니펫을 보고합니다. ProfMalPlus는 98.1%의 F1-score를 달성하여 최신 탐지기들보다 3.5%에서 52.6% 더 높은 성능을 보였습니다. 또한 이 시스템은 이전에 알려지지 않았던 597개의 악성 패키지를 식별했으며, 이들은 모두 확인되어 NPM에서 제거되었습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기