Autonomous AI-driven network penetration testing library
Project description
Luvia
Autonomous AI-Driven Network Penetration Testing Library
Luvia orchestrates reconnaissance, vulnerability identification, and AI-powered remediation. It uses recursive logic to switch between ports and services until a vulnerability is found or the target is fully mapped.
Features
- Stealth Scanning — SYN scans, fragmentation, decoy IPs for firewall evasion
- Full Port Audit — Scan all 65,535 ports with service fingerprinting
- Autonomous Port Routing — Automatically dispatches service-specific modules based on open ports
- CVE Mapping — Local vulnerability database + NVD API lookups
- Known Backdoor Detection — Hard-coded signatures for vsftpd 2.3.4, UnrealIRCd, Samba, etc.
- Credential Spraying — Async SSH/FTP/Telnet/HTTP brute-force with IDS evasion
- Web Security Audit — Headers, TLS, directory brute-force, WAF detection, CORS checking
- Traffic Analysis — TShark pcap parsing with anomaly detection
- OSINT & Discovery — Subdomain enumeration, DNS zone transfer, WHOIS, host discovery
- AI Remediation Brain — OpenAI / Ollama / HuggingFace integration for intelligent analysis
- Autonomous Pivoting — Detect internal networks for lateral movement
- Professional Reports — JSON and PDF export with styled formatting
Prerequisites
Luvia depends on industry-standard security tools that must be installed on your system:
- Nmap (Required for all scanning) — nmap.org
- TShark / Wireshark (Optional, for traffic analysis) — wireshark.org
- Ollama (Optional, for local AI remediation) — ollama.com
Installation
Method 1: Docker (One Command, Bundled Dependencies)
This is the recommended method as it automatically installs Nmap and TShark for you.
git clone https://github.com/luvia-team/luvia.git
cd luvia
docker compose up -d # Spins up Luvia + Ollama
docker compose run luvia audit --target example.com
Method 2: pip (Custom Install)
pip install luvia
luvia setup # One-command automated install of Nmap & TShark
luvia check # Verify everything is ready
Quick Start
# Stealth scan
luvia scan --target 192.168.1.100 --type stealth
# Full vulnerability audit with AI analysis
luvia audit --target 192.168.1.100 --ai-backend openai --ai-key YOUR_KEY
# Analyse prior results
luvia analyze --input results.json --ai-backend ollama
# Reconnaissance
luvia discover --domain example.com --cidr 192.168.1.0/24
# Export reports
luvia report --input scan_results.json --format both
Architecture
luvia/
├── core/
│ ├── scanner.py # Nmap/Scapy orchestration
│ ├── traffic.py # TShark/Packet analysis
│ └── discovery.py # Subdomain and OSINT logic
├── modules/
│ ├── web_audit.py # HTTP/HTTPS security checks
│ ├── exploit_db.py # CVE mapping logic
│ └── brute_force.py # Credential testing
├── brain/
│ ├── ai_client.py # LLM integration
│ └── remediator.py # Findings → solutions
├── utils/
│ ├── reporters.py # JSON/PDF export
│ └── logger.py # Stealth-compliant logging
├── database/
│ ├── models.py # Pydantic + SQLAlchemy models
│ └── checklist.json # Security checklist (25 items)
├── main.py # CLI entry point
└── __main__.py # python -m luvia support
Requirements
- Python 3.11+
- Nmap (installed on PATH)
- TShark (for traffic analysis)
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file luvia-0.1.1.tar.gz.
File metadata
- Download URL: luvia-0.1.1.tar.gz
- Upload date:
- Size: 51.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
295c0eba6e2035f6e0946c95cd86c9a8dd94ac67618f400a920ff861709eacd7
|
|
| MD5 |
751d613999966f1d22d67d2e9e3bed7a
|
|
| BLAKE2b-256 |
91690916964634110f04351e001dfea6849269aad3bb75157bdff0dc69e29a5f
|
File details
Details for the file luvia-0.1.1-py3-none-any.whl.
File metadata
- Download URL: luvia-0.1.1-py3-none-any.whl
- Upload date:
- Size: 56.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
86c6c09373629cacbfc81b3cda57a6f2366075e9563294e5ef288de7401da4ea
|
|
| MD5 |
b20dcc185a32a268c1999f70a98b801e
|
|
| BLAKE2b-256 |
5386deb1bfb92ce0e71040f9087ae9d73451720d1c7c389e0416e6a3691646a1
|