Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

luvia-0.1.1.tar.gz (51.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

luvia-0.1.1-py3-none-any.whl (56.3 kB view details)

Uploaded Python 3

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

Hashes for luvia-0.1.1.tar.gz
Algorithm Hash digest
SHA256 295c0eba6e2035f6e0946c95cd86c9a8dd94ac67618f400a920ff861709eacd7
MD5 751d613999966f1d22d67d2e9e3bed7a
BLAKE2b-256 91690916964634110f04351e001dfea6849269aad3bb75157bdff0dc69e29a5f

See more details on using hashes here.

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

Hashes for luvia-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 86c6c09373629cacbfc81b3cda57a6f2366075e9563294e5ef288de7401da4ea
MD5 b20dcc185a32a268c1999f70a98b801e
BLAKE2b-256 5386deb1bfb92ce0e71040f9087ae9d73451720d1c7c389e0416e6a3691646a1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page