CHAPTER 1 ■ WHAT IS PENETRATION TESTING?
3
Organizations will spend a lot of time and resources trying to protect themselves
from these attacks. They will implement firewalls to keep attackers out and intrusion
detection systems to hopefully catch when someone gets through the firewall. They will
also implement procedures within the organization to protect themselves from insider
attacks, which are also common. This may include the requirement of strong passwords
or perhaps multi-factor authentication, which may require the user to have something
on them or even use something like a fingerprint in addition to using a username and
password.
The thing that organizations are trying to protect against is vulnerability. A
vulnerability is a weakness in a system. System , though, is a very vague term. By using
the word system , in this case, we are not only talking about the operating system and
applications that make your computer useful but also, in a larger context, all of the
computers and network devices within the entire enterprise network. The organization
will try to locate its weaknesses, or vulnerabilities, and either remove or reduce them.
The process of trying to remove or reduce a vulnerability is called remediation . When
you are trying to reduce the impact of a vulnerability being taken advantage of, you are
mitigating the impact. So, in the process of managing vulnerabilities, you will hear the
terms mitigation and remediation .
When you take advantage of a vulnerability, you are exploiting it. You will see
references to exploits as we continue, which are specific techniques or even pieces of
software that are designed to exploit a particular vulnerability. The point of an exploit
may be to obtain system-level access, meaning the attacker can see and even control files,
users, and services. Some of these actions require a higher level of access than a regular
user may have. On Windows systems, you would say that you have administrator access.
Under a Linux or Unix-like system, you may say that you have root or superuser access.
The user root is the default administrative account on a Unix-like system, including
Linux. If you are root, you can do anything on the system. If you are root and there is some
action you can’t take, there is probably something wrong.
The last thing to go over, while we are talking about information security and
vulnerability management, is the idea of probability and impact. When assessing a
vulnerability, a security professional will generally take into account two factors. The first
is the probability. This is often given a qualitative valuation like low, medium, or high.
What it refers to is the likelihood of a particular vulnerability being exploited. If there
is proof-of-concept code available or if there is flat out an exploit widely available (“in
the wild”), the likelihood may be very high. If you have additional mitigations in place,
like you have to be on the local network and not remote in order to take advantage of
the vulnerability, you may decide the probability is lower. Making this valuation and
categorization will often take a combination of knowledge and experience.
The other factor that is important to know about is the impact. This is what happens
if the exploit is triggered. If the exploit causes the application to crash but it comes right
back up, this is probably a low-impact exploit. If, on the other hand, it causes a remote
attacker to get unauthorized administrative access to your system, the impact is high. If it
causes the destruction of critical or sensitive information for the business, you may also
say it’s high impact. While this may be easier to gauge than probability, it still takes a fair
amount of knowledge and experience to be able to do it accurately.