Cyber Research Wiki

Nikto

Nikto is a Perl-based web server scanner that performs tests for dangerous files/CGIs, outdated server software, and common misconfigurations, producing machine- and human-readable reports.

Overview

Nikto is an open-source, signature- and check-database–driven scanner for HTTP/HTTPS services. It emphasizes rapid identification of known, patternable server-side issues rather than deep application logic flaws. Maintained on GitHub with a plugin-based architecture and a checks database, it generates JSON, XML, HTML, CSV, and text outputs to support both human review and system integration. As of February 2026, project documentation targets version 2.6.0. The tool is frequently employed for reconnaissance and baseline assessments and is often embedded in automated pipelines to surface common web server risks quickly.

What It Is

Nikto is a command-line scanner for web services that targets misconfigurations, default content, risky resources, and server/software versions that may correspond to public vulnerabilities. It is implemented in Perl with historical use of the LibWhisker HTTP library. Typical use includes reconnaissance and baseline assessments, as well as integration into orchestrated or CI/CD environments to detect low-hanging issues on HTTP/HTTPS endpoints.

How It Works

Nikto executes a corpus of tests defined in a checks database and organized via plugins. At the transaction layer, it issues HTTP(S) requests—optionally through proxies—and can follow redirects and reuse cookies to maintain session state where applicable. Tests encompass file and directory discovery, server option and method checks, banner and header analysis, default and administrative path probing, and version identification. Results are categorized by test or plugin identifiers with descriptive context such as URLs, headers, and banners, and can include tool-defined severity indicators. Reporting in multiple machine- and human-readable formats facilitates downstream ingestion. Code and test updates are distributed via the project’s GitHub repository and can be synchronized regularly.

Core Concepts

Typical Workflow

Use Cases

Limitations

Related Tools

Evidence Gaps

Sources

Confidence

high