
리눅스(Parrot OS)에서 로컬 LLM을 사용하는 AI 기반 침투 테스트 도우미
로컬 LLM을 사용하는 AI 기반 침투 테스트 도우미 (리눅스, Parrot OS)
Metatron은 클라우드, API 키, 구독 없이 로컬 머신에서 완전히 실행되는 CLI 기반 AI 침투 테스트 도우미입니다.
대상 IP나 도메인을 입력하면, 실제 정찰 도구(nmap, whois, whatweb, curl, dig, nikto)를 실행하고 모든 결과를 로컬에서 실행 중인 AI 모델에 전달합니다. AI는 대상을 분석하고 취약점을 식별하며, 익스플로잇을 제안하고 수정 사항을 권장합니다. 모든 내용은 MariaDB 데이터베이스에 전체 스캔 기록과 함께 저장됩니다.
metatron-qwen으로 구동, 100% 오프라인 실행Metatron은 '2.기록 보기' → slno 선택 → 내보내기를 통해 스캔 결과를 깔끔하고 공유 가능한 보고서 형식으로 내보낼 수 있습니다.
📄 PDF — 전문 취약점 보고서 🌐 HTML — 브라우저에서 볼 수 있는 보고서
메인 메뉴
대상에 대한 정찰 도구 실행
metatron-qwen이 스캔 결과 분석 중
취약점이 데이터베이스에 저장됨
스캔 결과를 PDF 및 HTML로 내보내기
git clone https://github.com/sooryathejas/METATRON.git
cd METATRON
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
sudo apt install nmap whois whatweb curl dnsutils nikto
curl -fsSL https://ollama.com/install.sh | sh
ollama pull huihui_ai/qwen3.5-abliterated:9b
⚠️ 이 모델은 최소 8.4GB RAM이 필요합니다. 시스템 메모리가 부족하면 4b 변형을 사용하세요:
ollama pull huihui_ai/qwen3.5-abliterated:4b그런 다음
Modelfile을 편집하여 FROM 줄을 4b 모델로 변경하세요.
저장소에는 기본 모델을 침투 테스트 특화 파라미터로 파인튜닝하는 Modelfile이 포함되어 있습니다:
ollama create metatron-qwen -f Modelfile
이 명령은 다음과 같은 설정의 로컬 metatron-qwen 모델을 생성합니다:
ollama list
목록에 metatron-qwen이 보여야 합니다.
sudo systemctl start mariadb
sudo systemctl enable mariadb
mysql -u root
CREATE DATABASE metatron;
CREATE USER 'metatron'@'localhost' IDENTIFIED BY '123';
GRANT ALL PRIVILEGES ON metatron.* TO 'metatron'@'localhost';
FLUSH PRIVILEGES;
EXIT;
mysql -u metatron -p123 metatron
CREATE TABLE history (
sl_no INT AUTO_INCREMENT PRIMARY KEY,
target VARCHAR(255) NOT NULL,
scan_date DATETIME NOT NULL,
status VARCHAR(50) DEFAULT 'active'
);
CREATE TABLE vulnerabilities (
id INT AUTO_INCREMENT PRIMARY KEY,
sl_no INT,
vuln_name TEXT,
severity VARCHAR(50),
port VARCHAR(20),
service VARCHAR(100),
description TEXT,
FOREIGN KEY (sl_no) REFERENCES history(sl_no)
);
CREATE TABLE fixes (
id INT AUTO_INCREMENT PRIMARY KEY,
sl_no INT,
vuln_id INT,
fix_text TEXT,
source VARCHAR(50),
FOREIGN KEY (sl_no) REFERENCES history(sl_no),
FOREIGN KEY (vuln_id) REFERENCES vulnerabilities(id)
);
CREATE TABLE exploits_attempted (
id INT AUTO_INCREMENT PRIMARY KEY,
sl_no INT,
exploit_name TEXT,
tool_used TEXT,
payload LONGTEXT,
result TEXT,
notes TEXT,
FOREIGN KEY (sl_no) REFERENCES history(sl_no)
);
CREATE TABLE summary (
id INT AUTO_INCREMENT PRIMARY KEY,
sl_no INT,
raw_scan LONGTEXT,
ai_analysis LONGTEXT,
risk_level VARCHAR(50),
generated_at DATETIME,
FOREIGN KEY (sl_no) REFERENCES history(sl_no)
);
Metatron을 실행하려면 두 개의 터미널 탭이 필요합니다.
ollama run metatron-qwen
>>> 프롬프트가 나타날 때까지 기다리세요. 이는 모델이 메모리에 로드되어 준비되었음을 의미합니다. 이 터미널은 백그라운드에서 실행 상태로 둘 수 있습니다.
cd ~/METATRON
source venv/bin/activate
python metatron.py
1. 메인 메뉴 표시:
[1] 새 스캔
[2] 기록 보기
[3] 종료
2. [1] 새 스캔 선택 → 대상 입력:
[?] 대상 IP 또는 도메인 입력: 192.168.1.1
또는
[?] 대상 IP 또는 도메인 입력: example.com
3. 실행할 정찰 도구 선택:
[1] nmap
[2] whois
[3] whatweb
[4] curl 헤더
[5] dig DNS
[6] nikto
[a] 모두 실행 (nikto 제외)
[n] 모두 실행 + nikto (느림)
4. Metatron이 도구를 실행하고, 결과를 AI에 전달하며, 분석을 출력합니다.
5. 모든 내용이 자동으로 MariaDB에 저장됩니다.
6. 스캔 후 결과를 편집하거나 삭제할 수 있습니다.
METATRON/
├── metatron.py ← 주요 CLI 진입점
├── db.py ← MariaDB 연결 및 모든 CRUD 연산
├── tools.py ← 정찰 도구 실행기 (nmap, whois 등)
├── llm.py ← Ollama 인터페이스 및 AI 도구 디스패치 루프
├── search.py ← DuckDuckGo 웹 검색 및 CVE 조회
├── Modelfile ← metatron-qwen용 커스텀 모델 설정
├── requirements.txt ← Python 의존성
├── .gitignore ← venv, pycache, db 파일 제외
├── LICENSE ← MIT 라이선스
├── README.md ← 이 파일
└── screenshots/ ← 문서용 터미널 스크린샷
모든 5개 테이블은 history 테이블의 sl_no (세션 번호)로 연결됩니다:
history ← 스캔 세션당 한 행 (sl_no가 중심)
│
├── vulnerabilities ← 발견된 취약점, sl_no로 연결
│ │
│ └── fixes ← 취약점별 수정 사항, vuln_id + sl_no로 연결
│
├── exploits_attempted ← 시도된 익스플로잇, sl_no로 연결
│
└── summary ← 전체 AI 분석 덤프, sl_no로 연결
이 도구는 교육 목적 및 승인된 침투 테스트 전용입니다.
Soorya Thejas
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.
| 구성 요소 | 기술 |
|---|
| 언어 | Python 3 |
| AI 모델 | metatron-qwen (Qwen 3.5 파인튜닝) |
| 기본 모델 | huihui_ai/qwen3.5-abliterated:9b |
| LLM 러너 | Ollama |
| 데이터베이스 | MariaDB |
| OS | Parrot OS (Debian 기반) |
| 검색 | DuckDuckGo (무료, 키 없음) |