Nikto Web Server Scanner: 7 Useful Checks for Beginners
The Nikto web server scanner is one of those tools that looks almost too simple at first: give it a host, let it make requests, then read what comes back. The useful part is not the scrolling terminal text itself. It is the way Nikto quickly points you toward exposed files, revealing headers, outdated server software, default content, and configuration choices that deserve a closer manual look.
In my own lab I use the Nikto web server scanner as an early reconnaissance step, not as a magic vulnerability button. I want a fast map of the web server before I decide what deserves more time. That distinction matters because a Nikto finding can be important, informational, outdated, or simply something that needs verification. The scanner gives me leads; I still have to do the thinking.
If practical ethical-hacking walkthroughs are your thing, you can also join the HackersGhost newsletter. I use it to keep readers close to the hands-on side of the site rather than burying useful lab notes under another pile of generic security advice.
| Check | Command idea | Why I use it |
|---|---|---|
| Baseline scan | -h target | Fast view of server exposure |
| Focused scan | -Tuning 123b | Reduce irrelevant checks |
| Saved report | -o report.html | Verify findings calmly later |
This Nikto guide walks through seven useful checks, explains what does Nikto do well, shows several practical Nikto examples, and makes the limits clear. Everything here assumes a system you own, an intentionally vulnerable lab, or a target for which you have explicit permission to test.
Key Takeaways From This Nikto Web Server Scanner Guide
- The Nikto web server scanner is best used as an early web-server reconnaissance tool, not as proof that every reported item is exploitable.
- A basic Nikto web server scan is often enough to reveal software banners, interesting files, configuration clues, and security-header issues worth verifying.
- Nikto examples become much more useful once you understand what each flag changes instead of copying commands blindly.
- Focused tuning can save time, but the tuning codes describe categories of tests; they are not a universal “quick scan” mode.
- Nikto supports host authentication, proxy use, multiple output formats, and selectable plugins.
- Nikto can scan a WordPress web server, but it should not be confused with a dedicated WordPress vulnerability scanner.
- The best habit is simple: read, verify, reproduce, then document. A scanner should support your judgement, not replace it.
What Is Nikto Used For and What Does Nikto Do
What is Nikto used for in a real lab workflow
What is Nikto used for? At its core, Nikto is an open-source web server security scanner. It checks a target for potentially dangerous or interesting files, default content, server and software identification, outdated components, configuration issues, and other clues that may point a human tester toward deeper investigation.
People sometimes call it a Nikto web application scanner, but I prefer to be more precise. The Nikto web server scanner is primarily concerned with the web server and the resources it exposes. It can identify useful application-related clues, but it is not a replacement for testing business logic, authorization flows, complex injection paths, or application-specific behavior by hand.
HackersGhost Note: I treat Nikto like the colleague who walks into a server room, points at six things and says, “I would look at those.” Useful colleague. Still not the person who writes the final report.

Check #1 – Run a Basic Nikto Web Server Scan
Most Nikto examples start with the same command because it establishes a useful baseline. Point the Nikto web server scanner at a host or URL you control and let the default checks run.
nikto -h http://target.local
That first Nikto web server scan can reveal the server banner, software identification clues, interesting paths, default files, missing or unusual headers, and test results from Nikto’s active database. I use this first pass to answer a simple question: what does Nikto do with the target before I start narrowing the scan?
A useful beginner habit is to copy the target details and a few important findings into your notes before running anything else. It sounds boring until you have five terminals open and cannot remember which result came from which machine. Ethical hacking contains more note-taking than the movie version promised.
Check #2 – Inspect Headers With the Nikto Web Server Scanner
Headers can disclose server technology, caching behavior, security controls, framework clues, and other context. Instead of misusing a tuning category as a “header mode,” I prefer to check which plugins are available and use the dedicated header plugin when it is present in my installed build.
nikto -list-plugins
nikto -h http://target.local -Plugins headers
The Nikto web server scanner may flag missing defensive headers or information disclosed in responses. I do not automatically label every missing header a vulnerability. Context matters. A header finding is much more useful when I can explain what it changes for that specific application and whether the underlying behavior is actually exposed.
HackersGhost Note: Headers are wonderfully unglamorous. They also save me from guessing. I would rather spend two minutes reading them than twenty minutes inventing a theory the server already answered.
Password Cracking: 7 Reasons Weak Passwords Fail Fast
More Nikto Examples for Focused Web Server Checks
Check #3 – Save Nikto Web Server Scanner Output
Terminal output is fine while a scan is running. It is much less pleasant when you want to verify a finding later. The Nikto web server scanner supports several report formats, and HTML is convenient for a beginner because you can open it locally in a browser and work through the findings without fighting your shell history.
nikto -h http://target.local -o nikto-report.html -Format htm
This is one of my favorite Nikto examples because it improves the workflow without making the scan more complicated. I can keep the report beside screenshots, notes, and manual validation results. When I revisit the same lab target later, I also have something concrete to compare instead of relying on memory.
Check #4 – Use Nikto Tuning for a More Focused Scan
The Nikto web server scanner lets you select categories through the -Tuning option. This is useful when you already know what kind of information you want. For example, categories 1, 2, 3, and b cover interesting files, misconfiguration or default files, information disclosure, and software identification.
nikto -h http://target.local -Tuning 123b
I deliberately call this a focused scan rather than pretending there is one universal Nikto quick scan. Tuning narrows the test categories. It does not magically know which checks matter most for every target. If you want to understand the syntax properly, run nikto -Help and read the tuning list on your own installed version.
Check #5 – Use Nikto With Authentication You Already Control
Some web servers expose different resources after HTTP authentication. Nikto supports host authentication through the -id option. In a lab where I have created the credentials myself, I can provide those credentials to the Nikto web server scanner rather than pretending the protected area does not exist.
nikto -h http://target.local -id labuser:labpassword
This is not password cracking. Nikto is using credentials you supply. I keep lab credentials disposable and unique so there is zero temptation to recycle anything connected to a personal account. The goal is to see how the server behaves for an authenticated request and whether additional server-side exposure becomes visible.

Advanced Nikto Web Server Scanner Checks for Lab Workflows
Check #6 – Route the Nikto Web Server Scanner Through a Proxy
Proxy support becomes useful when I want to see the raw requests that Nikto is generating. The Nikto web server scanner can use a proxy defined in its configuration or one supplied directly on the command line.
nikto -h http://target.local -useproxy http://127.0.0.1:8080
If I point the Nikto web server scanner at a local intercepting proxy in my own lab, I can compare a Nikto finding with the actual HTTP exchange that triggered it. This is where automated reconnaissance becomes much more educational: I stop seeing “scanner says X” and start seeing the request, response, status code, headers, and body that led to X.
Running the Nikto web server scanner through a proxy can also help troubleshoot confusing results. A proxy may alter traffic, so I keep that possibility in mind when something looks different from a direct scan. The point is visibility, not adding another mysterious layer and then blaming Nikto for it.
Check #7 – Use Nikto on a WordPress Lab Without Pretending It Is WPScan
WordPress is a useful target for learning because it sits on top of a normal web server and can expose familiar files, headers, paths, and server configuration clues. I can run the Nikto web server scanner against a WordPress installation I control exactly as I would against another web target.
nikto -h http://wordpress-lab.local
If WordPress lives below the web root, I can point Nikto at that location rather than inventing a WordPress-specific plugin command:
nikto -h http://target.local -root /wordpress/
This correction matters. The Nikto web server vulnerability scanner can identify server-side clues around a WordPress site, but it is not a dedicated CMS vulnerability database scanner. If my question is specifically about WordPress core, themes, plugins, or user enumeration, I move to a tool designed for that job after the general web-server pass.
HackersGhost Note: I like Nikto on WordPress labs because it forces me to separate “the website” from “the web server underneath it.” That sounds obvious until a scanner gives you thirty lines of output and your brain tries to file all thirty under WordPress.
Hydra Kali Linux Explained for Ethical Hacking Labs
How to Install Nikto on Kali Linux and Keep It Current
How to install Nikto on Kali Linux
If you searched for how to install Nikto on Kali Linux, the package is available directly through Kali’s repositories. Some installations may already include it, but I prefer to check instead of assuming.
nikto -Version
sudo apt update
sudo apt install nikto
For the Nikto web server scanner, that is the boring answer, which is good. Installing security tools from the distribution package manager is usually easier to maintain than collecting random scripts from old tutorials. The official Kali Linux project also maintains its own tools catalogue, which is where I check package availability when a command behaves differently from a tutorial.
Keeping the Nikto web server scanner current
Older tutorials often tell readers to run nikto -update. I would not build a current workflow around that advice. For a Kali package, I keep the Nikto web server scanner updated through the package manager. If I deliberately installed the upstream Git repository instead, I update that Git checkout according to the upstream project instructions.
sudo apt update
sudo apt install --only-upgrade nikto
I also run nikto -Version when I am troubleshooting. That gives me a concrete starting point before I start blaming a flag, a plugin, or the universe. Version-aware troubleshooting matters because Nikto’s options and reporting behavior can evolve.
Understanding Nikto Tuning Without Memorizing Every Code
You do not need to tattoo the tuning list on your forearm. I remember the categories I use frequently and check nikto -Help for the rest. The useful concept is that -Tuning includes selected classes of tests, while the reverse-tuning option can exclude categories instead.
For my beginner lab work, information disclosure, misconfiguration, interesting files, and software identification are often enough to make a focused Nikto web server scan educational. If a later manual test suggests a narrower hypothesis, I can change the categories. The Nikto web server scanner becomes more useful when the command reflects a question I actually have.

My Own Lab Setup for the Nikto Web Server Scanner
I run these tests from virtual machines on a second-hand HP EliteBook that I upgraded with another 16 GB of RAM, bringing it to 32 GB. I chose VMware for my current lab and keep both Kali Linux and Parrot OS available, although Parrot OS is the machine I use most often. The extra memory matters more to me than having a shiny new laptop because several isolated VMs can stay running without turning the host into warm pudding.
My lab also contains intentionally vulnerable systems, so the Nikto web server scanner has something meaningful to inspect. I keep those targets separated from normal personal activity. My Cudy WR3000 handles a ProtonVPN WireGuard connection with Secure Core for the outbound side of the lab, while a TP-Link Archer C6 is kept as a deliberately vulnerable test router and is not used as a bridge into my normal home network.
The important lesson is not that everyone needs my exact hardware. You do not. The lesson is that isolation, disposable credentials, snapshots, and clear target ownership make experiments repeatable. A VPN is useful for my wider privacy setup, but it does not turn an unauthorized scan into an authorized one and it does not replace network isolation.
HackersGhost Note: My favorite lab feature is not a hacking tool. It is the snapshot button. Breaking a vulnerable VM is educational; rebuilding it from scratch every Tuesday is character development I can live without.
A hands-on reference that fits beside a Nikto guide
If you want a structured book beside the terminal, Penetration Testing: A Hands-On Introduction to Hacking is a relevant companion because it puts reconnaissance into a broader testing workflow instead of teaching isolated commands with no context.
For a wider application-security reference, I also keep an eye on the OWASP project. I use it as context for what automated reconnaissance can and cannot tell me about a web application.
Protecting the Rest of My Lab While I Scan
The Nikto web server scanner is intentionally noisy, so I design my lab around containment rather than stealth. My vulnerable targets live where I expect them to live, my personal accounts stay elsewhere, and my outbound privacy stack is separate from the permission question. That makes it much easier to understand what a packet is doing and where it is allowed to go.
Because I already use Proton services around my lab, Proton Unlimited is the main privacy bundle that fits naturally here. It combines several services I would otherwise manage separately, including Proton VPN, Mail, Drive, and Pass.
Proton Unlimited brings Proton VPN, Proton Mail, Proton Drive, and Proton Pass under one subscription. If you already use several Proton services around your lab or daily privacy setup, the bundle is usually the more convenient option.
Gobuster Tutorial for Beginners: Find Hidden Directories Safely
How I Read Nikto Web Server Scanner Output Without Overreacting
A realistic Nikto example from my own scanning sessions
When the Nikto web server scanner returns a long list, the count is the least interesting part to me. I first separate informational findings from configuration issues and items that appear to map to a specific security problem. Then I verify the response that caused the flag.
On intentionally outdated lab machines, Nikto can be wonderfully chatty. I may see version disclosure, default pages, risky files, missing headers, and references that sound more serious than they are in context. I do not grade the server by how red the terminal feels. I ask whether I can reproduce the observation and explain why it matters.
This is where the saved HTML report and proxy workflow earn their keep. If a result is unclear, I inspect the request and response, compare it with the actual server configuration, and decide whether the finding is confirmed, informational, or not applicable. That process teaches me more than running three additional scanners over the same target.
HackersGhost Note: A forty-line scan result is not forty vulnerabilities. Sometimes it is twelve useful clues, twenty-six observations, one false positive, and one line that ruins your coffee because it is actually interesting.
Common mistakes when learning Nikto examples
The biggest beginner mistake is treating the Nikto web server vulnerability scanner as an exploit validator. Nikto’s own design is better understood as a way to find potential problems and pointers for manual testing. A positive result deserves investigation, not instant certainty.
The second mistake is scanning systems without permission. “I only ran Nikto” is not a permission model. Keep practice inside your own environment, a legal training platform, or an engagement with explicit authorization and scope.
The third mistake is copying old Nikto examples from search results without checking the current help output. That is how options such as a supposed WordPress plugin or outdated update instructions keep circulating long after they stop matching a current installation.
Why Reading a Nikto Web Server Scan Slowly Beats Running More Tools
The Nikto web server scanner can create the illusion that speed equals progress. For me, the useful part begins after the Nikto web server scan stops. I check the target, the response, the severity implied by the message, and whether another manual request reproduces the same behavior.

When the Nikto Web Server Scanner Is the Right Tool
The Nikto web server scanner is a good choice when I want a quick first pass over a web server, especially an older or intentionally vulnerable lab target. It is useful for surfacing configuration clues, software identification, potentially interesting files, and other server-side observations that I can verify manually.
It is not the tool I choose when the real question is complex authorization, session logic, a multi-step business workflow, or deep testing of a specific CMS ecosystem. Calling Nikto a Nikto web application scanner can be convenient for search language, but technically I still think of it as a web-server scanner that contributes to application testing rather than replacing it.
That narrower role is a strength. I would rather have a tool that performs one part of reconnaissance predictably than one that claims to understand every layer of a modern application. Nikto gives me a useful starting map, then I choose the next tool based on what the map actually shows.
My Final Take on the Nikto Web Server Scanner
The Nikto web server scanner still earns a place in my lab because it is fast to start, easy to understand at a basic level, and capable of showing me enough about a web server to guide the next step. Its value rises sharply once I stop treating the output as a verdict and start treating it as evidence to inspect.
If you are learning what does Nikto do, begin with the basic command, save the output, learn the tuning categories, inspect headers, and try the proxy workflow. Add authentication only with credentials you control. On a WordPress lab, scan the underlying web service first and use dedicated CMS tooling when your question becomes WordPress-specific.
That is the workflow I trust: scan, read, verify, document, then choose the next step. The Nikto web server scanner is not flashy, and that is part of its charm. It gives me a useful pile of clues and leaves the interesting part — understanding them — to me.

Frequently Asked Questions
What is Nikto used for in web application testing
Nikto is used to examine web servers for potentially risky files, outdated software, information disclosure, default content, server identification, and configuration issues. I use it as reconnaissance that points me toward manual verification.
What does Nikto do on a web server
The Nikto web server scanner sends HTTP requests and compares the responses with its checks and plugins. It can report server clues, interesting resources, security-header observations, software identification, and other potential problems that deserve validation.
How to install Nikto on Kali Linux
Use Kali’s package manager: run sudo apt update followed by sudo apt install nikto. You can check the installed build with nikto -Version.
How do I run a Nikto web server scan
For a system you own or are authorized to test, a basic command is nikto -h http://target.local. Start there before adding tuning, authentication, proxy, or reporting options.
Is Nikto a web application scanner
The Nikto web server scanner contributes to web application testing, but it is more precise to keep its web-server focus in mind. It does not replace manual testing of authorization, business logic, sessions, or application-specific behavior.
Should I trust every Nikto web server vulnerability scanner finding
No. Treat findings as leads. Reproduce the response, inspect the server context, and verify whether the issue is exploitable, informational, outdated, or not applicable before reporting it as a vulnerability.
Web Security & Credential Testing Cluster
- FFUF Tutorial for Beginners: 9 Practical Fuzzing Examples
- Password Cracking: 7 Reasons Weak Passwords Fail Fast
- Gobuster Tutorial for Beginners: Find Hidden Directories Safely
- Hydra Kali Linux: 7 Practical Tests on Parrot OS Too
- Nikto Web Server Scanner: 7 Useful Checks for Beginners
- How to Use Burp Suite Without 7 Common Beginner Mistakes
Some links in this article are affiliate links. If you use them, I may earn a small commission — at no extra cost to you. I only recommend tools I’ve actually tested inside my own cybersecurity lab. Read the full disclaimer.
In many cases, these links unlock better deals than you’ll find on your own.
No paid reviews. No sponsored opinions. Just real testing and real setups.
If you decide to use them, you’re not just getting a discount — you’re helping keep this lab running.

