
nerva v1.61.0
CLI per fingerprinting rapido di servizi per oltre 170 protocolli (TCP/UDP/SCTP) - sviluppato da Praetorian
Nerva
Nerva: CLI veloce per fingerprinting di servizi
Funzionalità • Installazione • Avvio rapido • Utilizzo • Protocolli • Libreria • Casi d'uso • Risoluzione dei problemi
Fingerprinting di servizi ad alte prestazioni scritto in Go. Identifica 170+ protocolli di rete su trasporti TCP, UDP e SCTP con estrazione di metadati completi.
Nerva rileva e identifica rapidamente i servizi in esecuzione su porte di rete aperte. Utilizzalo insieme a scanner di porte come Naabu per eseguire il fingerprinting dei servizi scoperti, o integralo nei tuoi pipeline di sicurezza per ricognizione automatizzata.
Funzionalità
- 170+ Plugin di protocolli — Database, accesso remoto, servizi web, messaggistica, protocolli industriali e di telecomunicazione
- 76 Fingerprint HTTP — Rileva tecnologie web inclusi firewall, database, server AI/LLM e altro
- Rilevamento di configurazioni errate di sicurezza — Identifica problemi di sicurezza comuni come API non autenticate e protocolli in chiaro (
--misconfigs) - Supporto multi-trasporto — TCP (predefinito), UDP (
--udp) e SCTP (--sctp, solo Linux) - Supporto proxy — Instrada il traffico di scansione in modo trasparente attraverso proxy SOCKS5 o HTTP con risoluzione DNS configurabile
- Metadati ricchi — Estrai versioni, configurazioni e dettagli rilevanti per la sicurezza da ogni servizio
- Modalità rapida — Scansiona solo le porte predefinite per ricognizione rapida (
--fast) - Output flessibile — Formati JSON, CSV o leggibili dall'uomo
- Amichevole per pipeline — Pipe da Naabu, Nmap o qualsiasi strumento che produce
host:port - Libreria Go — Importa direttamente nelle tue applicazioni Go
Installazione
Rilasci
Scarica un binario precompilato dalla pagina Rilasci.
Da GitHub```sh
go install github.com/praetorian-inc/nerva/cmd/nerva@latest
### Dal sorgente```sh
git clone https://github.com/praetorian-inc/nerva.git
cd nerva
go build ./cmd/nerva
./nerva -h
Docker```sh
git clone https://github.com/praetorian-inc/nerva.git cd nerva docker build -t nerva . docker run --rm nerva -h docker run --rm nerva -t example.com:80 --json
## Avvio rapido
Esegui il fingerprinting di un singolo target:```sh
nerva -t example.com:22
# ssh://example.com:22
Ottieni metadati JSON dettagliati:```sh nerva -t example.com:22 --json
{"host":"example.com","ip":"93.184.216.34","port":22,"protocol":"ssh","transport":"tcp","metadata":{...}}
Pipe da uno scanner di porte:```sh
naabu -host example.com -silent | nerva
# http://example.com:80
# ssh://example.com:22
# https://example.com:443
Utilizzo```
nerva [flags]
TARGET SPECIFICATION: Requires host:port or ip:port format. Assumes ports are open.
EXAMPLES: nerva -t example.com:80 nerva -t example.com:80,example.com:443 nerva -l targets.txt nerva --json -t example.com:80 cat targets.txt | nerva
### Bandiera | Abbreviazione | Descrizione | Predefinito |
|------|-------|-------------|---------|
| `--targets` | `-t` | Target o elenco di target separati da virgola | — |
| `--list` | `-l` | File di input contenente i target | — |
| `--output` | `-o` | Percorso del file di output | stdout |
| `--json` | | Output in formato JSON | false |
| `--csv` | | Output in formato CSV | false |
| `--misconfigs` | | Abilita il rilevamento di configurazioni errate di sicurezza | false |
| `--proxy` | | URL del proxy (es. socks5://127.0.0.1:1080) | — |
| `--proxy-auth` | | Autenticazione proxy SOCKS5 (es. username:password) | — |
| `--dns-order` | | Ordine di risoluzione DNS: `p`, `l`, `lp`, `pl` | `lp` |
| `--fast` | `-f` | Modalità veloce (solo porte predefinite) | false |
| `--capabilities` | `-c` | Elenca le capacità disponibili ed esci | false |
| `--udp` | `-U` | Esegui plugin UDP | false |
| `--sctp` | `-S` | Esegui plugin SCTP (solo Linux) | false |
| `--timeout` | `-w` | Timeout in millisecondi | 2000 |
| `--verbose` | `-v` | Output verboso su stderr | false |
| `--workers` | `-W` | Worker di scansione simultanei | 50 |
| `--max-host-conn` | `-H` | Max connessioni simultanee per IP host (0=illimitato) | 0 |
| `--rate-limit` | `-R` | Max scansioni al secondo a livello globale (0=illimitato) | 0 |
### Esempi
**Target multipli:**```sh
nerva -t example.com:22,example.com:80,example.com:443
Dal file:```sh nerva -l targets.txt --json -o results.json
**UDP scanning** (potrebbe richiedere i permessi di root):```sh
sudo nerva -t example.com:53 -U
# dns://example.com:53
Scansione SCTP (solo Linux):```sh nerva -t telecom-server:3868 -S
diameter://telecom-server:3868
**Modalità veloce** (solo porte predefinite):```sh
nerva -l large-target-list.txt --fast --json
Routing proxy con risoluzione DNS remota:```sh nerva -t target.internal:80 --proxy socks5://127.0.0.1:1080 --dns-order p
### Rilevamento di configurazioni errate di sicurezza
Nerva può identificare configurazioni errate di sicurezza comuni quando abilitato con `--misconfigs`:```sh
nerva -t example.com:2375 --misconfigs --json
Misconfigurazioni rilevate:
| ID Rilevamento | Gravità | Descrizione |
|---|---|---|
docker-unauth-api | Critico | API Docker accessibile senza autenticazione |
x11-unauth-access | Critico | Server X11 consente connessioni non autenticate |
smb-signing-not-required | Medio | Firma SMB non richiesta (rischio attacco relay) |
telnet-cleartext | Medio | Telnet trasmette credenziali in chiaro |
vnc-detected | Medio | VNC rilevato (spesso autenticazione debole) |
ssh-password-auth | Medio | Il server consente autenticazione tramite password |
ssh-weak-cipher | Basso | Il server offre cifrari deboli (RC4, 3DES, Blowfish) |
ssh-weak-kex | Basso | Il server offre algoritmi di scambio chiave deboli |
ssh-weak-mac | Basso | Il server offre algoritmi MAC deboli |
ftp-cleartext | Basso | FTP trasmette credenziali in chiaro |
Esempio di output con misconfigurazioni:```json { "host": "example.com", "port": 2375, "protocol": "docker", "anonymous_access": true, "security_findings": [ { "id": "docker-unauth-api", "severity": "critical", "description": "Docker API accessible without authentication", "evidence": "Successfully queried /version endpoint without credentials" } ] }
### Supporto Proxy
Nerva supporta l'instradamento del traffico di scansione attraverso proxy SOCKS5 e HTTP con risoluzione DNS configurabile.
**Schemi proxy supportati:**
- `socks5://` - Proxy SOCKS5 con risoluzione DNS locale
- `socks5h://` - Proxy SOCKS5 con risoluzione DNS lato proxy (sempre)
- `http://` - Proxy HTTP CONNECT
- `https://` - Proxy HTTPS CONNECT
**Autenticazione proxy:**```sh
# Inline authentication (URL format)
nerva -t example.com:80 --proxy socks5://username:[email protected]:1080
# Separate authentication flag
nerva -t example.com:80 --proxy socks5://127.0.0.1:1080 --proxy-auth username:password
Strategie di risoluzione DNS (--dns-order):
| Opzione | Strategia | Caso d'Uso |
|---|---|---|
l | Solo locale | DNS locale standard (predefinito) |
p | Solo proxy | Forza la risoluzione DNS lato proxy |
lp | Locale, fallback al proxy | Prova prima locale, usa proxy in caso di fallimento |
pl | Proxy, fallback al locale | Prova prima proxy, usa locale in caso di fallimento |
Nota: lo schema socks5h:// forza automaticamente la risoluzione DNS lato proxy (equivalente a --dns-order p)
Esempio di scansione Tor:```sh
Scan .onion services through Tor (SOCKS5 proxy on port 9050)
nerva -t http://example.onion:80 --proxy socks5h://127.0.0.1:9050
**UDP tramite proxy:**```sh
# UDP scanning through SOCKS5 proxy (limited support)
nerva -t target.com:161 --proxy socks5://127.0.0.1:1080 --udp
⚠️ Limitazioni UDP: Il supporto per UDP tramite SOCKS5 è limitato. Non tutti i server SOCKS5 supportano l'associazione UDP. Potrebbe verificarsi un fallback UDP locale.
Scansione parallela con limitazione della velocità:```sh nerva -l large-target-list.txt -W 100 -H 5 -R 50 -v
**Arresto graduale** (Ctrl+C restituisce risultati parziali):```sh
nerva -l huge-target-list.txt -W 50 -v
# Press Ctrl+C to stop — collected results are still printed
Protocolli Supportati
170+ plugin di rilevamento dei servizi su TCP, UDP e SCTP:
Moduli di Riconoscimento HTTP (66)
Riconoscimento della tecnologia per servizi web, organizzati per categoria:
Firewall e Sicurezza di Rete (12)
| Modulo | Descrizione |
|---|---|
| Checkpoint | Gateway di sicurezza Check Point |
| Cisco ASA/FTD | Appliance firewall/VPN Cisco |
| FortiGate | Firewall/VPN Fortinet |
| GlobalProtect | VPN Palo Alto Networks |
| Juniper | Firewall Juniper SRX |
| OPNsense | Firewall OPNsense |
| pfSense | Firewall pfSense |
| SonicWall | Firewall SonicWall |
| AnyConnect | VPN SSL Cisco AnyConnect |
| Cisco Expressway | Gateway di collaborazione Cisco |
| BigIP | Bilanciatore di carico F5 BIG-IP |
| WinRM | Gestione remota Windows |
AI/LLM e Machine Learning (6)
| Modulo | Descrizione |
|---|---|
| Ollama | Server di inferenza LLM self-hosted |
| LocalAI | Inferenza LLM self-hosted (compatibile con OpenAI) |
| Open WebUI | Interfaccia web LLM (stile ChatGPT) |
| Triton | Server di inferenza NVIDIA Triton |
| Weaviate | Database vettoriale per AI |
| ChromaDB | Database vettoriale |
Database e Archivi Dati (12)
| Modulo | Descrizione |
|---|---|
| ArangoDB | Database multi-modello |
| CockroachDB | Database SQL distribuito |
| CouchDB | Database di documenti Apache |
| Elasticsearch | Motore di ricerca e analisi |
| etcd | Archivio chiave-valore distribuito |
| Milvus | Database vettoriale |
| MinIO | Archivio oggetti compatibile con S3 |
| Pinecone | Database vettoriale |
| Redis Commander | Interfaccia web di gestione Redis |
| TiDB | Database SQL distribuito |
| YugabyteDB | Database SQL distribuito |
| Qdrant | Database vettoriale |
DevOps e Infrastruttura (14)
| Modulo | Descrizione |
|---|---|
| Artifactory | Repository di artefatti JFrog |
| Consul | Service mesh HashiCorp |
| Docker Registry | Registro immagini container |
| Gitea | Servizio Git self-hosted |
| Grafana | Piattaforma di osservabilità |
| Harbor | Registro container |
| Jaeger | Tracciamento distribuito |
| Jenkins | Automazione CI/CD |
| Kubernetes | API di orchestrazione container |
| Portainer | Interfaccia di gestione Docker |
| Prometheus | Sistema di monitoraggio |
| Swagger/OpenAPI | Documentazione API |
| TeamCity | Server CI/CD |
| Vault | Gestione segreti HashiCorp |
Server Web e Framework (10)
| Modulo | Descrizione |
|---|---|
| Apache HTTPD | Server HTTP Apache |
| Express.js | Framework web Node.js |
| GoAhead | Server web embedded |
| Gotenberg | Servizio di generazione PDF |
| Guacamole | Gateway desktop remoto Apache |
| SOAP | Web service |
| Tengine | Server web Alibaba |
| Tomcat | Apache Tomcat |
| WordPress | Piattaforma CMS |
| UPnP | Universal Plug and Play |
Enterprise e Business (8)
| Modulo | Descrizione |
|---|---|
| AEM | Adobe Experience Manager |
| Dynamics 365 | Microsoft Dynamics 365 / Power Apps |
| Oracle Service Cloud | Piattaforma CRM Oracle |
| SAP NetWeaver | Piattaforma enterprise SAP |
| Splunk | Piattaforma di gestione log |
| VMware Horizon | Infrastruttura desktop virtuale |
| QNAP QTS | Gestione NAS |
| Exchange | Server Microsoft Exchange |
Casa e IoT (2)
| Modulo | Descrizione |
|---|---|
| Home Assistant | Piattaforma di automazione domestica |
| UniFi/EdgeOS | Dispositivi di rete Ubiquiti |
Altro (2)
| Modulo | Descrizione |
|---|---|
| Go pprof | Endpoint di profiling Go |
| NATS | Message broker |
Database (20)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| PostgreSQL | TCP | 5432 |
| MySQL | TCP | 3306 |
| MSSQL | TCP | 1433 |
| Oracle | TCP | 1521 |
| MongoDB | TCP | 27017 |
| Redis | TCP/TLS | 6379, 6380 |
| Cassandra | TCP | 9042 |
| InfluxDB | TCP | 8086 |
| Neo4j | TCP/TLS | 7687 |
| DB2 | TCP | 446, 50000 |
| Sybase | TCP | 5000 |
| Firebird | TCP | 3050 |
| Memcached | TCP | 11211 |
| ZooKeeper | TCP | 2181 |
| Milvus | TCP | 19530, 9091 |
| CouchDB | HTTP | 5984 |
| Elasticsearch | HTTP | 9200 |
| ArangoDB | HTTP | 8529 |
| ChromaDB | HTTP | 8000 |
| Pinecone | HTTP | 443 |
Accesso Remoto (6)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| SSH | TCP | 22, 2222 |
| RDP | TCP/TLS | 3389 |
| Telnet | TCP | 23 |
| VNC | TCP | 5900 |
| AnyDesk | TCP | 7070 |
| TeamViewer | TCP | 5938 |
Web e API (2)
| Protocollo | Trasporto | Note |
|---|---|---|
| HTTP/HTTPS | TCP | HTTP/2, rilevamento tecnologia tramite Wappalyzer |
| Kubernetes | TCP | Rilevamento server API |
Messaggistica e Code (10)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| Kafka | TCP/TLS | 9092, 9093 |
| MQTT 3/5 | TCP/TLS | 1883, 8883 |
| AMQP | TCP/TLS | 5672, 5671 |
| ActiveMQ | TCP/TLS | 61616, 61617 |
| NATS | TCP/TLS | 4222, 6222 |
| Pulsar | TCP/TLS | 6650, 6651 |
| SMTP | TCP/TLS | 25, 465, 587 |
| POP3 | TCP/TLS | 110, 995 |
| IMAP | TCP/TLS | 143, 993 |
| SMPP | TCP | 2775, 2776 |
Servizi File e Directory (7)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| FTP | TCP | 21 |
| SMB | TCP | 445 |
| NFS | TCP/UDP | 2049 |
| Rsync | TCP | 873 |
| TFTP | UDP | 69 |
| SVN | TCP | 3690 |
| LDAP | TCP/TLS | 389, 636 |
Servizi di Rete (11)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| DNS | TCP/UDP | 53 |
| DHCP | UDP | 67, 68 |
| NTP | UDP | 123 |
| SNMP | UDP | 161 |
| NetBIOS-NS | UDP | 137 |
| STUN | UDP | 3478 |
| OpenVPN | UDP | 1194 |
| IPsec | UDP | 500 |
| IPMI | UDP | 623 |
| CoAP | UDP | 5683 |
| Echo | TCP/UDP | 7 |
Sistemi di Controllo Industriale (18)
| Protocollo | Trasporto | Porte Predefinite | Note |
|---|---|---|---|
| Modbus | TCP | 502 | SCADA/PLC |
| S7comm | TCP | 102 | Siemens PLC |
| EtherNet/IP | TCP | 44818 | Rockwell/Allen-Bradley |
| PROFINET | TCP | 34962-34964 | Siemens industriale |
| BACnet | UDP | 47808 | Automazione degli edifici |
| OPC UA | TCP | 4840 | Interoperabilità industriale |
| OMRON FINS | TCP/UDP | 9600 | OMRON PLC |
| MELSEC-Q | TCP | 5006, 5007 | Mitsubishi PLC |
| KNXnet/IP | UDP | 3671 | Automazione degli edifici |
| IEC 104 | TCP | 2404 | SCADA per rete elettrica |
| DNP3 | TCP | 20000 | SCADA per rete elettrica |
| Codesys | TCP | 1200, 2455 | Runtime PLC |
| Fox | TCP | 1911 | Tridium Niagara |
| PC WORX | TCP | 1962 | Phoenix Contact |
| ProConOS | TCP | 20547 | Runtime PLC |
| HART-IP | TCP | 5094 | Automazione di processo |
| EtherCAT | UDP | 34980 | Controllo del movimento |
| Crimson v3 | TCP | 789 | Red Lion HMI |
| PCOM | TCP | 20256 | Unitronics PLC |
| GE SRTP | TCP | 18245 | GE PLC |
| ATG | TCP | 10001 | Misuratori di livello serbatoi |
Telecomunicazioni e VoIP (17)
| Protocollo | Trasporto | Porte Predefinite | Note |
|---|---|---|---|
| Diameter | TCP/SCTP | 3868 | AAA LTE/5G |
| M3UA | SCTP | 2905 | SS7 su IP |
| M2UA | SCTP | 2904 | Adattamento utente MTP2 |
| M2PA | SCTP | 3565 | Adattamento peer MTP2 |
| SGsAP | SCTP | 29118 | Fallback a commutazione di circuito |
| X2AP | SCTP | 36422 | LTE inter-eNodeB |
| IUA | SCTP | 9900 | ISDN su IP |
| SIP | TCP/UDP/TLS | 5060, 5061 | Segnalazione VoIP |
| MEGACO/H.248 | UDP | 2944, 2945 | Gateway multimediale |
| MGCP | UDP | 2427, 2727 | Gateway multimediale |
| H.323 | TCP | 1720 | Videoconferenza |
| SCCP/Skinny | TCP | 2000, 2443 | Telefoni IP Cisco |
| IAX2 | UDP | 4569 | Protocollo Asterisk |
| GTP-C | UDP | 2123 | Controllo GPRS |
| GTP-U | UDP | 2152 | Piano utente GPRS |
| GTP' | UDP | 3386 | Tariffazione GPRS |
| PFCP | UDP | 8805 | Piano utente 5G |
VPN e Sicurezza (11)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| SSH | TCP | 22, 2222 |
| OpenVPN | UDP | 1194 |
| WireGuard | UDP | 51820 |
| IPsec/IKEv2 | UDP | 500, 4500 |
| L2TP | UDP | 1701 |
| SSTP | TCP | 443 |
| GlobalProtect | HTTP | 443 |
| AnyConnect | HTTP | 443 |
| FortiGate | HTTP | 443 |
| STUN/TURN | UDP | 3478, 5349 |
| Kerberos | TCP | 88 |
Accesso Remoto e Gestione (10)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| RDP | TCP/TLS | 3389 |
| VNC | TCP | 5900 |
| Telnet | TCP | 23 |
| WinRM | HTTP | 5985, 5986 |
| IPMI | UDP | 623 |
| SNMP | UDP | 161 |
| Zabbix Agent | TCP | 10050 |
| NRPE | TCP/TLS | 5666 |
| Docker | TCP/TLS | 2375, 2376 |
| X11 | TCP | 6000-6063 |
Strumenti per Sviluppatori (8)
| Protocollo | Trasporto | Porte Predefinite |
|---|---|---|
| HTTP/HTTPS | TCP | 80, 443, 8080, 8443 |
| Java RMI | TCP | 1099 |
| JDWP | TCP | 5005 |
| RTSP | TCP | 554 |
| Linux RPC | TCP | 111 |
| JetDirect | TCP | 9100 |
| CUPS/IPP | TCP | 631 |
| SonarQube | TCP | 9000 |
Utilizzo della Libreria
Importa Nerva nelle tue applicazioni Go:```go package main
import ( "context" "fmt" "log" "net/netip" "time"
"github.com/praetorian-inc/nerva/pkg/plugins"
"github.com/praetorian-inc/nerva/pkg/scan"
)
func main() { // Configure scan config := scan.Config{ DefaultTimeout: 2 * time.Second, FastMode: false, UDP: false, Proxy: "socks5://127.0.0.1:1080", // optional ProxyAuth: "username:password", // optional DNSOrder: "p", // resolver strategy }
// Create target
ip, _ := netip.ParseAddr("93.184.216.34")
target := plugins.Target{
Address: netip.AddrPortFrom(ip, 22),
Host: "example.com",
}
// Run scan
results, err := scan.ScanTargets(context.Background(), []plugins.Target{target}, config)
if err != nil {
log.Fatal(err)
}
// Process results
for _, result := range results {
fmt.Printf("%s:%d - %s (%s)\n",
result.Host, result.Port,
result.Protocol, result.Transport)
}
}
Vedi [examples/service-fingerprinting-example.go](https://github.com/praetorian-inc/nerva/blob/HEAD/examples/service-fingerprinting-example.go) per un esempio completo funzionante.
## Casi d'Uso
### Test di Penetrazione
Fingerprint rapidamente i servizi scoperti durante la ricognizione per identificare potenziali vettori d'attacco.
### Pipeline di Scoperta degli Asset
Combina con Naabu o Masscan per un inventario degli asset su larga scala:```sh
naabu -host 10.0.0.0/24 -silent | nerva --json | jq '.protocol'
Scansione di sicurezza CI/CD
Integra nelle pipeline di deployment per verificare che siano esposti solo i servizi previsti.
Ricognizione per Bug Bounty
Enumera rapidamente i servizi tra i target in ambito per trovare endpoint interessanti.
Analisi di reti di telecomunicazione
Identifica i nodi Diameter nelle reti LTE/5G utilizzando il trasporto SCTP (Linux):```sh nerva -t mme.telecom.local:3868 -S --json
## Architettura```mermaid
graph LR
A[host:port input] --> B[Target Parser]
B --> C[Scan Engine]
C --> D{Transport}
D -->|TCP| E[TCP Plugins]
D -->|UDP| F[UDP Plugins]
D -->|SCTP| G[SCTP Plugins]
E --> H[Service Detection]
F --> H
G --> H
H --> I[Metadata Extraction]
I --> J[JSON/CSV/Text Output]
Perché Nerva?
vs Nmap
- Impostazioni predefinite più intelligenti: Nerva controlla prima il protocollo più probabile in base al numero di porta
- Output strutturato: Supporto nativo per JSON/CSV per un facile parsing e integrazione in pipeline
- Mirato: Solo fingerprinting del servizio — abbinalo a scanner di porte dedicati per la scoperta
vs zgrab2
- Rilevamento automatico: Nessuna necessità di specificare il protocollo in anticipo
- Utilizzo più semplice:
nerva -t host:portvsecho host | zgrab2 http -p port
Risoluzione dei problemi
Nessun output
Causa: La porta è chiusa o nessun servizio supportato rilevato.
Soluzione: Verifica che la porta sia aperta:```sh nc -zv example.com 80
### Errori di timeout
**Causa**: Il timeout predefinito di 2 secondi è troppo breve per servizi lenti.
**Soluzione**: Aumentare il timeout:```sh
nerva -t example.com:80 -w 5000 # 5 seconds
Servizi UDP non rilevati
Causa: Scansione UDP disabilitata per impostazione predefinita.
Soluzione: Abilitala con il flag -U (potrebbe richiedere i permessi di root):```sh
sudo nerva -t example.com:53 -U
### SCTP non funzionante
**Causa**: SCTP è supportato solo su Linux.
**Soluzione**: Eseguire su un sistema o container Linux:```sh
docker run --rm nerva -t telecom:3868 -S
Terminologia
- Servizio: Un servizio di rete in esecuzione su una porta (SSH, HTTP, PostgreSQL, ecc.)
- Fingerprinting: Rilevamento e identificazione del tipo di servizio, versione e configurazione
- Plugin: Un modulo di rilevamento specifico per protocollo
- Modalità veloce: Scansione solo della porta predefinita per ogni protocollo (ottimizzazione 80/20)
- Trasporto: Protocollo di livello rete (TCP, UDP o SCTP)
Supporto
Se trovi Nerva utile, considera di dargli una stella:
Contribuire
Accogliamo con favore i contributi! Vedi CONTRIBUTING.md per le linee guida.
Licenza
Apache 2.0 — vedi LICENSE per i dettagli.
Riconoscimenti
Nerva è un fork mantenuto di fingerprintx, originariamente sviluppato dalla classe di stagisti di Praetorian del 2022: