Practical documentation · Authorized use only
Nikto
Nikto checks web servers for known risky files, configurations, and signatures. It is a useful low-depth server-hygiene input when tightly scoped, but its noisy requests and finding quality require an approved window and careful manual verification.
Start safely and get useful results
Best for
- • Owned web-server hygiene review
- • Lab baseline checks
Not for
- • Stealth scanning
- • Application exploit validation
Before you run anything
- • Document the authorized target, time window, success criteria, data-handling rules, and a named stop contact before you begin.
- • Confirm the installed version with the tool’s version or help command, then compare its documented behavior with the linked upstream project before relying on any option.
Practical workflows
Scan a local lab server
Scenario: Identify insecure defaults in a disposable HTTP server.
nikto -h http://localhost:8080 -output nikto-local.txtTarget only the local server and save raw output for verification.
Expected use: Expect checks for headers, files, and misconfiguration patterns; most need manual confirmation.
Constrain an approved staging run
Scenario: A server owner grants a defined test window.
nikto -h https://staging.example.invalid -Tuning 1,2,3 -output nikto-staging.txtLimit test classes according to the approved plan; verify current tuning semantics in the installed help.
Expected use: Review unexpected requests with the server owner and correlate with access logs.
Interpret results like an analyst
- • A path or banner match may be obsolete, protected, or non-exploitable.
- • Separate configuration findings from application findings and capture the response evidence.
Common mistakes and operating tips
Avoid
- • Running default broad checks during busy production periods.
- • Reporting generic banner/version matches without patch verification.
Operational discipline
- • Treat command output as evidence, not a conclusion: retain the command, version, scope, timestamp, and a redacted result in the engagement record.
- • Start with the smallest safe scope, validate expected behavior in a lab or pilot, then expand only when the authorization and monitoring plan support it.
Verify against the current upstream
Tool behavior and release syntax can change. Treat this guide as practical operating context, then verify version-specific details against the upstream project before an assessment.
Open authoritative upstream documentation