Vasco0x4/AIDA

Turn any LLM into an autonomous pentester. You define the scope, the agent does the work, you review the findings.

AIDA – AI 기반 자율 펜테스트 에이전트

무엇인가요 – AIDA(AI 기반 보안 평가)는 대규모 언어 모델(Claude, Gemini, OpenAI Codex 등)을 자율적인 펜테스트 보조자로 전환하는 오픈소스 도구입니다. Docker 컨테이너 내부에서 실행되며, 일반적인 보안 도구(nmap, sqlmap, ffuf, nuclei 등)를 포함하고 있으며 필요 시 추가 도구를 동적으로 설치할 수 있습니다. LLM은 전체 워크플로우를 제어합니다: 평가 계획 수립, 컨테이너에 명령어 실행, 사용자 정의 Python 페이로드 작성, 원시 HTTP 요청 생성, 모든 단계를 지속 가능한 노트북에 기록하여 나중에 재개할 수 있습니다.


핵심 기능 (README에 기술됨)

기능 작동 방식
실행 환경 미리 빌드된 aida-pentest Docker 이미지(~2GB)로, Linux 쉘과 펜테스트 유틸리티 모음이 포함되어 있습니다. 에이전트는 더 큰 도구셋이 필요한 경우 외부 Exegol 컨테이너에 연결할 수 있습니다.
도구 호출 LLM 도구 호출을 지원하는 모든 LLM(Claude Code, OpenAI Codex, Kimi, Gemini, 또는 OpenAI 호환 API)을 사용할 수 있습니다. 모델은 python3 aida.py를 통해 호출되며, 평가 범위를 받은 후 execute(), scan(), http_request() 등의 호출을 발행합니다.
동적 Python 페이로드 에이전트는 표준 도구로 처리할 수 없는 사용자 정의 공격 또는 데이터 처리를 위해 컨테이너 내부에서 임시 Python 스크립트를 생성하고 실행할 수 있습니다.
Burp 유사 HTTP 제어 http_request() 도구를 통해 모델은 임의의 HTTP 요청을 전송하고, {{PLACEHOLDER}}를 통해 저장된 자격 증명을 삽입하며, 헤더, 쿠키, 본문 등을 조작할 수 있습니다.
지속 가능한 노트북 및 보고서 모든 발견, 명령어 출력, 추론 내용이 로그에 기록됩니다. add_card()를 사용해 발견을 추가하면 자동으로 CVSS 4.0 점수가 부여됩니다. 대시보드(http://localhost:31337)에서는 공격 타임라인을 확인하고, PDF 보고서를 내보내며, 여러 평가 간에 필터링할 수 있습니다.
인증 및 알림 v1.1.0에서는 JWT 기반 사용자 역할, 첫 실행 워크스텝, 그리고 선택적 Telegram/Slack/이메일 알림(파일 첨부 포함)이 추가되었습니다.

빠른 시작 (README에서)

# 클론하고 UI 컨테이너 시작
git clone https://github.com/Vasco0x4/AIDA.git
cd AIDA
./start.sh               # http://localhost:31337 에서 대시보드 실행

# 에이전트 실행 (기본값: Claude Code)
python3 aida.py --assessment "target-corp"

옵션 플래그를 사용해 특정 모델 선택(--cli codex), 프롬프트 없이 실행(--yes), 또는 UI를 LAN/공개 도메인에 노출할 수 있습니다.


일반적인 워크플로우

  1. 범위 정의 – AIDA에 타겟 URL, 서브도메인, 제외 항목을 전달합니다.
  2. LLM이 계획하고 실행scan(), subdomain_enum(), ssl_analysis() 등을 호출하며, 필요한 도구가 없으면 자동 설치합니다.
  3. 발견 검토 – 노트북은 각 취약점에 대해 다음을 포함하여 나열합니다:
    • 발견에 사용된 명령어
    • 원시 출력
    • 모델의 추론
    • 자동 생성된 CVSS 4.0 점수
  4. 내보내기 / 인계 – 한 번의 클릭으로 PDF 보고서를 내보내거나, 나중에 엔게이지먼트를 계속할 수 있습니다.

실제 세계의 영향 (주장)

README에는 AIDA + Claude가 발견한 여러 CVE(CVE-2026-49869, CVE-2026-50189 등)가 기재되어 있으며, 공개된 취약점 데이터베이스에 게시되었습니다.


제한 사항 및 주의사항 (저자 주의)

  • 모델 품질이 중요 – 더 깊은 평가는 더 강력한 LLM이 필요합니다. 도구는 '모델에 독립적'이지만, 약한 모델은 얕은 결과를 낳습니다.
  • 컨테이너 노출 위험 – 대시보드는 로컬호스트 또는 신뢰할 수 있는 LAN에 유지해야 합니다. 저자는 공개적으로 노출하는 것을 경고합니다.
  • 도구 호출 신뢰성 – 에이전트는 LLM이 정의된 도구 함수를 올바르게 호출하는 데 의존합니다. 잘못된 호출은 실행을 멈출 수 있습니다.
  • 법적/윤리적 책임 – 타겟에 대한 테스트 허가가 필요합니다. AIDA는 단지 반복 작업을 자동화할 뿐이며, 트리지 및 공개의 책임은 인간 리뷰어에게 있습니다.

라이선스

AGPL-v3 – 코드는 오픈소스를 유지해야 하며, 네트워크에서 제공되는 수정 사항은 공유해야 합니다.


누구에게 유용할까?

  • 레드팀 엔지니어: 빠르고 AI 지원 펜테스트 프레임워크를 찾는 사람.
  • 버그 바운티 사냥꾼: 반복적인 스캔을 LLM이 자동화해 검증에 집중하고 싶은 사람.
  • 보안 연구자: 현재 LLM이 엔드투엔드 펜테스트를 얼마나 잘 이끌 수 있는지 평가하고 싶은 사람.
  • 기업: 소유 자산에 대한 기본 평가를 수행할 내부 '보조자'를 원하는 사람(적절한 승인을 받은 경우).

결론

AIDA는 LLM의 도구 호출 기능과 준비된 펜테스트 컨테이너를 결합한 진정한 오픈소스 프로젝트입니다. 웹 대시보드, 지속 가능한 노트북, CVSS 점수, 다중 모델 지원을 제공하며, 언어 모델이 어떤 명령어를 실행할지 결정합니다. 프로젝트는 활발히 유지보수 중이며(v1.1.0), GitHub와 디스코드 커뮤니티를 통해 기여를 환영합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트