An End-to-End Framework for Functionality-Embedded Provenance Graph Construction and Threat Interpretation
이 논문은 대규모 언어 모델 (LLM) 을 활용하여 이질적이고 진화하는 로그로부터 자동으로 기능 정보가 내재된 프로베넌스 그래프를 구축하고, 이를 통해 이상 탐지 성능을 향상시키며 공격을 해석 가능한 자연어 요약으로 제공하는 'Auto-Prov'라는 종단 간 프레임워크를 제안합니다.
컴퓨터 시스템은 거대한 도서관과 같습니다. 여기서 일어나는 모든 일 (파일 열기, 프로그램 실행, 인터넷 접속 등) 은 도서관의 **장부 (로그)**에 기록됩니다. 하지만 이 장부는 너무 방대하고, 언어도 제각각이며, 중요한 정보가 숨겨져 있어 사람이 직접 읽기엔 너무 어렵습니다.
기존의 보안 시스템은 이 장부를 분석할 때 매뉴얼을 외운 경직된 로봇처럼 행동했습니다. "A 라는 글자가 나오면 B 를 찾아라"라는 규칙을 사람이 일일이 정해줘야 했습니다. 하지만 해커는 규칙을 살짝 바꾸기만 해도 로봇은 당황해서 아무것도 못 찾았습니다.
Auto-Prov는 이 문제를 해결하기 위해 **AI(거대 언어 모델, LLM)**를 영입한 초능력의 미스터리 해결사입니다.
🚀 Auto-Prov 가 하는 일 3 가지
1. 규칙 없는 장부를 자동으로 정리하기 (자동화)
기존 방식: 도서관 사서가 "이 장부는 A 형식, 저 장부는 B 형식"이라고 일일이 손으로 분류하고 규칙을 정해야 했습니다. 장부 형식이 조금만 바뀌어도 모든 규칙을 다시 짜야 해서 매우 힘들었습니다.
Auto-Prov 방식: AI 가 장부들을 쓱쓱 훑어보며 "아, 이거랑 저거는 비슷한 패턴이네!"라고 스스로 분류합니다. 그리고 "이런 패턴이 나오면 저렇게 해석하면 돼"라는 규칙을 스스로 만들어냅니다. 새로운 장부 형식이 나오더라도 AI 가 바로 적응해서 규칙을 새로 짜냅니다.
2. 사건의 '맥락'과 '의도'를 파악하기 (기능적 문맥)
기존 방식: AI 는 "이 파일이 실행됐다"는 사실만 알았습니다. 하지만 그 파일이 '악성 바이러스'인지, 아니면 '정상적인 업데이트'인지 구분하기 어려웠습니다. 마치 "사람이 칼을 들었다"는 사실만 보고 "살인범인가?"라고 판단하려는 것과 비슷합니다.
Auto-Prov 방식: AI 는 그 파일이 무엇을 하는 도구인지까지 추론합니다. "아, 이 파일은 '문서 편집기' 역할을 하는구나"라고 라벨을 붙입니다. 그래야 "문서 편집기가 갑자기 시스템 파일을 건드리면 의심스럽지만, 시스템 관리자가 건드리면 정상일 수 있다"는 식으로 맥락을 이해하게 됩니다.
3. 복잡한 사건을 쉬운 보고서로 요약하기 (해석)
기존 방식: 해킹이 발견되면, 보안 담당자에게 수천 줄의 복잡한 데이터 그래프가 날아옵니다. "누가, 언제, 어디서, 무엇을 했다"는 데이터만 나열되어 있어, 사람이 무슨 일이 일어났는지 파악하는 데 며칠이 걸릴 수도 있습니다.
Auto-Prov 방식: AI 는 이 복잡한 데이터를 보고 **"해커가 A 라는 방법으로 침입해서, B 를 훔치고, C 를 통해 탈출했습니다"**라고 **자연어 (사람 말)**로 요약된 보고서를 써줍니다. 마치 형사가 수사 결과를 "범인은 밤 10 시에 후문으로 들어와 금고 열쇠를 훔쳤습니다"라고 설명하는 것과 같습니다.
🌟 왜 이것이 중요한가요?
변화에 강합니다: 해커가 새로운 방법을 쓰거나 컴퓨터 시스템이 업데이트되어 장부 형식이 바뀌어도, Auto-Prov 는 스스로 규칙을 찾아내어 멈추지 않습니다.
정확도가 높아집니다: 단순히 "이게 이상해"라고만 하는 게 아니라, "이 파일은 문서 편집기인데 이상한 행동을 했어"라고 기능까지 이해하므로, 진짜 해킹을 더 잘 찾아냅니다.
사람을 도와줍니다: 보안 전문가들이 복잡한 데이터를 보며 지치지 않고, AI 가 써준 쉬운 보고서만 보고도 "아, 해커가 이런 의도를 가졌구나"라고 빠르게 대응할 수 있습니다.
💡 결론
Auto-Prov 는 **"컴퓨터의 모든 기록을 스스로 읽고, 해커의 행동을 맥락으로 이해하며, 인간에게 쉬운 언어로 설명해주는 똑똑한 보안 파트너"**입니다. 이 기술은 앞으로 더 복잡해지고 빠르게 변하는 사이버 공격을 막는 데 큰 역할을 할 것입니다.
1. 문제 정의 (Problem Statement)
기존의 프로벤스 (Provenance, 출처) 그래프 기반 이상 탐지 시스템은 다음과 같은 세 가지 주요 한계를 가지고 있습니다.
수동 규칙의 비확장성 (Scalability & Maintenance):
이질적이고 진화하는 시스템 로그에서 프로벤스 그래프를 구축하기 위해 수동으로 설계된 정규식 (Regex) 규칙에 의존합니다.
로그 포맷이 조금만 변경되어도 규칙이 무효화되어 지속적인 수동 재설계가 필요하며, 이는 비용이 많이 들고 확장성이 떨어집니다.
기능적 문맥 (Functional Context) 의 부재:
기존 탐지기는 엔티티 (프로세스, 파일 등) 의 이름 임베딩이나 단순 행동 통계 (빈도 등) 만을 사용합니다.
이는 "무엇 (What)"과 "어떻게 (How)"는 설명할 수 있지만, 엔티티가 "왜 (Why)" 그런 행동을 하는지 (예: 문서 편집기 vs 서비스 호스트) 에 대한 기능적 맥락을 제공하지 못합니다. 이로 인해 정상 행위와 악성 행위가 유사한 패턴을 보일 때 탐지 성능이 저하됩니다.
분석가 지원의 부족:
탐지된 경고는 복잡하고 방대한 공격 그래프 형태로 제공되어 분석가가 해석하기 어렵습니다. 자연어 요약이나 공격자의 의도 (APT 전술) 에 대한 설명이 부족합니다.
2. 제안 방법론: Auto-Prov (Methodology)
저자들은 Auto-Prov라는 적응형 엔드 - 투 - 엔드 (End-to-End) 프레임워크를 제안합니다. 이 프레임워크는 대규모 언어 모델 (LLM) 을 활용하여 로그에서 기능적 문맥이 포함된 프로벤스 그래프를 자동 구축하고, 이를 기반으로 이상 탐지 및 공격 해석을 수행합니다.
핵심 구성 요소 및 워크플로우
로그 타입 자동 발견 및 클러스터링 (Automatic Log Discovery):
스트리밍 로그를 구조적 유사성에 따라 클러스터링하여 새로운 로그 타입을 자동으로 발견합니다.
GFP (Greedy Farthest Point) 샘플링과 DBStream 클러스터링 알고리즘을 사용하여 중복을 줄이고 다양한 포맷을 대표하는 소수의 샘플 로그를 선별합니다.
후보 프로벤스 추출기 (Candidate Provenance Extractor, CPE):
선별된 대표 로그 샘플에 강력한 LLM (예: GPT-4o) 을 적용하여 엔티티, 상호작용 유형, 방향, 타임스탬프 등을 추출합니다.
이 과정은 제로샷 (Zero-shot) 방식으로 수행되며, 로그의 비정형적 구조를 추론하여 관계성을 파악합니다.
규칙 생성기 (Rule Generator):
CPE 의 추출 결과를 바탕으로, 경량 오픈소스 LLM (예: LLaMA-3) 이 정규식 (Regex) 규칙을 자동 생성합니다.
생성된 규칙은 대량의 스트리밍 로그에 적용되어 확장 가능한 프로벤스 그래프를 구축합니다.
노드 풍부화 (Node Enricher) 및 기능적 문맥 임베딩:
기능적 라벨 추론: 엔티티 이름 (예: outlook.exe) 을 LLM 에게 입력하여 그 기능 (예: '문서 편집기') 을 추론합니다.
미확인 엔티티 처리: LLM 이 모르는 새로운 엔티티의 경우, 행동 기반 분류기 (Behavioral Classifier) 를 사용합니다. 이는 알려진 엔티티와의 1-홉 상호작용 패턴 유사도를 기반으로 기능을 추정합니다.
이렇게 추론된 기능적 라벨은 그래프 노드의 속성으로 임베딩되어 탐지기에 전달됩니다.
이상 탐지 및 그래프 어시스턴트 (Anomaly Detection & Graph Assistant):
기능적 문맥이 포함된 그래프를 기존 탐지기 (Flash, MAGIC, OCR-APT, Kairos 등) 에 입력하여 이상을 탐지합니다.
Graph Assistant: 탐지된 공격 그래프를 자연어 요약으로 변환하고, MITRE ATT&CK 전술과 매핑하여 분석가의 조사를 지원합니다. 이 과정에서 미확인 엔티티의 기능적 라벨을 컨텍스트로 제공하여 추론의 정확도를 높입니다.
3. 주요 기여 (Key Contributions)
적응형 엔드 - 투 - 엔드 프레임워크: 수동 규칙 없이 이질적이고 진화하는 로그에서 기능적 문맥이 포함된 프로벤스 그래프를 자동 구축합니다.
LLM 기반 확장성: LLM 을 활용하여 로그 타입을 발견하고 추출 규칙을 생성함으로써, 고밀도 로그 스트리밍 환경에서도 확장 가능하게 설계되었습니다.
기능적 문맥 표현 (Functional Context Representation): 알려진 엔티티는 LLM 추론을, 미확인 엔티티는 행동 기반 추정을 결합하여 노드 기능 라벨을 생성하는 새로운 방식을 제안했습니다.
공격 요약 및 해석: 탐지된 그래프를 자연어 요약과 APT 전술 매핑으로 변환하여 분석가 중심의 해석을 가능하게 했습니다.
4. 실험 결과 (Results)
저자들은 THEIA (DARPA E3) 와 ATLAS (Windows, Firefox, DNS 등 다양한 플랫폼) 데이터셋을 사용하여 4 가지 최신 탐지기에 대해 실험을 수행했습니다.
탐지 성능 향상:
Auto-Prov 는 모든 평가된 탐지기에서 일관되게 성능을 향상시켰습니다.
THEIA 데이터셋에서 평균 AUC-ROC 가 0.23, ATLAS 에서 0.15만큼 개선되었습니다.
ADP (Attack Detection Precision, 공격 수준 탐지 정밀도) 가 크게 향상되어, 은밀한 공격이나 소수의 이상 노드로만 나타나는 공격도 놓치지 않고 탐지함을 입증했습니다.
기능적 문맥의 효과:
기능적 라벨이 포함된 그래프는 기존 행동 통계 기반 그래프보다 정상과 악성 행위의 분리를 명확히 했습니다.
특히 OCR-APT 와 같은 탐지기에서 기능적 문맥이 탐지 성능을 크게 높였습니다.
구성 요소 분석 (Ablation Study):
로그 클러스터링: DBStream 과 RoBERTa 임베딩이 로그 타입 발견에 가장 효과적이었습니다.
LLM 선택: 후보 추출기에는 GPT-4o가, 규칙 생성기와 기능 추론에는 LLaMA-3가 가장 안정적이고 포괄적인 결과를 보여주었습니다.
미확인 엔티티 처리: 행동 기반 분류기가 LLM 이 모르는 엔티티의 기능을 성공적으로 추정하여 탐지 성능을 유지시켰습니다.
어시스턴트 평가:
생성된 공격 요약과 전술 매핑은 MITRE ATT&CK 기준과 높은 일치도 (αTC) 를 보였습니다.
엔티티 이름을 변조 (Poisoning) 하는 공격에도 기능적 추론을 통해 강건하게 대응하여 요약의 안정성을 입증했습니다.
5. 의의 및 결론 (Significance)
이 논문은 프로벤스 그래프 기반 이상 탐지 시스템의 실용성을 크게 높였습니다.
자동화 및 적응성: 수동 규칙 유지보수의 부담을 제거하고, 새로운 로그 포맷이나 시스템 진화에 자동으로 적응할 수 있는 체계를 제시했습니다.
해석 가능성 (Interpretability): 단순히 "이상"을 탐지하는 것을 넘어, "왜" 이상인지에 대한 기능적 맥락과 자연어 기반의 공격 시나리오를 제공하여 보안 분석가의 대응 속도를 높입니다.
실무 적용 가능성: 다양한 플랫폼과 로그 포맷에서 일관된 성능을 보이며, 실제 운영 환경 (Real-world deployment) 에서의 적용 가능성을 입증했습니다.
결론적으로, Auto-Prov는 LLM 의 추론 능력을 시스템 로그 분석에 효과적으로 통합하여, 차세대 지능형 지속 위협 (APT) 탐지 및 대응 시스템의 핵심 기술로 자리매김할 수 있는 중요한 진전을 이루었습니다.