Web servers are an essential part of modern applications. They handle requests from browsers, deliver websites, communicate with applications and often connect to databases and other services.
As web servers are exposed to users and networks, security professionals need to regularly check them for outdated software, insecure configurations and other potential weaknesses.
One tool beginners may encounter while learning web security is Nikto. Nikto is an open-source web server scanner designed to identify potentially dangerous files, outdated software, insecure configurations and other issues associated with web servers.
In this beginner-friendly guide, we’ll explain what Nikto is, how it works, what it can identify, how it fits into a security assessment and how beginners can safely practice with it.
New to Ethical Hacking?
Start your journey with The Beginner Ethical Hacker Starter Kit (2026 Edition).
Inside the free guide, you’ll learn:.
- Ethical hacking fundamentals
- Beginner cybersecurity roadmap
- Essential hacking tools
- Common vulnerabilities explained
What Is Nikto?
Nikto is an open-source web server scanner used to assess web servers for potential security problems. It performs various checks against a web server and compares what it discovers against its collection of security tests.
Nikto can help security professionals identify issues involving:
- Outdated server software
- Potentially dangerous files
- Insecure configurations
- Default or unusual resources
- Known server-related problems
Nikto is primarily an assessment and reconnaissance tool. It should not be viewed as a tool that automatically compromises a web server.
Why Is Nikto Useful?
Web applications can contain many components.
A typical website might involve:
Browser → Web Server → Application → Database
The web server is an important part of this architecture. If it is outdated or incorrectly configured, it can introduce security risks. Nikto helps automate some of the initial checks that a security professional might otherwise have to perform manually. This makes it useful for learning the basics of web-server security assessment.
How Does Nikto Work?
At a high level, Nikto follows a straightforward process.
1. Connect to the Authorized Web Server:
The tester identifies a web server they are authorized to assess.
2. Identify Server Information
Nikto attempts to determine information about the web server and its configuration.
3. Perform Security Checks
It performs various tests designed to identify potentially interesting files, configurations and known issues.
4. Analyze the Responses
The tool examines how the server responds to its requests.
5. Display Findings
Potential issues are presented to the security professional for further investigation.
The important point is that Nikto automates discovery and checking; the security professional still needs to interpret the results.
What Can Nikto Detect?
Nikto performs many different checks. The exact findings depend on the server and its configuration.
Outdated Server Software
Older web-server versions may contain known security vulnerabilities. Nikto can help identify server information that may indicate an outdated component. However, version information should be verified before concluding that a vulnerability exists.
Dangerous or Unnecessary Files
Web servers may accidentally expose files that shouldn’t be publicly accessible.
Examples might include:
- Backup files
- Configuration files
- Temporary files
- Default resources
These can sometimes reveal useful information about the server.
Insecure Configuration
A web server may function correctly while still having security weaknesses. Examples include unnecessary services, insecure settings or information disclosure. Nikto can identify some of these conditions.
Default Files and Resources
Default server pages and sample files can reveal information about the underlying software. They may also indicate that a server has not been fully hardened.
Information Disclosure
Some server configurations reveal details such as:
- Server software
- Technology versions
- Directory information
- HTTP headers
This information can help security professionals understand the environment.
Nikto and HTTP
To understand Nikto, beginners should first understand HTTP. HTTP is the protocol that allows web browsers and servers to communicate.
A simplified interaction looks like:
Browser → HTTP Request → Web Server
and then:
Web Server → HTTP Response → Browser
Nikto sends requests to an authorized web server and analyzes the responses. Therefore, learning basic HTTP concepts will make Nikto’s output much easier to understand.
Nikto and HTTPS
Modern websites commonly use HTTPS rather than plain HTTP. HTTPS provides encrypted communication between the client and server.
When assessing an authorized HTTPS-enabled application, security professionals need to understand how encrypted web communication differs from traditional HTTP.
Learning the basics of:
- TLS
- Certificates
- HTTPS
- HTTP headers
will help beginners understand modern web-server assessments.
Understanding Nikto Results
One of the most important skills is learning how to interpret the output. Nikto may produce numerous findings. Beginners shouldn’t automatically assume every finding represents a serious vulnerability.
Instead, investigate each result.
Ask yourself:
What did Nikto discover?
Understand exactly what the finding represents.
Is the finding actually relevant?
Some findings may simply provide information rather than indicate an exploitable vulnerability.
What system is affected?
Determine which server or resource produced the result.
What is the potential impact?
Consider whether the issue could expose sensitive information or create a security weakness.
How can it be fixed?
A useful security assessment should ultimately lead to remediation.
Nikto vs Nessus
Beginners often ask how Nikto compares with vulnerability scanners such as Nessus. The biggest difference is scope. Nikto is primarily focused on web servers and HTTP-related assessment. Nessus is a broader vulnerability assessment platform that can assess many types of systems and technologies.
Think of it this way:
Nikto → Focused web-server assessment
Nessus → Broader vulnerability assessment
They can therefore complement each other rather than being direct replacements.
Nikto vs Burp Suite
Nikto and Burp Suite also serve different purposes. Nikto focuses heavily on automated web-server checks. Burp Suite provides a broader set of tools for analyzing web application traffic and testing application behavior.
For example, Burp Suite can help you understand:
- HTTP requests
- HTTP responses
- Cookies
- Sessions
- Authentication
- Application inputs
Learning both can give beginners a broader understanding of web security.
How Beginners Can Practice Nikto Safely
Never point security tools at random websites. Instead, use a controlled laboratory.
A beginner lab could contain:
- A virtualization platform
- A Linux security-testing machine
- A deliberately vulnerable web application
- An isolated virtual network
Training applications such as DVWA, OWASP Juice Shop, or WebGoat can provide safe environments for learning web security concepts. You can then study how a web server responds to assessment requests without interacting with systems you don’t own.
What Should You Learn Before Nikto?
Nikto becomes much easier once you understand the fundamentals.
Start with:
Networking
Learn IP addresses, ports, DNS, TCP/IP and basic network architecture.
Linux
Understand files, permissions, processes, services and the command line.
HTTP
Learn requests, responses, methods, status codes, headers, cookies and sessions.
Web Servers
Understand the basic role of Apache, Nginx and other web-server technologies.
Web Security
Study common vulnerabilities and security misconfigurations.
Once these concepts make sense, Nikto becomes much more useful.
Practical Walkthrough
Let’s see a practical walkthrough of how Nikto works.
Let’s start with a version check (-Version):
The “version” option of Nikto checks for the version of the software, plugins and database versions.
Checking Database (-dbcheck):
It’s always a good thing to check for any errors in the scan database before scanning. The “-dbcheck” option of Nikto checks the scan databases for any errors.
Want to Learn Ethical Hacking Step-by-Step?
If you’re serious about learning cybersecurity, a structured roadmap makes the journey much easier.
Download The Beginner Ethical Hacker Starter Kit (2026 Edition) and discover:
✔ The ethical hacking learning path
✔ Beginner-friendly security concepts
✔ Essential tools ethical hackers use
✔ The most common vulnerabilities explained
The Host option (–host) (-h)
To scan a target using Nikto, first we need to specify a target. To set the target, we need to use the “host” option. This is shown below.
The target can be IP address of the webserver or URL of the website. This scan took 45 seconds to finish.
The Host option (–ssl):
To scan a website with HTTPS enabled with nikto, we can use the “SSL” option.
The Port option (–port):
By default, Nikto scans the default HTTP and HTTPS ports when specified. However, if the target web server is running on a custom port you can set Nikto to scan a different port by using the “port” option.
Scanning for CGI directories (–Cgidirs):
To scan for the presence of all CGI directories on the target webserver, the “cgidirs” option can be used.
You can specify a specific CGI directory to search or you can use “all” value to scan for all CGI directories on the target.
What output you want Nikto to show? (–Display):
To control the type and amount of output Nikto shows after finishing the scan, we can use the “Display” option. Here are the values that can be set for the Display option.
How much time you want Nikto to spend on a scan? (–maxtime):
Using the “maxtime” option, we can specify the maximum time to spend for scanning a target. This time can be specified in seconds.
As you can see, the scan ended in 2 seconds while earlier the same scan took 45 seconds.
Don’t look for names (-nolookup):
The “nolookup” option specifies Nikto to not query for names when an IP address is specified.
Don’t look for pages that are not there (–no404):
The “no404” option specifies Nikto to disable “file not found” checking. This will reduce the total number of requests made to the target.
Just discover the ports (–findonly):
If you want to just find the HTTP(S) ports of a target without performing any security scan, you can use the “–findonly” option. Specifying this option allows Nikto to connect to HTTPS or HTTP ports and report the server header.
The Timeout option (–timeout):
The “–timeout” option specifies time to wait before timing out a request. The default timeout of Nikto is 10 seconds.
The Pause option (–Pause):
By using “–Pause” option in Nikto, we can specify delay between each test Nikto performs.
What if we have to authenticate? (–id):
With the “-id” option, you can use Nikto to perform basic authentication to the target.
The tuning option (–tuning):
With the “-Tuning” option, we can control the test that Nikto will use against a target. It can take the following values.
For example, this is how we test for misconfigured files on the target.
See all Nikto plugins (–list-plugins)
Nikto has lot of plugins that can be used against various targets. To view all these plugins, we can use the “–list-plugins” option.
Use a particular plugin (–Plugins):
To use a particular plugin, we can use the “Plugins” option. For example, let’s use the robots plugin as shown below.
Can Nikto evade detection? (–evasion):
While scanning, Nikto can use various techniques to evade Intrusion Detection System (IDS). The evasion techniques of Nikto are given below.
Saving output (-o):
Nikto can save the output of the scan in a file with the “output(-o)” as shown below.
Formats in which you can save output (-Format):
You can save in different formats you like using the “-Format” option. Valid formats are csv, htm, txt and xml.
Common Beginner Mistakes
Treating Every Finding as a Vulnerability
Some results are informational. Always investigate before assigning severity.
Scanning Unauthorized Websites
Having access to a website does not automatically give you permission to security-test it. Only scan systems you own or have explicit authorization to assess.
Ignoring False Positives
Automated tools can produce inaccurate or incomplete findings. Important results should be validated.
Focusing Only on Tools
A tool can identify a problem, but understanding the underlying technology is what makes you a security professional.
Ignoring Remediation
A security assessment isn’t complete simply because you found something.
You should also understand how the issue can be corrected or mitigated.
A Simple Nikto Learning Path
Beginners can follow this path to master Nikto quickly.
Step 1: Learn basic networking.
Step 2: Learn Linux fundamentals.
Step 3: Understand HTTP and HTTPS.
Step 4: Learn how web servers work.
Step 5: Set up an isolated web-security lab.
Step 6: Use Nikto against your authorized practice server.
Step 7: Study the results carefully.
Step 8: Research the underlying security issue.
Step 9: Apply appropriate remediation in the lab.
Step 10: Scan again and verify the improvement.
This approach teaches much more than simply running a scanner.
Concluision
Nikto is a useful tool for beginners who want to understand web-server security assessment. It can help identify potentially outdated software, interesting files, insecure configurations, information disclosure and other issues that deserve investigation.
However, Nikto should be viewed as one component of a broader security workflow.
Learn networking. Understand HTTP. Study Linux and web servers. Practice inside an isolated lab. Learn to interpret scanner results and most importantly, only assess systems you own or have explicit permission to test.
Once you understand the fundamentals, Nikto becomes more than a scanning utility. It becomes a practical way to learn how web servers expose information and how security professionals identify and reduce potential weaknesses.
Start Your Ethical Hacking Journey Today
Learning cybersecurity can feel overwhelming at first. The best way to start is with a clear roadmap and the right resources.
Download The Beginner Ethical Hacker Starter Kit (2026 Edition) and get instant access to:
Ethical Hacking Fundamentals
A beginner cybersecurity learning roadmap
Essential hacking tools every beginner should know
Common vulnerabilities explained simply