Skip to main content
Open Source Security Scanner

Fast, Modular
Security Scanner

Detect open ports, collect service banners, and perform CVE matching with Pentora's extensible plugin system.

10x
Faster scanning
100%
Open source
0
Dependencies
$ pentora scan 192.168.1.1 --vuln

Scanning 192.168.1.1...
 Port 22 open - SSH-2.0-OpenSSH_8.2p1
 Port 80 open - nginx/1.18.0
 CVE-2021-3156 detected on port 22
Scan complete: 3 ports, 1 vulnerability found
Features

Everything you need for
modern security scanning

Built for speed, designed for extensibility

Lightning Fast

Optimized concurrent scanning engine for rapid network discovery and analysis.

🔍

Service Detection

Intelligent banner grabbing with protocol-aware parsers for SSH, HTTP, FTP, and more.

🛡️

CVE Matching

Optional vulnerability detection with plugin-based CVE matching system.

🧩

Extensible Plugins

Build custom vulnerability checks with simple Go plugin architecture.

💻

Cross-Platform

Native binaries for macOS, Linux, and Windows with zero dependencies.

🎯

Developer Friendly

Clean CLI interface with JSON output support for automation and integration.

How it works

Three simple steps to
comprehensive scanning

01

Port Discovery

Fast TCP/UDP port scanning with customizable port ranges and timeout settings. Concurrent connection handling for maximum performance.

pentora scan 192.168.1.1 --ports 1-65535
02

Service Detection

Intelligent banner grabbing and protocol-aware parsing for accurate service identification across multiple protocols.

pentora scan 192.168.1.1 --service-detection
03

Vulnerability Analysis

Plugin-based CVE matching evaluates detected services against known vulnerabilities with detailed reporting.

pentora scan 192.168.1.1 --vuln --output json
Extensible

Build custom
vulnerability checks

Create custom vulnerability checks with simple Go code. The plugin system is designed to be intuitive and powerful, allowing you to extend Pentora's capabilities without modifying the core.

  • Simple Go plugin architecture
  • Hot-reload plugin support
  • Custom CVE matching logic
  • Built-in testing framework
Learn about plugins →
ssh_plugin.go
plugin.Register(&plugin.Plugin{
  ID: "ssh_cve_2016_0777",
  Name: "OpenSSH 7.1p2 Vulnerability",
  RequirePorts: []int{22},
  RequireKeys: []string{"ssh/banner"},

  MatchFunc: func(ctx map[string]string) *plugin.MatchResult {
    banner := ctx["ssh/banner"]

    if strings.Contains(banner, "OpenSSH_7.1p2") {
      return &plugin.MatchResult{
        CVE: []string{"CVE-2016-0777"},
        Summary: "Roaming vulnerability",
        Severity: "HIGH",
        Port: 22,
      }
    }

    return nil
  },
})

Trusted by security teams worldwide

Open Source
Apache 2.0
🛡Security First

Ready to get started?

Join the community and start scanning today. It's open source and free.