GitHub - jiwoochris/artex-ko: ARTEX 한국어판 · AI 자율 침투 테스트 프레임워크 현지화 (upstream: Autumn-27/ARTEX, AGPL-3.0)
핵심 포인트
- 1ARTEX는 LLM 멀티 에이전트가 자율적으로 침투 테스트를 수행하는 오픈소스 시스템으로, 정찰부터 익스플로잇까지의 공격 과정을 Go 백엔드와 Next.js 프런트엔드로 구현하였습니다.
- 2이 시스템은 탐색 그래프와 자산 그래프의 이중 구조를 활용하며, planner의 공유 todolist를 통해 복잡한 다단계 공격 체인을 안정적이고 순차적으로 완주합니다.
- 3본 한국어판은 에이전트의 내부 추론 성능을 보존하면서도 사용자에게 노출되는 산출물을 한국어로 번역하고, 방어 및 탐지 가이드를 제공하여 보안 전문가의 대응 역량 강화를 돕습니다.
ARTEX(Autonomous Red Team Expert)는 LLM(Large Language Model)을 기반으로 한 멀티 에이전트 시스템으로, 정찰부터 취약점 탐색, 익스플로잇 실행 및 자료 반출까지의 전체 침투 테스트(Penetration Testing) 과정을 자율적으로 수행하는 도구입니다. 이 시스템은 Go 백엔드와 Next.js 프런트엔드로 구성되며, 침투 테스트의 효율성과 일관성을 극대화하기 위해 이중 그래프 구조와 에이전트 간 협업 기법을 채택하고 있습니다.
핵심 방법론 및 기술적 구조
1. 이중 그래프(Dual-Graph) 기반의 자산 및 탐색 관리
ARTEX는 침투 대상을 이해하고 테스트의 진행 상황을 추적하기 위해 두 가지 독립적인 그래프 모델을 운영합니다.
- 자산 그래프(Asset Graph): 전역적으로 공유되는 데이터 저장소로,
root_domain,subdomain,service,endpoint간의 관계를 관리하며 중복 제거를 통해 공격 대상의 '진실된 상태'를 유지합니다. - 탐색 그래프(Exploration Graph): 각 작업(task)별로 독립적으로 생성되는 사고의 흐름입니다.
goal(목표),intent(의도),fact(사실),finding(취약점),hint(힌트) 노드로 구성되며, 이 노드들은spawns,derived_from,yields,proves등의 간선으로 연결되어 공격 체인의 혈통을 추적합니다. - 이 두 그래프는
exploration_anchors를 통해 서로 연결되어, 특정 탐색 의도가 어떤 자산과 구체적으로 연관되는지를 양방향으로 참조할 수 있습니다.
2. 에이전트 역할 분담 및 엔진 순환 구조
시스템은 에이전트의 역할을 분리하여 자율성을 확보합니다.
- Planner: 탐색 그래프를 분석하여 목표를 달성하기 위한 의도를 생성합니다.
- Worker: Planner가 할당한 단일 의도를 바탕으로 실제 도구(Kali, Bash, HTTP 등)를 실행하고 결과를 그래프에 반영합니다.
- 엔진 루프: 그래프의 상태 변경 이벤트가 발생하면 Planner가 깨어나고, 새로운 의도를 생성(frontier 큐에 배정)하면 Worker가 이를 수행하여 다시 그래프를 갱신하는 폐곡선(Feedback Loop) 구조를 가집니다.
3. 고급 협업 기법: 과정 기반 정보 교환 및 공유 Todo 리스트
- 과정 단위 정보 교환: Worker들은
search_all_worker_traces(q)와 같은 함수를 통해 서로의 실행 과정(Trace)을 검색하고 재사용합니다. 이는 공식적인fact로 기록되지 않은 중간 단계의 관찰 결과까지 공유하여 중복 노동을 방지합니다. - 공유 Todo 리스트: Planner는 작업마다 지속되는 계획 목록을 보유합니다. 이를 통해 공격 체인의 단계적 의존성을 직렬로 관리하여, 선행 조건이 충족되었을 때만 다음 단계의 의도를 배정함으로써 병렬 실행 시 발생하는 혼선을 방지합니다.
보안 및 방어적 관점
본 프로젝트는 공격 도구이자 동시에 방어자의 교육용 자료로 설계되었습니다.- 방어 가이드: 시스템 아키텍처를 기반으로 공격 지문을 포착하고, SIEM(Security Information and Event Management)과 WAF(Web Application Firewall)에서 활용 가능한 탐지 시그니처 및 Sigma 규칙을 제공합니다.
- 법적 고지: 정보통신망법 및 개인정보보호법 준수를 강력히 권고하며, 허가받지 않은 시스템에 대한 공격 행위는 범죄임을 명시합니다.
- 언어적 설계: 내부 추론 프롬프트는 벤치마크 성능을 위해 원문(중국어)을 유지하되, 사용자 대면 인터페이스 및 리포트는 한국어로 출력되도록
langDirective를 통해 제어합니다.
이 시스템은 norma SDK를 활용하여 복잡한 공격 체인을 이벤트 구동 방식으로 안정적으로 완주하는 능력을 갖추고 있으며, 이를 통해 방어 측은 자율 AI 공격의 작동 원리를 파악하고 관련 하드닝 체크리스트를 수립할 수 있습니다.