![[심층분석] AI가 모의해킹을 자동으로 수행하는 시대 — PentAGI가 보여주는 보안 테스트의 미래](/newsimg/e9FjXj5XhS4jqYLO.png)
보안 전문가의 도구 상자에 AI가 들어왔다
모의침투테스트(Penetration Testing)는 사이버 보안에서 가장 고난이도 업무 중 하나입니다. 숙련된 보안 전문가가 공격자의 관점에서 시스템의 취약점을 찾아내는 작업인데, 한 번의 테스트에 수일에서 수주가 소요되고, 전문 인력의 단가도 매우 높습니다. 글로벌 사이버 보안 인력 부족이 400만 명에 달한다는 ISC² 보고서를 고려하면, 모의해킹을 수행할 수 있는 전문가를 구하는 것 자체가 많은 조직에 난제입니다.
이런 배경에서 vxcontrol이 공개한 PentAGI(Penetration testing Artificial General Intelligence)는 주목할 만합니다. AI 에이전트가 모의침투테스트의 전 과정을 자율적으로 계획하고 실행하는 오픈소스 시스템으로, 단순히 취약점 스캐닝을 자동화하는 기존 도구와는 근본적으로 다른 접근법을 취합니다. 이 프로젝트가 보안 업계에서 회자되는 이유는 단순합니다. "AI가 보안 전문가의 사고 과정까지 모방할 수 있는가"라는 질문에 대해, 실제 동작하는 프로토타입으로 답을 내놓았기 때문입니다.
PentAGI의 핵심 — 자율형 AI 에이전트 아키텍처
왜 "에이전트"인가
기존의 보안 자동화 도구는 대부분 스크립트 기반 파이프라인으로 동작합니다. 사전에 정의된 순서대로 nmap으로 포트를 스캔하고, nikto로 웹 취약점을 검사하고, sqlmap으로 SQL 인젝션을 시도하는 식입니다. 이 방식의 한계는 명확합니다. 실제 모의해킹에서 전문가는 한 단계의 결과를 보고 다음 행동을 결정합니다. 포트 스캔에서 특이한 서비스가 발견되면 해당 서비스에 특화된 공격 벡터를 탐색하고, 웹 애플리케이션의 응답 패턴을 보면서 방화벽 우회 전략을 수정합니다. 이런 적응적 의사결정은 정적 스크립트로는 구현할 수 없습니다.
PentAGI는 LLM(Large Language Model) 기반의 AI 에이전트가 이 의사결정 과정을 수행합니다. 에이전트는 현재 상태를 평가하고, 다음에 수행할 작업을 스스로 계획하며, 결과를 해석해 전략을 수정합니다. 이것이 단순 자동화와 자율형 시스템의 결정적 차이입니다.
아키텍처 구성 요소
PentAGI의 아키텍처는 크게 네 가지 레이어로 구성됩니다.
1. 샌드박스 실행 환경 (Docker 기반 격리)
모의해킹 도구를 실행하는 것은 본질적으로 위험한 작업입니다. PentAGI는 모든 작업을 Docker 컨테이너 내부에서 수행합니다. 이는 단순한 편의가 아닌 안전 장치입니다. AI 에이전트가 예상치 못한 명령을 실행하더라도 호스트 시스템에 영향을 주지 않으며, 테스트 대상이 아닌 네트워크로의 접근도 차단할 수 있습니다. 공격 도구를 자율적으로 실행하는 시스템에서 격리 환경은 선택이 아닌 필수입니다.
2. 전문 도구 통합 레이어
nmap, metasploit, sqlmap, gobuster, hydra 등 20개 이상의 전문 보안 도구가 내장되어 있습니다. 중요한 것은 이 도구들이 단순히 설치되어 있는 것이 아니라, AI 에이전트가 각 도구의 용도와 사용법을 이해하고 적절한 상황에서 선택적으로 호출한다는 점입니다. 예를 들어, 웹 서버가 발견되면 에이전트는 gobuster로 디렉토리 탐색을 시도하고, 로그인 페이지가 있으면 hydra로 브루트포스를 시도하며, 데이터베이스가 노출되어 있으면 sqlmap을 동원합니다.
3. 지능형 메모리 시스템
이 부분이 PentAGI의 가장 혁신적인 설계입니다. 두 가지 메모리 시스템이 함께 동작합니다.
- 장기 메모리(Long-term Memory): 이전 테스트에서 성공한 접근법과 연구 결과를 저장합니다. 유사한 환경을 다시 만났을 때 처음부터 탐색하지 않고 효과적이었던 전략을 재활용할 수 있습니다.
- 지식 그래프(Knowledge Graph): Neo4j와 Graphiti를 활용한 지식 그래프는 발견한 정보 간의 의미적 관계를 추적합니다. 단순히 "포트 22가 열려 있다"는 사실을 저장하는 것이 아니라, "이 SSH 서버는 취약한 버전을 사용하고 있고, 이전에 발견한 사용자 계정과 연결될 수 있다"는 식의 관계를 구성합니다.
- GitHub Copilot for Security: 보안 분석가의 질의에 대한 응답을 생성하는 보조 도구입니다. 자율적 행동은 하지 않습니다.
- Google Sec-Gemini: 위협 인텔리전스 분석에 초점을 맞춘 AI로, 역시 분석 보조 역할입니다.
- HackerAI: 소스 코드의 취약점을 분석하는 정적 분석 도구로, PentAGI처럼 실제 시스템을 대상으로 동적 테스트를 수행하지는 않습니다.
- LLM API 비용: PentAGI는 외부 LLM API를 사용합니다. 복잡한 테스트는 수십에서 수백 번의 API 호출이 필요할 수 있어, OpenAI나 Anthropic API 비용이 상당할 수 있습니다.
.env.example파일을 통해 다양한 LLM 프로바이더를 설정할 수 있으므로, 비용 대비 성능을 비교해 볼 필요가 있습니다. - 오탐과 미탐의 균형: AI 에이전트가 생성하는 결과에는 반드시 오탐(false positive)이 포함됩니다. 전문가의 검증 없이 결과를 그대로 신뢰하는 것은 위험합니다. PentAGI는 보안 전문가를 대체하는 것이 아니라 증강하는 도구로 봐야 합니다.
- 법적 준수: Docker 기반 격리 환경을 사용하더라도, 테스트 대상 시스템의 소유자로부터 서면 허가를 반드시 받아야 합니다. 한국의 경우 개인정보보호법도 함께 고려해야 합니다.
이런 메모리 아키텍처는 인간 보안 전문가가 경험을 통해 직감을 쌓아가는 과정을 시스템적으로 모방합니다.
4. 외부 인텔리전스 수집
보안 테스트에서 최신 취약점 정보는 생명선입니다. PentAGI는 내장 브라우저(scraper), Tavily, Perplexity, DuckDuckGo, Google Custom Search, Sploitus(익스플로잇 전문 검색엔진) 등 다양한 외부 검색 시스템과 연동됩니다. 에이전트가 특정 소프트웨어 버전을 발견하면 자동으로 해당 버전의 알려진 취약점(CVE)을 검색하고, 공개된 익스플로잇 코드가 있는지 확인합니다.
동작 흐름 — 실제로 어떻게 테스트가 진행되는가
구체적인 시나리오로 설명하겠습니다. 보안 담당자가 PentAGI에 "192.168.1.100 서버의 보안 취약점을 찾아달라"고 요청한다고 가정합니다.
1. 정찰 단계: 에이전트는 먼저 nmap을 사용해 포트 스캔을 수행합니다. TCP/UDP 포트 상태, 서비스 버전, OS 핑거프린팅 결과를 분석합니다.
2. 전략 수립: 스캔 결과를 바탕으로 공격 벡터를 우선순위화합니다. 예를 들어, Apache 2.4.49가 발견되면 path traversal 취약점(CVE-2021-41773)을 즉시 시도 대상으로 분류합니다.
3. 취약점 검증: 각 벡터에 대해 적절한 도구를 선택하여 실제 익스플로잇을 시도합니다. 실패하면 다른 접근법으로 전환합니다.
4. 후속 확장: 초기 접근에 성공하면, 내부 네트워크 탐색이나 권한 상승 시도로 확장합니다.
5. 보고: 발견된 취약점, 사용된 기법, 재현 방법을 정리합니다.
이 전체 과정에서 인간의 개입은 최소화되지만, 선택적 실행 모니터링 기능을 통해 각 단계를 감시하고 필요시 개입할 수 있습니다.
기존 보안 자동화 도구와 무엇이 다른가
전통적 취약점 스캐너와의 차이
Nessus, OpenVAS, Qualys 같은 전통적 취약점 스캐너는 알려진 취약점의 시그니처를 대조하는 방식으로 동작합니다. 이들은 매우 효율적이고 오탐률이 관리 가능한 수준이지만, 근본적 한계가 있습니다. 시그니처에 없는 취약점은 찾지 못하고, 여러 취약점을 연결해 공격 체인을 구성하는 다단계 공격은 탐지 범위 밖입니다. 실제 침해 사고의 상당수는 단일 취약점이 아닌 여러 약점의 조합으로 발생합니다.
PentAGI는 시그니처 매칭이 아닌 추론 기반 접근을 취합니다. 에이전트가 시스템의 응답 패턴을 관찰하고, 비정상적인 동작을 발견하면 이를 기반으로 새로운 테스트를 생성합니다. 이것은 인간 전문가의 방식과 훨씬 유사합니다.
BAS(Breach and Attack Simulation) 도구와의 비교
AttackIQ, SafeBreach 같은 BAS 플랫폼은 MITRE ATT&CK 프레임워크의 기법들을 자동으로 실행해 방어 체계를 검증합니다. 그러나 이들은 사전 정의된 공격 시나리오를 재현하는 것이지, 새로운 공격 경로를 발견하는 것은 아닙니다. PentAGI는 사전 정의된 시나리오 없이 상황에 맞는 공격 전략을 자율적으로 수립한다는 점에서 차별화됩니다.
다른 AI 기반 보안 도구와의 포지셔닝
최근 AI를 활용한 보안 도구들이 빠르게 등장하고 있습니다.
PentAGI의 독특한 위치는 분석이나 보조가 아닌, 실제 공격 실행을 자율적으로 수행한다는 점입니다. 이것은 기술적으로 한 단계 높은 수준이며, 동시에 윤리적·법적으로 더 많은 고려가 필요한 영역이기도 합니다.
기술적으로 파고들기 — 무엇이 이 시스템을 가능하게 하는가
LLM 에이전트와 도구 호출의 결합
PentAGI의 백엔드는 Go로 구현되어 있으며, LLM의 함수 호출(function calling) 기능을 적극 활용합니다. 에이전트가 사용할 수 있는 각 보안 도구는 함수 시그니처로 정의되어 있고, LLM이 상황에 맞는 도구와 파라미터를 선택합니다.
이 방식의 핵심 이점은 확장성입니다. 새로운 보안 도구를 추가하려면 해당 도구의 인터페이스를 함수로 정의하고 등록하기만 하면 됩니다. LLM이 도구의 설명을 이해하고 적절한 시점에 호출합니다. 프로젝트에 포함된 ftester는 이런 함수 통합을 테스트하기 위한 전용 도구입니다.
Graphiti 기반 지식 그래프의 역할
docker-compose-graphiti.yml 파일의 존재가 보여주듯, PentAGI는 Neo4j 그래프 데이터베이스를 활용한 지식 그래프를 선택적으로 사용할 수 있습니다. Graphiti는 시간에 따른 지식의 변화를 추적하는 프레임워크로, 보안 테스트에서 이것이 중요한 이유가 있습니다.
모의해킹은 본질적으로 정보를 점진적으로 축적하는 과정입니다. 처음에는 IP 주소 하나만 알고 있지만, 포트 스캔을 통해 서비스 목록을 얻고, 각 서비스에서 버전 정보를 수집하고, 사용자 계정을 발견하고, 이들 사이의 연결 관계를 파악합니다. 이 정보를 관계형 데이터베이스에 단순 저장하면 "포트 80에서 Apache가 동작한다"는 개별 사실만 남지만, 지식 그래프에서는 "이 Apache 인스턴스는 취약한 PHP 모듈을 로드하고 있고, 이 모듈은 내부 데이터베이스에 접근 권한이 있으며, 데이터베이스에는 관리자 계정 정보가 저장되어 있다"는 공격 경로(attack path)가 시각적으로 드러납니다.
관측성(Observability) 통합
Langfuse 연동(docker-compose-langfuse.yml)과 별도의 observability 디렉토리는 PentAGI가 AI 에이전트의 행동을 추적하고 디버깅하는 것을 중요하게 여긴다는 것을 보여줍니다. 자율형 AI 시스템에서 관측성은 단순한 운영 편의가 아닙니다. 에이전트가 왜 특정 결정을 내렸는지, 어떤 도구 호출이 비효과적이었는지, 어디서 잘못된 추론을 했는지를 사후에 분석할 수 있어야 시스템을 개선할 수 있고, 동시에 감사(audit) 추적도 가능해집니다. 보안 테스트의 결과를 신뢰하려면 과정의 투명성이 담보되어야 하기 때문입니다.
한국 보안 실무자에게 주는 시사점
누가 이 도구를 사용할 수 있는가
PentAGI는 오픈소스(AGPL-3.0 라이선스)로 공개되어 있어 누구나 코드를 확인하고 실행할 수 있습니다. 그러나 중요한 전제가 있습니다. 이 도구는 적법한 권한 하에서만 사용해야 합니다. 한국에서는 정보통신망법에 따라 권한 없이 타인의 시스템에 침입하거나 취약점을 탐색하는 행위 자체가 형사 처벌 대상입니다. PentAGI의 EULA에도 윤리적 사용 조건이 명시되어 있습니다.
실무 도입 시나리오
시나리오 1 — 중소기업의 자체 보안 점검
전담 보안팀이 없는 중소기업에서 분기별 보안 점검을 수행해야 하는 상황을 생각해 봅시다. 외부 모의해킹 업체에 의뢰하면 건당 수백만 원에서 수천만 원의 비용이 발생합니다. PentAGI를 활용하면 내부 인프라에 대한 기본적인 보안 점검을 자동으로 수행하고, 발견된 이슈를 우선순위화할 수 있습니다. 물론 이것이 전문 모의해킹을 완전히 대체할 수는 없지만, 일상적인 보안 위생(security hygiene) 수준을 끌어올리는 보완재로서 가치가 있습니다.
시나리오 2 — 보안 교육 및 훈련
기업의 보안 교육 프로그램이나 대학의 정보보안 과정에서 PentAGI를 활용할 수 있습니다. 학습자가 취약한 테스트 환경(예: DVWA, HackTheBox)을 대상으로 PentAGI의 동작을 관찰하면서, AI 에이전트가 어떤 순서로 정찰하고, 어떤 도구를 선택하며, 어떻게 취약점을 연결하는지를 학습할 수 있습니다. 이것은 숙련된 모의해킹 전문가의 사고 과정을 들여다보는 것과 유사한 교육 효과를 줍니다.
시나리오 3 — DevSecOps 파이프라인 통합
PentAGI는 API 접근을 지원하므로, CI/CD 파이프라인에 통합하여 스테이징 환경에 대한 자동화된 보안 테스트를 수행할 수 있습니다. 새로운 배포가 이루어질 때마다 PentAGI가 해당 환경을 대상으로 테스트를 수행하고, 이전에 없던 새로운 취약점이 도입되었는지 확인하는 방식입니다.
도입 시 고려할 점
학습 로드맵
PentAGI를 효과적으로 활용하려면 다음 순서로 학습하는 것을 권장합니다.
1. 기초: Docker와 docker-compose에 익숙해지기. PentAGI의 실행과 설정이 모두 Docker 기반입니다.
2. 보안 기본기: nmap, metasploit 등 개별 도구의 기본 사용법을 익히기. AI 에이전트가 어떤 도구를 왜 선택하는지 이해하려면 각 도구의 역할을 알아야 합니다.
3. 환경 구축: DVWA나 Metasploitable 같은 의도적으로 취약한 환경을 로컬에 구성하고, PentAGI를 이 환경에 대해 실행해 보기.
4. 결과 분석: PentAGI가 생성한 보고서를 읽고, 각 발견 사항의 실제 위험도를 평가하는 연습하기.
5. 심화: Langfuse를 통해 에이전트의 의사결정 과정을 추적하고, 지식 그래프를 활용한 고급 기능 탐구하기.
이것은 시작에 불과하다 — AI 보안 테스트의 미래
PentAGI의 등장은 보안 업계에서 오랫동안 논의되어 온 "AI가 공격자 역할을 할 수 있는가"라는 질문에 대한 하나의 답변입니다. 물론 현재 버전이 인간 전문 모의해커를 완전히 대체하기에는 아직 갈 길이 멉니다. 복잡한 비즈니스 로직 취약점이나 사회공학적 공격 벡터는 AI가 다루기 어려운 영역입니다.
하지만 기술 발전의 궤적을 보면, 방향성은 분명합니다. LLM의 추론 능력이 향상될수록, 도구 호출의 정확도가 높아질수록, 지식 그래프의 맥락 이해가 깊어질수록, 자율형 보안 테스트의 품질은 인간 전문가에 근접해 갈 것입니다. 그리고 이 과정에서 보안 전문가의 역할은 직접 테스트를 수행하는 것에서, AI 에이전트를 감독하고 결과를 검증하며 전략적 판단을 내리는 것으로 진화할 가능성이 높습니다.
동시에, 이 기술이 악의적으로 사용될 가능성에 대한 우려도 피할 수 없습니다. 자율형 공격 도구가 오픈소스로 공개되는 것에 대한 보안 커뮤니티의 의견은 양분되어 있습니다. 한쪽에서는 방어자가 공격자의 도구를 이해해야 효과적으로 방어할 수 있다는 "공격적 보안(offensive security)"의 원칙을 강조하고, 다른 한쪽에서는 진입장벽이 낮아지면 저숙련 공격자의 위협이 증가한다고 경고합니다.
한 가지 확실한 것은, AI 기반 자율 보안 테스트는 이제 개념 증명(PoC) 단계를 넘어 실용 가능한 수준에 진입했다는 것입니다. PentAGI가 보여주는 아키텍처 — 에이전트 기반 의사결정, 도구 통합, 지식 그래프, 관측성 — 는 앞으로 이 분야에서 하나의 참조 구현(reference implementation)이 될 가능성이 있습니다.
여러분은 자율형 AI 보안 테스트 도구를 실무에 도입할 의향이 있으신가요? 도입한다면 어떤 시나리오에서 먼저 활용하시겠습니까? 또한 이런 도구의 오픈소스 공개에 대해 어떤 입장이신지 의견을 나눠주세요.
🔗 출처: GitHub
"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"
실제 수강생 후기- 비전공자도 6개월이면 첫 수익
- 20년 경력 개발자 직강
- 자동화 프로그램 + 소스코드 제공