An Automated Framework for Extracting Reachable Attack Chains from Cyber Threat Intelligence Reports
본 논문은 대규모 언어 모델을 활용하여 비정형 사이버 위협 인텔리전스 보고서로부터 전제 조건과 후속 조건을 포함한 구조화된 공격 단위를 추출하고, 이를 Datalog 규칙으로 컴파일함으로써 효과적인 도달 가능성 분석 및 다단계 공격 체인 추론을 가능하게 하는 자동화된 프레임워크를 제안한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
인터넷을 악당들이 끊임없이 건물에 몰래 침입하고, 열쇠를 훔치고, 문을 열려고 시도하는 거대하고 북적이는 도시라고 상상해 보십시오. 이를 막기 위해 보안 전문가들은 "사이버 위협 인텔리전스(Cyber Threat Intelligence)"라고 불리는 상세한 이야기들을 작성합니다. 이 이야기들은 해커가 어떻게 침입했는지를 정확하게 설명합니다: "먼저, 그들은 가짜 이메일을 보냈다. 그다음, 피해자가 링크를 클릭했다. 다음으로, 바이러스가 스스로 다운로드되었다." 이것은 마치 탐정의 사건 파일와 같습니다. 하지만 문제는 여기에 있습니다. 이 이야기들은 난잡한 인간의 언어로 작성됩니다. 이를 읽으려는 컴퓨터는 혼란에 빠집니다. 컴퓨터는 왜 단계 2가 일어났는지(단계 1이 먼저 끝나야 했기 때문)나, 단계 2 이후에 시스템에서 무엇이 변했는지(인과관계)를 쉽게 파악할 수 없습니다. 이는 마치 정렬되지 않은 레시피 카드 더미만을 가지고 작동하는 로봇을 만들려는 것과 같습니다. 재료는 알고 있지만, 그 순서나 인과관계는 모르는 상태인 것입니다.
이를 해결하기 위해, 연구자들은 그 난잡한 이야기들을 컴퓨터가 실제로 실행할 수 있는 엄격하고 논리적인 설계도로 바꾸는 방법이 필요합니다. 그들은 해커가 무엇을 했는지뿐만 아니라, 그 행동을 하기 위해 어떤 조건이 충실히 갖춰져야 했는지(전제 조건), 그리고 그 이후에 시스템이 어떤 새로운 상태가 되었는지(후속 조건)를 알아야 합니다. 이것을 보드게임처럼 생각해 보십시오. 주사위 눈이 맞아야(조건) 말을 새로운 칸으로 옮길 수 있고, 일단 이동하면 말은 이제 새로운 위치에 있게 됩니다(결과). 만약 여러분이 해커의 이야기를 완벽한 게임 규칙 세트로 번역할 수 있다면, 컴퓨터에게 "해커가 정문에서 금고까지 갈 수 있는가?"라고 물었을 때 확정적인 답변을 얻을 수 있습니다. 이것이 이 논문이 다루는 과제입니다: 모호한 스파이 이야기를 정밀하고 플레이 가능한 방어 게임으로 바꾸는 것입니다.
이 논문의 저자들은 이 퍼즐을 풀기 위해 영리하고 자동화된 프레임워크를 구축했습니다. 그들은 단순히 똑똑한 컴퓨터 프로그램(대규모 언어 모델, LLM)에게 "이야기를 읽고 규칙을 알려줘"라고 요청하는 것만으로는 잘 작동하지 않는다는 것을 깨달았습니다. 만약 한꺼번에 전체를 요청하면, 컴퓨터는 세부 사항을 틀리거나, 순서를 뒤섞거나, 실제로 존재하지 않는 단계를 지어내곤 합니다. 이는 마치 학생에게 한 호흡에 긴 에세이를 쓰라고 하는 것과 같아서, 논리를 놓칠 수 있기 때문입니다. 대신, 연구자들은 다단계 조립 라인을 설계했습니다.
먼저, 시스템은 세심한 편집자처럼 텍스트에서 "파일 다운로드"나 "방화벽 우회"와 같은 주요 "공격 동작"들을 추출합니다. 그다음, 시스템은 탐정처럼 그 동작이 왜 가능했는지, 그리고 그 다음에 어떤 일이 일어났는지를 설명하는 구체적인 단서들을 찾아냅니다. 하지만 여기서 마법 같은 일이 일 \어납니다. 이 시스템은 그 단서들을 난잡한 문장으로 남겨두지 않습니다. 대신 "컴퓨터가 인터넷에 연결되어 있다"라는 문장을 network.open이라는 특정 게임 토큰으로 번역하듯, 엄격하고 표준화된 코드로 강제 변환합니다. 이것이 중요한 이유는 컴퓨터가 이 "토큰"들이 완벽하게 일치하는지 확인할 수 있게 해주기 때문입니다. 만약 첫 번째 동작이 "문이 열림" 토큰을 남겼다면, 다음 동작은 반드시 "문이 열림" 토큰을 필요로 할 때만 일어날 수 있습니다.
이 시스템에는 "품질 관리" 단계도 있습니다. 시스템은 동작의 사슬이 시작부터 끝까지 실제로 연결되는지 확인하기 위해 시뮬레이션을 실행합니다. 만약 (예를 들어, 생성된 적이 없는 "비밀번호" 토큰을 필요로 하는 단계처럼) 끊어진 연결을 발견하면, 시스템은 멈춰서 수정하거나 최소한 오류를 표시합니다. 마지막으로, 이들은 검증된 모든 깨끗한 단계들을 컴퓨터가 즉시 실행하여 특정 공격 목표에 도달할 수 있는지 확인할 수 있는 논리적 규칙(Datalog라는 언어 사용)으로 컴파일합니다.
이 방법이 334개의 구체적인 단계를 포함한 20개의 실제 사이버 공격 보고서에 적용되었을 때, 결과는 인상적이었습니다. 그들의 방식은 공격 단계를 94.9% 정확하게 찾아내고 형식을 맞추었으며, 이는 약 80% 이하의 성과를 보인 기존의 다른 도구들을 능가하는 수치였습니다. 더 중요한 것은, 컴퓨터가 추출된 규칙들을 바탕으로 논리를 실행하도록 했을 때, 20개의 보고서 중 19개에서 해커의 목표에 도달하는 방법을 성공적으로 찾아냈다는 점입니다. 이는 그들의 "조립 라인" 접근 방식이, 단순히 똑똑한 AI에게 전체를 추측하게 하는 것보다 난잡한 인간의 이야기를 깨끗하고 플레이 가능한 게임 규칙으로 바꾸는 데 훨씬 더 뛰어나다는 것을 증명합니다. 그들은 단순히 단계를 찾아낸 것이 아니라, 컴퓨터가 공격의 논리를 실제로 이해할 수 있도록 하는 가교를 건설하여, 정적인 이야기를 역동적인 위험의 지도로 탈바꿈시킨 것입니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.