Nikto icon

Nikto

Nikto is a powerful and widely-used open-source web server scanner designed to identify potential security vulnerabilities and misconfigurations. It performs comprehensive tests against web servers to detect dangerous files, outdated server versions, and version-specific problems.

Chris Sullo and David Lodge

License

Open Source

Platforms

Mac OS X Windows Linux

About Nikto

Comprehensive Web Server Scanning

Nikto is a robust and battle-tested web server scanner that acts as a front-line tool for identifying common security weaknesses. It is an essential utility for security professionals and web administrators looking to proactively assess the security posture of their web infrastructure.

What Nikto Checks For:

  • Potentially Dangerous Files and Programs: Nikto maintains a vast database of over 6,700 known dangerous files and programs often left on web servers, which could be exploited by attackers.
  • Outdated Server Versions: It checks for over 1,250 outdated server versions, flagging those with known vulnerabilities. Running outdated software is a significant security risk.
  • Version-Specific Issues: Nikto is aware of version-specific problems on over 270 servers, allowing it to identify vulnerabilities relevant to the precise software running on the target.
  • Server and Program Configuration Errors: It looks for common configuration errors that can expose sensitive information or create attack vectors.
  • Insecure Files and Directories: Nikto identifies insecure files and directories that are commonly accessible and can reveal system information or allow unauthorized access.
  • Default Installations: It checks for default installations of web applications and server components, which often contain known vulnerabilities.
  • Presence of Various Index Files: It probes for different index files, which unintentional exposure can reveal directory contents.
  • HTTP Options and Methods: Nikto tests for enabled HTTP options and methods that might pose a security risk.
  • Cross-Site Scripting (XSS) and SQL Injection (SQLi) Vectors: While not a full-fledged web application scanner like Burp Suite or OWASP ZAP, Nikto includes basic tests for common XSS and SQLi vectors related to the server configuration and common endpoints.

Key Features and Capabilities:

  • SSL Support: Scans can be performed over SSL, essential for testing secure websites.
  • Proxy Support: Nikto can route scans through a proxy, useful for testing from different locations or for anonymity.
  • LibWhisker's Anti-IDS Methods: Nikto incorporates LibWhisker's anti-IDS methods to attempt to evade detection by Intrusion Detection Systems.
  • Templating Engine: Allows for customization of reports and output formats.
  • Multiple Output Formats: Results can be output in various formats, including plain text, XML, HTML, and CSV.
  • Host Authentication: Supports basic host authentication for scanning protected areas of a website.
  • Subdomain Scanning: Can infer and probe subdomains.
  • Scan Tuning: Provides options to tune the scope and type of tests performed.

Nikto's strength lies in its extensive database of known vulnerabilities and misconfigurations and its ability to quickly perform broad scans across a wide range of web servers. While it is not a substitute for a dedicated web application vulnerability scanner, it serves as an excellent initial reconnaissance tool to identify low-hanging fruit and common server-side issues.

Pros & Cons

Pros

  • Excellent at finding common web server vulnerabilities and misconfigurations.
  • Quick to run and easy to get started with for basic scans.
  • Large and regularly updated database of known issues.
  • Free and open source, making it highly accessible.
  • Supports key features like SSL and proxying.

Cons

  • Primarily focuses on server-side issues, not comprehensive for web application vulnerabilities.
  • Can generate false positives requiring manual verification.
  • Activity can be noisy and potentially detected by security monitoring systems.
  • Command-line interface may have a slight learning curve for some users.
  • Customizing the checks requires technical effort.

What Makes Nikto Stand Out

Open Source and Free

Nikto is freely available and open-source, making it accessible to anyone for security testing and education.

Large and Regularly Updated Database

Its comprehensive and frequently updated database of vulnerabilities ensures it can identify a wide range of known issues.

Ease of Use

Nikto is relatively simple to install and run, providing a quick way to get an initial security assessment of a web server.

Features & Capabilities

11 features

Expert Review

Nikto Web Server Scanner: A Comprehensive Review

Nikto stands as a venerable and essential tool in the arsenal of network security professionals, penetration testers, and curious individuals alike. As an open-source web server scanner, its primary function is to perform a battery of tests against web servers to uncover potential security vulnerabilities and misconfigurations. This review delves into its capabilities, strengths, and limitations.

Core Functionality and Scope

At its heart, Nikto is designed to identify 'low-hanging fruit' on web servers. Its methodology involves checking for a vast array of known issues, primarily focusing on server-side vulnerabilities rather than complex web application logic flaws (though it touches on basic injection vectors). The sheer scale of its signature database is impressive, covering thousands of potentially dangerous files, outdated server versions, and version-specific vulnerabilities. This extensive coverage allows Nikto to quickly flag common and often easily exploitable weaknesses that arise from poor configuration, unpatched software, or leftover development files.

Key Testing Areas:

  • File and Directory Enumeration: Searching for common and known insecure files (like backup files, configuration files, log files) and directories that might contain sensitive information or provide access to restricted areas.
  • Server Software Identification: Attempting to identify the specific web server software (e.g., Apache, Nginx, IIS) and its version to check for known vulnerabilities associated with that version.
  • Web Application Fingerprinting: While not a full web application scanner, it can sometimes identify the presence of common web applications (like WordPress, Joomla) based on file structures or characteristic responses, although this capability is limited compared to dedicated tools.
  • Configuration Weaknesses: Identifying issues like allowed HTTP methods (PUT, DELETE), misconfigured headers, or directory indexing enabled.

Usability and Interface

Nikto is primarily a command-line tool, which is typical for many security utilities. Its interface is straightforward and logical. Running a basic scan is as simple as specifying the target hostname or IP address. The tool provides numerous command-line options to customize the scan, including specifying ports, enabling SSL, using a proxy, performing host authentication, and tuning the types of tests performed. While this provides flexibility, navigating the extensive list of options might require consulting the documentation for new users.

The output of a Nikto scan is text-based by default, though it can generate reports in XML, HTML, and CSV formats. The text output, while verbose, is usually clear in indicating the detected vulnerabilities and providing references (like CVE IDs where applicable) for further research. The alternative output formats are valuable for integrating Nikto scans into larger security workflows or for easier review and reporting.

Performance and Speed

Nikto is generally fast at performing its checks. The speed of a scan depends on factors such as network latency, the responsiveness of the target server, and the complexity of the target website. Because it primarily relies on sending numerous carefully crafted requests and analyzing responses, it can generate significant network traffic, which might potentially trigger IDS/IPS systems. While Nikto includes some basic anti-IDS techniques, advanced security monitoring systems may still detect its activity.

Strengths

  • Extensive Database: The sheer volume of checks Nikto performs against its database of known vulnerabilities is its biggest strength. It's excellent at finding well-documented, common issues.
  • Ease of Getting Started: For a basic scan, Nikto is very easy to use. This makes it a good starting point for testing.
  • Open Source and Free: Being open source makes it accessible to a wide audience and allows for community contributions to its database and features.
  • Quick Scans: Nikto can perform relatively quick scans compared to deep web application vulnerability scanners.
  • Flexibility: Numerous command-line options provide good control over the scan process.

Limitations

  • Focus on Server-Side Issues: Nikto is primarily a web server scanner, not a comprehensive web application vulnerability scanner. It won't find complex logical flaws, business logic errors, or advanced injection vulnerabilities within the web application code itself.
  • Potential for False Positives: Like any scanner relying on pattern matching against a database, Nikto can sometimes report false positives, requiring manual verification of the findings.
  • Detection Risk: While it has anti-IDS measures, it's a noisy tool and can be detected by security monitoring.
  • Limited Customization of Checks: While you can tune the types of checks, adding entirely new, custom vulnerability checks requires modifying the Nikto code or database files, which isn't a trivial task for the average user.

Conclusion

Nikto is an indispensable tool for anyone involved in web server security. Its strength lies in its speed and its extensive, frequently updated database of common web server vulnerabilities and misconfigurations. It's an excellent tool for initial reconnaissance, identifying low-hanging fruit, and quickly assessing the security posture of a web server from an external perspective. However, it's crucial to understand its limitations. Nikto should be used as part of a broader security testing strategy that includes dedicated web application vulnerability scanners, manual testing, and code review for identifying complex application-level flaws. For its intended purpose – identifying common server-side vulnerabilities – Nikto remains a top-tier open-source solution.

Similar Apps

Compare features and reviews between these alternatives.

Compare

Compare features and reviews between these alternatives.

Compare

Compare features and reviews between these alternatives.

Compare