Skip to content

Zayan-Mohamed/nova

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

NOVA β€” Network Observation & Vulnerability Analyzer

A terminal-based WiFi and LAN security assessment tool written in Go.

CI Release Docs Go Report Card License: MIT

πŸ“– Full Documentation


⚠ Legal Notice

Only scan networks you own or have explicit written permission to assess.

Scanning networks without authorisation is illegal in most jurisdictions and may result in criminal or civil liability. NOVA displays a consent screen before every scan session and requires explicit acknowledgement.


What is NOVA?

NOVA is a defensive security assessment tool. It helps network owners and administrators understand the security posture of their own WiFi and LAN environments. It does not perform exploitation, brute-forcing, or any offensive action.

Features

Feature Description
WiFi Analysis Lists nearby access points with SSID, BSSID, encryption type, channel, frequency, and signal strength
WiFi Search & Filter Live search by SSID/BSSID (/) and filter by security type β€” Open / WPA2 / WPA3 (f)
Encryption Assessment Detects Open / WEP / WPA / WPA2 / WPA3 and flags weak or broken configurations
LAN Host Discovery Ping-sweep of your subnet to enumerate active hosts with MAC address and vendor lookup
Port & Service Scanning Scans ports 1–1024 (or a custom range) and identifies running services
Risk Scoring Weighted 0–100 security score per network and per host
Risk Tagging Color-coded findings (Info β†’ Critical) for dangerous open ports (SMB, Telnet, RDP, Redis, MongoDB, etc.)
Keyboard-driven TUI Full terminal UI built with Bubble Tea and Lip Gloss

Requirements

Dependency Purpose Install
nmap LAN host discovery and port scanning sudo apt install nmap / brew install nmap
nmcli WiFi network scanning (NetworkManager) Pre-installed on most Linux distros
Go 1.24+ Build from source only go.dev/dl

macOS note: nmcli is Linux-only. WiFi scanning on macOS is not yet supported. LAN host discovery and port scanning work on both platforms.


Installation

Option A β€” Download a pre-built binary (recommended)

Go to the Releases page and download the binary for your platform:

nova_linux_amd64.tar.gz    β€” Linux (64-bit)
nova_linux_arm64.tar.gz    β€” Linux (ARM64 / Raspberry Pi)
nova_darwin_amd64.tar.gz   β€” macOS (Intel)
nova_darwin_arm64.tar.gz   β€” macOS (Apple Silicon)
tar -xzf nova_linux_amd64.tar.gz
sudo mv nova /usr/local/bin/
nova --help

Option B β€” Install with go install

go install github.com/Zayan-Mohamed/nova@latest

Option C β€” Build from source

git clone https://github.com/Zayan-Mohamed/nova.git
cd nova
go build -o nova .
./nova --help

Usage

nova                       # auto-detect subnet
nova --subnet 10.0.0.0/24  # override subnet
nova -s 192.168.1.0/24     # short form

TUI Key Bindings

Key Action
↑ / k Move selection up
↓ / j Move selection down
Enter / Space Select / activate
r Re-run the current scan
/ Search (WiFi view)
f Cycle security filter β€” Open β†’ WPA2 β†’ WPA3 (WiFi view)
c Clear all filters (WiFi view)
Esc / q Go back / exit current view
Ctrl+C Quit NOVA immediately

Typical workflow

1. Launch nova
2. Accept the legal consent screen  β†’  press y
3. Main Menu:
   β”œβ”€β”€ WiFi Analysis       β†’ lists nearby APs with security score
   β”‚     β”œβ”€β”€ /             β†’ live search by SSID or BSSID
   β”‚     └── f             β†’ filter by encryption type
   └── LAN Host Discovery  β†’ lists active hosts on your subnet
                            └── Enter on a host β†’ port scan + risk detail

Architecture

main.go
  └── cmd/root.go          CLI entry-point (cobra)
        └── internal/
              β”œβ”€β”€ wifi/    WiFi scanning via nmcli
              β”œβ”€β”€ scanner/ LAN host discovery + port scanning via nmap/ping
              β”œβ”€β”€ risk/    Security scoring and risk tagging
              └── ui/      BubbleTea TUI

Dependency direction is strictly main β†’ cmd β†’ internal/*. No global mutable state. No circular imports.


Security

Please report vulnerabilities responsibly β€” see SECURITY.md.


Contributing

Pull requests are welcome! Please read CONTRIBUTING.md first.


License

MIT Β© Zayan Mohamed

About

A terminal-based WiFi and LAN security assessment tool with active risk scoring.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages