Posted on

Malware Guide for Beginners: Understanding Malicious Software

Malware is one of the most important concepts to understand when learning cybersecurity. Whether you are interested in ethical hacking, penetration testing, network security or defensive cybersecurity, you will eventually encounter the term malware.

Malware can affect personal computers, mobile devices, servers and even large enterprise networks. Understanding what malware is and how it works at a high level can help beginners recognize cyber threats and understand why security controls are important.

This beginner’s guide explains what malware is, the major types of malware, how malware can spread, warning signs of infection and basic ways individuals and organizations can reduce their risk.

What Is Malware?

Malware is short for malicious software. It is software designed to perform harmful, unwanted or unauthorized actions on a computer system, network or device. The exact behavior of malware can vary significantly. Some malicious programs are designed to steal information, while others may disrupt systems, spy on activity, damage data or give an attacker unauthorized access.

Malware is not one single type of threat. It is a broad category that includes several different forms of malicious software. Understanding these categories is an important first step for anyone learning cybersecurity.

Common Types of Malware

1. Viruses

A computer virus is malicious code that can attach itself to legitimate files or programs. Traditionally, viruses spread when an infected file is executed or shared with another system.

A virus may be capable of:

  • Modifying files
  • Disrupting applications
  • Damaging data
  • Spreading to other systems

Modern cybersecurity discussions often use the word “virus” casually to describe any type of malware, but technically, a virus is only one category of malicious software.

According to Discovery, the first virus is the Creeper program. It was created by Bob Thomas in 1971. It was actually designed as a security test to see if a self-replicating program will be successful. The function of Creeper was to just display a simple message on computer if infected.

The most popular (or should I say unpopular) virus should be ILOVEYOU virus. Released in 2000, ILOVEYOU infected over ten million Windows computers. It started spreading as an email message with subject line “I LOVE YOU” and contained an attachment with name “LOVE-LETTER-FOR-YOU.TXT.VBS. When the recipient clicked on this attachment, a Visual Basic script activated and over wrote files on the infected system. Then, it sent itself to all the email addresses in the Windows Address Book. It is estimated that the losses infected by this simple virus were at least $15 billion.

2. Worms

A worm is malware capable of spreading across systems or networks without necessarily requiring a user to manually performing an action (like sharing an infected file). Worms can become particularly dangerous because automated spreading can allow an infection to affect many systems quickly.

A worm may exploit weaknesses in:

  • Network services
  • Unpatched software
  • Insecure configurations

This is one reason why regular patching and network security are important.

Morris worm is considered to be the first worm to spread over the internet. It was created by Robert Tappan Morris and it caused a loss of over $100,000 and $10,000,000. It infected over 2000 computers within 15 hours. Morris worm spread by exploiting vulnerabilities like holes in the debug mode of the Unix send mail program, a buffer overflow vulnerability in finger network service. Rexec and Rsh accounts with weak or no password at all.

The most unpopular worm should definitely be Stuxnet. Released in 2010 and accused of sabotaging nuclear program of Iran, Stuxnet was designed to target programmable logic controllers (PLCs).  These PLC’s allow automation of electromechanical process used by control machines and industrial processes (for example, gas centrifuge that are used to separate nuclear material). Stuxnet spread by exploiting 4 zero-day vulnerabilities in Siemens setup7 software installed on Windows systems. Stuxnet infected almost over 2,00,000 computers and destroyed at least 100 machines.

3. Trojans

A Trojan or Trojan horse, is malicious software that attempts to appear legitimate or harmless.

A user might believe they are downloading:

  • A useful application
  • A document
  • A game
  • A software update

But the file may contain malicious functionality. The important lesson is that software should be downloaded from trusted and verified sources whenever possible. The name Trojan is a reference to the Trojan horse (the large wooden horse) of Trojan war assumed by Trojans as gift given by Greeks to Troy. However, when the horse was let into the kingdom, Greek soldiers hiding inside the horse came out and ransacked Troy (you should watch Troy movie).

Just like viruses, Trojans also need victims to click on Trojan to be activated and most users fall victim to trojans thinking that they are genuine files. ANIMAL, a program released in 1975 is generally considered the world’s first Trojan. It fooled victims by presenting itself as a simple game of 20 questions. When user clicked on it, it copied itself to shared directories to be found by other victims.

According to me, the most dangerous Trojan was Zeus. Zeus is a banking Trojan used to steal banking information. It is spread by drive by downloads and phishing in 2003. It is estimated that Zeus infected over 74,000 FTP accounts.

4. Ransomware

Ransomware is malware designed to prevent normal access to data or systems, often by encrypting files. The attacker may then demand payment in exchange for restoring access. Ransomware incidents can affect individuals, businesses, hospitals, schools and other organizations.

The first known ransomware was AIDS Trojan. It’s payload hid the files on the victim’s hard drive and encrypted their names. The most dangerous & popular ransomware attack was WannaCry in 2017. WannaCry ransomware spread by exploiting EternalBlue vulnerability and it infected over 2,30,000 computers within one day.

Strong backups, security updates, access controls and user awareness can help reduce the impact of ransomware incidents.

5. Spyware

Spyware is designed to secretly collect information from a device or user. Depending on its capabilities, spyware may attempt to monitor:

  • Browsing activity
  • User behavior
  • Device information
  • Other sensitive information

The best protection includes using trusted software, keeping devices updated and paying attention to unusual behavior.

The most popular spyware seen recently should be Pegasus spyware. This spyware developed by Israeli cyber arms firm NSO Group installs not just covertly but remotely on mobile phones running IOS and Android and that too using a zero-click exploit (an exploit that doesn’t need any user action at all). Once installed on a device, Pegasus can read text messages, snoop on calls, collect credentials, track location of the device, access device’s cameras and microphone and harvest information from apps installed on the target device.

6. Adware

Adware displays unwanted advertising or modifies the user’s browsing experience. Not all ad-supported software is necessarily malware. The difference often depends on whether the software was installed with informed user consent and how it behaves.

Malicious adware may:

  • Display intrusive advertisements
  • Redirect browsers
  • Track user activity
  • Change browser settings

7. Keyloggers

Keylogger is a malicious software that records keystrokes a user types into computer or mobiles. The first keylogger used in real world was allegedly distributed with Grand Theft Auto V mod in 2015. Recently, a keylogger named Snake keylogger was detected being distributed with Microsoft Excel sample. Snake keylogger first appeared in late 2020.

8. Backdoors

A backdoor is a type of malware that provides access to a system bypassing normal security measures that usually prevent access. For example, if you can access a system without providing any login or need of credentials, you have a Backdoor access. Usually, hackers install backdoor after gaining complete access to the system to have unhindered and continuous access in future.

In 1998, a U.S hacker group “Cult of the Dead cow” designed a backdoor named “Back Orifice” that enables a user to control a computer remotely. In 2014, multiple backdoors were detected in WordPress. These backdoors were WordPress plugins with an obfuscated JavaScript code.

9. Rootkits

A rootkit is designed to hide malicious activity or provide persistent unauthorized access. Rootkits can be particularly difficult to detect because their purpose may include concealing files, processes or other evidence of malicious activity.

It is designed to enable access to a computer in a way that is not usually possible to an authorized user. Simply put, Rootkit gives SYSTEM level access. As if this is not enough, Rootkit is undetectable once installed, unlike other types of malware. The term “Rootkit” is a combination of root (the most privileged account on Unix system and “kit”. This is because rootkits usually give ‘root’ level access to the target system.

The first malicious rootkit appeared in 1999 and it affected Windows NT OS.  In 2012, a rootkit named Flame was detected. Flame affected over 80 servers around the world and is considered one of the dangerous rootkits.

For beginners, the key concept is that some malware is designed not only to perform harmful actions but also to avoid detection.

10. Bots

A BOT is a shortcut for Robot and it is an automated piece of code that performs predefined tasks. Malicious Bots as normally used to infect a system and make them a part of a Botnet which can then be used to perform DDOS attacks.

In 2007, a botnet attack called Cutwail attacked Windows systems using a trojan named Pushdo which infected Windows systems to make them part of the Cutwail botnet. This botnet had over 1.5 to 2 million computers. The most famous BOT malware should be MIRAI. MIRAI is designed to infect smart devices that run on ARC processes.

11. Crypto Miner

Crypto mining malware or cryptojacker is a malicious software that targets computer sources and mines crypto currencies like Bitcoin. Cryptominers are rather new in the evolution of malware. Their growth directly grew with the growth in popularity of crypto currencies.

How Does Malware Spread?

Malware can reach systems through many different methods.

Phishing Emails

Attackers may send emails containing malicious attachments or links. These messages often attempt to create urgency or trick the recipient into taking action without thinking carefully.

Malicious Downloads

Downloading software, files or applications from untrusted sources can introduce malware. Fake software downloads and modified applications can appear legitimate.

Vulnerable Software

Outdated or unpatched software may contain known security weaknesses. Attackers may attempt to take advantage of these weaknesses to gain access to a system. This is why security updates are important.

Infected External Devices

Removable storage devices can potentially transfer malicious files between computers. Organizations often use security policies and endpoint controls to reduce this risk.

Compromised Websites

A legitimate website may sometimes become compromised and serve malicious content to visitors. Security software and updated browsers can help reduce exposure to known threats.

Common Signs of Malware Infection

Not every unusual computer problem is caused by malware but certain signs may indicate that a system should be investigated.

Possible warning signs include:

  • Unusual system slowdowns
  • Unexpected pop-ups
  • Unknown applications appearing
  • Browser settings changing unexpectedly
  • Unusual network activity
  • Security software being disabled
  • Files becoming inaccessible
  • Unexpected system crashes

These symptoms do not automatically prove that malware is present. However, they may indicate that further investigation is necessary.

How Malware Affects Organizations

For businesses, malware can create much more than a technical problem.

A serious malware incident can affect:

  • Business operations
  • Customer information
  • Financial systems
  • Employee productivity
  • Company reputation

For this reason, organizations use multiple security controls rather than relying on a single antivirus product. A modern security strategy may include:

  • Endpoint security
  • Firewalls
  • Network monitoring
  • Security updates
  • Access controls
  • Data backups
  • Email filtering
  • Security awareness training
  • Incident response planning

This approach is often described as defense in depth.

How Beginners Can Protect Against Malware

You do not need to be a cybersecurity expert to follow good security practices.

Keep Software Updated

Install security updates for operating systems, browsers and applications. Updates often fix known security weaknesses.

Download Software Carefully

Use official or trusted sources whenever possible. Avoid downloading suspicious files from unknown websites.

Be Careful With Email Attachments

Unexpected attachments and links should be treated carefully. Verify unusual messages before interacting with them.

Use Security Software

Endpoint protection and other security tools can help identify known malicious activity. However, no security product is perfect. Safe user behavior remains important.

Create Backups

Regular backups can reduce the impact of data loss and ransomware incidents. Backups should be protected and periodically tested.

Use Strong Authentication

Strong passwords and multi-factor authentication can help reduce the risk of unauthorized account access.

Malware Analysis vs Malware Creation

Beginners interested in cybersecurity may eventually hear about malware analysis. Malware analysis is the process of examining malicious software to understand its behavior and help improve defenses.

Security researchers and analysts may study malware to answer questions such as:

  • What does it attempt to do?
  • Which systems does it target?
  • What indicators might help detect it?
  • How can defenders reduce the risk?

This is very different from creating or distributing malware. For beginners, it is best to focus on safe analysis concepts, threat detection, prevention and defensive security.

A Beginner Learning Path for Malware

A structured learning path can make malware easier to understand.

Step 1: Learn Operating System Basics

Understand how Windows and Linux manage:

  • Processes
  • Files
  • Users
  • Permissions
  • Services

Step 2: Learn Networking

Study:

  • IP addresses
  • DNS
  • HTTP and HTTPS
  • Ports
  • Network traffic

Step 3: Learn Basic Security Concepts

Understand:

  • Authentication
  • Vulnerabilities
  • Patching
  • Access control
  • Encryption

Step 4: Learn About Malware Types

Study viruses, worms, Trojans, ransomware, spyware, rootkits and other categories.

Step 5: Learn Detection Concepts

Explore how defenders use:

Step 6: Study Incident Response

Learn what organizations do when suspicious activity or malware is discovered.

Common Beginner Mistakes

Thinking Malware Is Always Obvious

Some malware may attempt to hide its presence. Security professionals often rely on multiple sources of evidence.

Believing Antivirus Solves Everything

Security software is important but it is only one layer of protection.

Downloading Security Tools From Untrusted Sources

Cybersecurity-related software should also be downloaded carefully from legitimate sources.

Ignoring Software Updates

Unpatched systems may remain exposed to known security problems.

Trying to Experiment With Real Malware

Beginners should avoid downloading or executing live malware.

Learning resources, simulations, defensive labs and controlled training environments are much safer ways to study malware concepts.

Conclusion

Malware is a broad category of malicious software that can affect individuals, businesses and critical systems. For beginners, the most important goal is not memorizing every malware family or technical term.

Instead, understand the fundamentals. Learn what malware is. Understand the major categories. Know how malware can spread. Recognize common warning signs. Learn basic prevention methods and understand how security professionals detect and respond to malicious activity.

As your cybersecurity knowledge grows, you can explore areas such as malware analysis, threat intelligence, endpoint security, digital forensics and incident response. A strong understanding of malware provides an excellent foundation for the defensive side of cybersecurity and helps you better understand the threats that ethical hackers and security professionals work to identify and prevent.

Posted on

Nikto Vulnerability Scanner: Complete Guide for Beginners

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.

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.

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.

Posted on

Nessus Vulnerability Scanner: Beginner’s Guide

If you’re starting to learn cybersecurity, vulnerability scanning is one of the skills you’ll encounter early in your journey. Organizations need to identify weaknesses across servers, workstations, applications and network devices before those weaknesses become serious security problems.

One of the well-known tools used for vulnerability assessment is Nessus. Nessus is a vulnerability assessment platform that helps security professionals identify potential security weaknesses, outdated software, configuration problems and other security issues.

For beginners, Nessus is useful because it provides an opportunity to understand how vulnerability scanners work and how security teams analyze large numbers of potential findings. In this guide, we’ll explore what Nessus is, how vulnerability scanning works, what Nessus can identify, how beginners can learn it safely and why scanner results still require human analysis.

What Is Nessus?

Nessus is a vulnerability assessment tool developed by Tenable. It is designed to scan systems and identify potential vulnerabilities and configuration issues. Security professionals can use vulnerability scanners to assess environments containing:

  • Servers
  • Workstations
  • Network devices
  • Applications
  • Cloud infrastructure
  • Other connected systems

Rather than manually checking every system for known security problems, a scanner can automate much of the initial assessment process.

Why Is Vulnerability Scanning Important?

Modern organizations may have hundreds or thousands of assets. Manually checking every operating system, application and configuration would be extremely time-consuming. Vulnerability scanners help security teams discover potential problems more efficiently.

A scanner may identify issues such as:

  • Missing security updates
  • Outdated software
  • Known vulnerabilities
  • Insecure configurations
  • Exposed services
  • Weak security settings

The results give security teams a starting point for investigation and remediation.

How Does Nessus Work?

At a high level, vulnerability scanning with Nessus follows a relatively simple process.

1. Identify the Target:

The security professional selects systems that are authorized for assessment. These might include servers, workstations or network devices.

2. Discover Information:

The scanner gathers information about the target, including available services and software.

3. Perform Security Checks:

Nessus compares what it discovers against its collection of vulnerability and configuration checks.

4. Generate Findings:

Potential security issues are organized into a report.

5. Analyze and Remediate:

Security professionals investigate important findings and determine how they should be fixed or mitigated.

The scanner automates much of the repetitive work but people remain responsible for interpreting the results.

What Can Nessus Detect?

The exact findings depend on the target, configuration, plugins and scan type. Nessus can help identify areas such as:

1. Outdated Software:

Older versions of software may contain publicly known security vulnerabilities. A scanner can help identify potentially outdated components that require review.

2. Missing Security Updates:

Unpatched operating systems and applications can create unnecessary security exposure. Vulnerability scanning can help organizations identify systems that may require updates.

3. Configuration Problems:

Security isn’t only about software vulnerabilities. Incorrect configurations can also create risk. A scanner can identify certain insecure settings and configuration weaknesses.

4. Network Services:

Scanning can provide information about services exposed by systems. Understanding which services are available helps security teams determine whether they are necessary and appropriately protected.

5. Known Vulnerabilities:

Nessus can identify potential vulnerabilities associated with software and system configurations. Findings may reference standardized vulnerability identifiers such as CVE entries.

Understanding Nessus Plugins

One important concept beginners should understand is the plugin. Nessus uses plugins to perform different security checks. Each plugin is designed to identify a particular type of vulnerability, configuration issue or other security condition.

Think of plugins as individual security checks that collectively allow the scanner to assess a system from many different angles. This architecture allows vulnerability assessment capabilities to evolve as new security issues are discovered.

Understanding Nessus Scan Results

After a scan completes, you’ll typically see a collection of findings. Beginners should learn to pay attention to information such as:

  • Vulnerability description
  • Severity
  • Affected asset
  • Evidence
  • References
  • Recommended remediation

Don’t simply look at the highest severity number and stop there.

Ask:

What is affected?
Why is it vulnerable?
How could the issue affect the organization?
Is the finding accurate?
How can it be fixed?

These questions turn vulnerability scanning into a real cybersecurity skill.

Nessus Severity Ratings

Vulnerability scanners commonly organize findings by severity.

You may encounter categories such as:

  • Informational
  • Low
  • Medium
  • High
  • Critical

Severity helps security teams prioritize their work. However, severity alone doesn’t always represent real-world risk. For example, a high-severity vulnerability affecting an isolated test server may be less urgent than a medium-severity issue affecting an Internet-facing business-critical system. This is why vulnerability management requires context.

Nessus and CVSS

You will often encounter CVSS or Common Vulnerability Scoring System when studying vulnerability reports. CVSS provides a standardized way of describing the severity of vulnerabilities. A CVSS score can help security teams compare findings and prioritize investigation.

However, beginners should remember:

CVSS severity is not the same as organizational risk. Security teams should also consider asset importance, network exposure, exploitability, business impact and available security controls.

False Positives and Validation

Automated vulnerability scanners are powerful but they aren’t perfect. A scanner may occasionally report a vulnerability that doesn’t actually affect a particular system. This is known as a false positive.

Possible reasons include:

  • Incorrect software version detection
  • Configuration differences
  • Missing information
  • Environmental conditions

Important findings should therefore be investigated and validated before major remediation decisions are made. This is one of the most valuable lessons beginners can learn from vulnerability scanning.

Nessus for Beginners

Beginners shouldn’t try to scan large networks immediately. Instead, create a controlled cybersecurity lab.

A simple setup might contain:

  • A virtualization platform
  • A Linux virtual machine
  • A Windows virtual machine
  • An intentionally vulnerable practice machine
  • An isolated virtual network

You can then learn how vulnerability scanners identify software, services, configurations and potential weaknesses. Start with small scans and gradually increase the complexity of your environment.

What Should Beginners Learn Before Nessus?

Nessus becomes much easier to understand when you already know basic networking. Before focusing heavily on vulnerability scanning, study:

Networking:

Learn IP addresses, ports, protocols, services and basic network architecture.

Operating Systems:

Understand basic Windows and Linux administration.

Vulnerabilities:

Learn why software vulnerabilities and configuration weaknesses occur.

CVE and CVSS:

Understand how vulnerabilities are identified and scored.

Remediation:

Learn how organizations patch, configure and otherwise reduce vulnerabilities.

With these foundations, Nessus results become much more meaningful.

Practical Walkthrough

Nessus has two important components: Server and Client. Nessus server can be installed on Unix, Linux and FreeBSD whereas Nessus client is available for Unix and Windows based operating systems. For this tutorial, we will be installing Nessus on Kali Linux. Nessus can be downloaded from here. It can also be downloaded using curl as shown below (version may change).

Once the installation is finished, enable nessus as shown below.

Then start nessus using command shown below.

sudo systemctl start nessusd

Nessus runs on port 8834 by default. It can be viewed in browser.

Click on “Accept the risk and continue”.

Click on “Continue”. Select the type of Nessus install you want. Since we are using a Free version of Nessus for this tutorial we select “Register for Nessus Essentials”. Click on “continue”.

To run Nessus Essentials, you need an activation code. Get the activation code by entering the following details.

You need a user account to login into Nessus. Create an account and most importantly remember the user account information.

Then, Nessus will download all the required plugins. This may take some time (a bit long time sometimes).

Once all the plugins are finished downloading, you should see this.

The installation is finished. Now, it’s time to start scanning with Nessus. Click on “New scan”. A new popup opens. Assign a target.

Click on “Run scan”.

The scan will start and take some time to finish. For this tutorial, we are using “Metasploitable 2” as target. See how to install Metasploitable 2 in VirtualBox.

The vulnerabilities are classified into five categories by Nessus. They are Critical, High, Medium, Low and Information. You can view detailed information about the detected vulnerabilities by clicking on them.

All the scans you perform are located in “My scans” section.

Nessus allows different types of scans. All the scans that can be performed using Nessus can be viewed from “All scans” section.

Common Beginner Mistakes

Treating Nessus as a Hacking Button:

Nessus is primarily a vulnerability assessment tool. It doesn’t replace understanding or professional security methodology.

Trusting Every Finding:

Always validate important findings.

Focusing Only on Critical Issues:

Lower-severity findings can become important when combined with other weaknesses.

Ignoring Remediation:

Finding vulnerabilities isn’t enough. Security teams need to fix or mitigate them.

Scanning Without Permission:

Only scan systems you own or have explicit authorization to assess.

Nessus vs Manual Security Testing

Automated vulnerability scanning is only one part of cybersecurity. A scanner can efficiently identify potential weaknesses across many systems. Manual security testing can provide deeper analysis of how vulnerabilities interact with an application, system or environment.

A professional security assessment may therefore combine:

Discovery → Scanning → Analysis → Validation → Remediation → Verification

Learning Nessus gives beginners an introduction to the scanning stage of this broader process.

Conclusion

Nessus is a valuable tool for learning how modern vulnerability assessment works. It can help security teams identify potential vulnerabilities, outdated software, missing updates and configuration issues across large environments.

For beginners, however, the most important lesson isn’t learning how to click the scan button. It’s learning how to understand the results.

Study networking.
Understand operating systems.
Learn CVE and CVSS.
Practice in an isolated lab.
Investigate findings carefully.

and learn how vulnerabilities can be remediated. Most importantly, always perform vulnerability scans only against systems you own or have explicit permission to assess.

Once you understand the fundamentals, Nessus becomes more than a vulnerability scanner—it becomes a practical tool for learning how security professionals discover, prioritize and reduce risk.

Posted on

Vulnerability Scoring for Beginners: A Complete Guide

When learning cybersecurity, you will quickly encounter vulnerability reports containing numbers such as 5.3, 7.5 or 9.8. These numbers are designed to help security professionals understand how serious a vulnerability might be.

This process is known as vulnerability scoring. For beginners, vulnerability scoring can initially seem complicated. Terms such as CVE, CVSS, severity, exploitability and impact may appear together in security reports.

The good news is that the basic idea is simple. Vulnerability scoring helps security teams estimate the severity of a security weakness so they can prioritize which issues need attention first.

In this guide, we’ll explain vulnerability scoring in simple terms, introduce CVE and CVSS, explain severity levels and show how beginners can learn to interpret vulnerability scores.

What Is a Vulnerability?

Before understanding vulnerability scoring, you need to understand what a vulnerability is. A vulnerability is a weakness in software, hardware, configuratio on a system that could potentially be used to compromise security.

Vulnerabilities can exist in:

  • Operating systems
  • Web applications
  • Network devices
  • Databases
  • Cloud services
  • Desktop software
  • Authentication systems

For example, outdated software might contain a publicly known security weakness. A vulnerability does not automatically mean that a system has been compromised. It simply means that a weakness exists that could potentially create security risk.

What Is Vulnerability Scoring?

Vulnerability scoring is a method of assigning a numerical or categorical rating to a security vulnerability based on characteristics such as its potential impact and exploitability. The purpose is prioritization.

Imagine a security team discovers 500 vulnerabilities across an organization’s infrastructure. It would be difficult to fix all 500 immediately. Instead, the team can use vulnerability scores and other contextual information to determine which issues deserve immediate attention.

What Is CVE?

One of the first terms beginners should understand is CVE. CVE stands for Common Vulnerabilities and Exposures. A CVE identifier provides a standardized reference for a publicly known cybersecurity vulnerability.

A CVE usually looks something like:

CVE-2026-XXXX

The identifier itself does not tell you how dangerous the vulnerability is. It provides a way for security professionals, vendors, researchers and security tools to refer to the same vulnerability consistently. Think of CVE as the identity of a vulnerability, rather than its severity score.

What Is CVSS?

The most widely recognized vulnerability scoring system is CVSS or the Common Vulnerability Scoring System. CVSS provides a standardized method for describing the severity of vulnerabilities.

Scores range from:

0.0 to 10.0

A higher score generally indicates greater severity. However, beginners should remember that a CVSS score is not the same thing as the actual risk to every organization. The importance of a vulnerability depends on the environment in which it exists.

Understanding CVSS Severity Levels

CVSS scores are commonly grouped into four major severity categories. They are,

None:

0.0

No severity is assigned.

Low:

0.1-3.9

The vulnerability generally has relatively limited security impact.

Medium:

4.0-6.9

The vulnerability presents a more significant security concern and may deserve attention depending on the affected system.

High:

7.0-8.9

The vulnerability can represent a serious security risk and generally deserves timely remediation.

Critical:

9.0–10.0

These vulnerabilities represent the highest severity category and often require urgent attention.

However, severity categories should be treated as a starting point rather than the final decision about what an organization should fix first.

What Factors Influence Vulnerability Scores?

CVSS considers several characteristics of a vulnerability. Beginners don’t need to memorize every metric immediately but understanding the major concepts is useful.

Attack Vector:

This describes how an attacker would reach the vulnerable component. For example, a vulnerability that can be exploited remotely across a network may present different characteristics from one requiring local access.

Attack Complexity:

This considers how difficult exploitation may be. A vulnerability requiring complicated conditions may receive a different assessment from one that can be exploited under relatively straightforward conditions.

Privileges Required:

Some vulnerabilities require an attacker to already have an account or certain permissions. Others may not require authentication or existing privileges.

User Interaction:

Some vulnerabilities require a victim to perform an action. Others can potentially be exploited without user interaction.

Confidentiality Impact:

This considers the potential effect on the confidentiality of information. For example, could exploitation allow unauthorized access to sensitive data?

Integrity Impact:

This considers whether exploitation could allow unauthorized modification of information or systems.

Availability Impact:

This considers whether exploitation could affect the availability of a system or service. For example, could it cause a service to become unavailable?

Why a High Score Doesn’t Always Mean “Fix This First”

This is one of the most important lessons for beginners.

Suppose a vulnerability has a CVSS score of 9.8. That sounds extremely serious. But imagine the vulnerable system is an isolated laboratory server with no sensitive data and no connection to important business systems. Now consider another vulnerability with a score of 7.5 affecting an Internet-facing server responsible for an organization’s most important application.

The second vulnerability could deserve immediate attention despite having a lower CVSS score. This is why security teams consider business context, exposure, asset importance and existing controls alongside vulnerability scores.

CVSS vs Real-World Risk

Think of CVSS as a standardized measurement of vulnerability severity. Risk is broader.

Organizations may consider the following things while fixing a vulnerability:

  • Is the system Internet-facing?
  • Does it contain sensitive information?
  • Is the vulnerable service business-critical?
  • Is exploitation occurring in the wild?
  • Is a working exploit publicly available?
  • Are compensating security controls present?
  • How difficult is remediation?

This additional context helps security teams prioritize vulnerabilities more effectively.

Vulnerability Scoring During Security Assessments

Vulnerability scanners can identify potential security weaknesses and often include severity ratings.

A typical assessment workflow might look like:

Discover → Scan → Identify → Score → Prioritize → Remediate → Verify

The scanner may identify a vulnerability and associate it with a CVE and CVSS score. The security professional then investigates the finding and determines its relevance to the environment. This human analysis is extremely important.

False Positives

Automated vulnerability scanners aren’t perfect. A scanner might report a vulnerability that doesn’t actually exist because of:

  • Incorrect version detection
  • Configuration differences
  • Missing information
  • Environmental factors

This is called a false positive. Security professionals should validate important findings before making major decisions.

Vulnerability Prioritization

Once vulnerabilities have been identified and scored, security teams need to decide what to fix first. A simple prioritization model might consider the following things:

1. Severity:

How serious is the vulnerability according to the scoring system?

2. Exposure:

Can the affected system be reached from the Internet or an untrusted network?

3. Asset Importance:

How important is the affected system to the organization?

4. Exploitation Activity:

Is the vulnerability actively being exploited?

5. Remediation Availability:

Is a patch or mitigation available?

Combining these factors produces a much more useful risk picture than looking at the CVSS score alone.

Common Beginner Mistakes

Treating CVSS as a Complete Risk Rating:

A CVSS score provides valuable information but it doesn’t understand your organization’s business context.

Assuming 9.8 Means Automatic Compromise:

A critical vulnerability may still require specific conditions before exploitation is possible.

Ignoring Medium-Severity Vulnerabilities:

A medium-severity vulnerability on an important exposed system can still create significant risk.

Trusting Scanner Results Blindly:

Always investigate and validate important findings.

Focusing Only on Numbers:

Security is about understanding systems, not just reading scores.

How Beginners Can Practice Vulnerability Scoring

You don’t need access to a corporate environment to learn these concepts.

Create a safe cybersecurity lab using:

Study publicly documented vulnerabilities and compare:

  • CVE identifiers
  • CVSS scores
  • Severity ratings
  • Attack characteristics
  • Potential impact
  • Recommended remediation

The goal is to learn why a vulnerability receives a particular rating rather than simply memorizing scores.

A Simple Learning Path

If you’re new to vulnerability scoring, follow this progression:

Step 1: Learn what vulnerabilities are.

Step 2: Understand CVE identifiers.

Step 3: Learn the purpose of CVSS.

Step 4: Understand severity categories.

Step 5: Study CVSS metrics.

Step 6: Learn about false positives.

Step 7: Practice interpreting vulnerability reports.

Step 8: Learn how organizations prioritize vulnerabilities using business context.

This foundation will make vulnerability scanners and security reports much easier to understand.

Conclusion

Vulnerability scoring is an essential skill for anyone learning cybersecurity. It helps security teams organize large numbers of vulnerabilities and determine which weaknesses deserve closer attention.

For beginners, remember the difference between the major concepts:

CVE identifies a vulnerability.

CVSS helps describe its severity.

Risk considers the vulnerability within a real-world environment.

The most important lesson is not to become obsessed with the number attached to a vulnerability.

Instead, learn to ask better questions:

What is vulnerable? How can the vulnerability be reached? What could happen if it were exploited? How important is the affected system? Is the vulnerability being actively exploited? How can it be fixed?

Once you can answer those questions, vulnerability scoring becomes much more than a number. It becomes a practical tool for understanding, prioritizing and reducing cybersecurity risk.

Posted on

Vulnerability Scanning for Beginners: A Complete Guide

If you’re beginning your journey into ethical hacking or cybersecurity, you’ll very quickly encounter the term vulnerability scanning. Security professionals use vulnerability scanners to examine systems, networks, applications and devices for known security weaknesses. These tools can help identify outdated software, insecure configurations, missing patches and other potential security issues.

For beginners, vulnerability scanning is an important skill because it teaches you how security professionals identify weaknesses before they become serious problems. But vulnerability scanning isn’t simply about running a tool and looking at a list of vulnerabilities. You also need to understand what the results mean, determine which findings matter and learn how organizations can fix them.

In this guide, we’ll explain vulnerability scanning in simple terms and explore how beginners can start learning it.

What Is a Vulnerability?

A vulnerability is a weakness in a system that could potentially affect its security. Vulnerabilities can exist in many places, including:

  • Operating systems
  • Web applications
  • Network devices
  • Software
  • Databases
  • Cloud environments
  • System configurations

For example, a server running an outdated version of software may contain a publicly known security weakness. Similarly, an incorrectly configured service may expose information that should not be accessible. The first step toward improving security is identifying these weaknesses.

What Is Vulnerability Scanning?

Vulnerability scanning is the process of using automated tools to identify potential security weaknesses in systems and applications. A scanner examines a target and compares what it discovers against databases or rules describing known vulnerabilities and insecure configurations.

The results can then be reviewed by security professionals. Simply put,

Vulnerability scanning helps answer the question: “What security weaknesses might exist here?”

Why Is Vulnerability Scanning Important?

Modern organizations may have hundreds or thousands of systems. Checking every system manually would take an enormous amount of time. Vulnerability scanners help security teams automate much of the initial assessment process.

They can help identify:

  • Missing security updates
  • Outdated software
  • Known vulnerabilities
  • Weak configurations
  • Unnecessary services
  • Potential security risks

This gives security teams a starting point for further investigation.

How Does Vulnerability Scanning Work?

Although different scanners work differently, the general process is similar.

Step 1: Identify the Target

Security professionals first determine which systems are authorized for testing. This might include:

  • Servers
  • Workstations
  • Network devices
  • Applications

Step 2: Discover Services

The scanner examines the target to understand what services and software are available.

Step 3: Identify Versions

The scanner may attempt to determine software and service versions. This information can then be compared against known vulnerabilities.

Step 4: Compare Findings

The scanner compares its observations against vulnerability databases and security checks.

Step 5: Generate a Report

Finally, the scanner produces a report containing potential findings.

Security professionals then analyze the results.

Vulnerability Scanning vs Penetration Testing

Beginners often confuse these two concepts. They are related but they aren’t the same. Vulnerability scanning primarily focuses on identifying potential weaknesses using automated checks.

Penetration testing goes further by having authorized security professionals investigate and validate security weaknesses using a controlled methodology. Think of vulnerability scanning as finding possible problems.

Penetration testing involves determining whether those weaknesses can actually create meaningful security impact. Both are valuable but they serve different purposes.

Types of Vulnerability Scanning

Vulnerability scanning can be performed in different ways.

Network Vulnerability Scanning:

This focuses on network-connected systems. It may identify,

  • Open services
  • Outdated software
  • Known vulnerabilities
  • Configuration issues

Web Application Scanning:

Web application scanners examine websites and applications for potential security problems. They may look for issues involving:

  • Application configuration
  • Authentication
  • Input handling
  • Known web vulnerabilities

Host-Based Scanning:

Host-based scanners examine individual computers or servers. They may identify:

  • Missing patches
  • Outdated applications
  • Weak configurations
  • Security policy issues

Cloud Vulnerability Scanning:

Cloud environments introduce additional security considerations. Scanning and assessment may examine:

  • Cloud configurations
  • Exposed services
  • Identity permissions
  • Storage settings

Popular Vulnerability Scanning Tools

Beginners may encounter several vulnerability assessment tools while learning cybersecurity. Some commonly discussed tools include:

Nessus:

Nessus is a widely used vulnerability assessment platform that helps identify vulnerabilities and configuration problems.

OpenVAS:

OpenVAS is an open-source vulnerability scanning solution used for security assessments.

Nmap:

Nmap is primarily a network discovery and security auditing tool but its scripting capabilities can also assist with vulnerability assessment.

Nikto:

Nikto focuses on web server assessment and can identify various potentially insecure configurations and outdated components. The important thing isn’t to learn every scanner immediately. Start by understanding what vulnerability scanning actually does.

Understanding Vulnerability Scanner Results

One of the most important skills beginners can develop is learning to interpret scanner results. A report may contain:

  • Vulnerability name
  • Severity
  • Affected system
  • Evidence
  • References
  • Recommended remediation

Don’t assume every scanner result means the system has been successfully compromised. Automated tools can produce:

  • False positives
  • Incomplete results
  • Duplicated findings

Human analysis is still essential.

What Is a CVE?

You will frequently encounter the term CVE when studying vulnerability scanning. CVE stands for Common Vulnerabilities and Exposures. A CVE identifier provides a standardized reference for a publicly known vulnerability.

For example, a scanner may report that a particular version of software is associated with a known CVE. Learning how CVE identifiers work will make vulnerability reports much easier to understand.

What Is CVSS?

Another term beginners should learn is CVSS or Common Vulnerability Scoring System. CVSS provides a standardized way of describing the severity of vulnerabilities. A higher score generally indicates greater potential severity. However, a score alone doesn’t tell the entire story.

Security teams should also consider:

  • Business impact
  • Asset importance
  • Exposure
  • Existing security controls

This is why vulnerability management requires human judgment.

Common Beginner Mistakes

Scanning Systems Without Permission:

Never scan systems simply because they’re accessible. Only scan systems you own or have explicit authorization to assess.

Treating Every Finding as Critical:

Not every vulnerability has the same impact. Learn to prioritize findings based on risk.

Trusting Scanner Results Blindly:

Automated tools can make mistakes. Always investigate important findings.

Ignoring Remediation:

Finding vulnerabilities is only half the job. Security teams also need to fix or mitigate them.

Learning Tools Before Fundamentals:

Understand networking, operating systems and applications before relying heavily on scanners.

How Beginners Can Practice Safely?

The safest way to learn vulnerability scanning is through a controlled lab. You can create a virtual environment containing:

  • A Linux machine
  • A Windows machine
  • A deliberately vulnerable practice system
  • A virtual network

You can then scan your own lab and analyze the results. Cybersecurity training platforms can also provide intentionally vulnerable environments designed for learning. This approach lets you develop practical skills without interacting with unauthorized systems.

A Simple Beginner Learning Path

If you’re completely new to vulnerability scanning, follow this learning path.

1. Learn networking:

Understand IP addresses, ports, protocols and services.

2. Learn operating systems:

Understand Windows and Linux basics.

3. Learn common vulnerabilities:

Study why vulnerabilities occur.

4. Learn CVE and CVSS:

Understand how vulnerabilities are identified and rated.

5. Use a scanner in a lab:

Run controlled scans against systems you own.

6. Analyze the results:

Don’t just read the severity level. Understand the finding.

7. Learn remediation:

Understand how vulnerabilities can be patched, configured or otherwise mitigated.

Conclusion

Vulnerability scanning is an essential cybersecurity skill because it helps organizations discover potential weaknesses before attackers can take advantage of them. For beginners, however, the most important lesson is that a scanner is not a substitute for knowledge.

Learn networking. Understand operating systems. Study how applications work. Then learn how scanners identify potential weaknesses. Most importantly, learn to interpret the results rather than simply collecting vulnerability reports.

Remember:

  • Vulnerability scanning identifies potential weaknesses.
  • Different scanners focus on different environments.
  • CVE identifiers help track known vulnerabilities.
  • CVSS helps describe vulnerability severity.
  • Automated results require human analysis.
  • Vulnerability scanning and penetration testing are different.
  • Always scan only authorized systems.

Once you understand the fundamentals, vulnerability scanning becomes much more than clicking a “Scan” button. It becomes a practical way to understand how security teams discover, prioritize and reduce risk.