The attack surface of a
software
Software is a set of computer programs and associated software documentation, documentation and data (computing), data. This is in contrast to Computer hardware, hardware, from which the system is built and which actually performs the work.
...
environment is the sum of the different points (for "
attack vectors") where an unauthorized user (the "attacker") can try to enter data to or extract data from an environment.
Keeping the attack surface as small as possible is a basic security measure.
Elements of an attack surface
Worldwide digital change has accelerated the size, scope, and composition of an organization’s attack surface. The size of an attack surface may fluctuate over time, adding and subtracting assets and digital systems (e.g.
websites,
hosts, cloud and mobile apps, etc). Attack surface sizes can change rapidly as well. Digital assets eschew the physical requirements of traditional network devices, servers, data centers, and on-premise networks. This leads to attack surfaces changing rapidly, based on the organization’s needs and the availability of digital services to accomplish it.
Attack surface scope also varies from organization to organization. With the rise of digital supply chains, interdependencies, and globalization, an organization’s attack surface has a broader scope of concern (viz. vectors for cyber attacks). Lastly, the composition of an organization’s attack surface consists of small entities linked together in digital relationships and connections to the rest of the internet and organizational infrastructure, including the scope of third-parties, digital supply chain, and even adversary-threat infrastructure.
An attack surface composition can range widely between various organizations, yet often identify many of the same elements, including:
*
Autonomous System Numbers (ASNs)
*
IP Address
An Internet Protocol address (IP address) is a numerical label such as that is connected to a computer network that uses the Internet Protocol for communication.. Updated by . An IP address serves two main functions: network interface ident ...
and IP Blocks
*
Domains and
Sub-Domains (direct and third-parties)
*
SSL Certificates
In cryptography, a public key certificate, also known as a digital certificate or identity certificate, is an electronic document used to prove the validity of a public key. The certificate includes information about the key, information about t ...
and Attribution
*
WHOIS Records, Contacts, and History
* Host and Host Pair Services and Relationship
*
Internet Ports and Services
*
NetFlow
*
Web Frameworks (PHP, Apache, Java, etc.)
*
Web Server Services (email, database, applications)
*
Public and Private Cloud
Understanding an attack surface
Due to the increase in the countless potential vulnerable points each enterprise has, there has been increasing advantage for hackers and attackers as they only need to find one vulnerable point to succeed in their attack.
There are three steps towards understanding and visualizing an attack surface:
Step 1: Visualize. Visualizing the system of an enterprise is the first step, by mapping out all the devices, paths and networks.
Step 2: Find indicators of exposures. The second step is to correspond each indicator of a vulnerability being potentially exposed to the visualized map in the previous step. IOEs include "missing security controls in systems and software".
Step 3: Find indicators of compromise. This is an indicator that an attack has already succeeded.
Surface reduction
One approach to improving
information security
Information security, sometimes shortened to InfoSec, is the practice of protecting information by mitigating information risks. It is part of information risk management. It typically involves preventing or reducing the probability of unauthori ...
is to reduce the attack surface of a system or software. The basic strategies of attack surface reduction include the following: reduce the amount of
code running, reduce entry points available to untrusted users, and eliminate services requested by relatively few users. By having less code available to unauthorized actors, there tend to be fewer failures. By turning off unnecessary functionality, there are fewer
security risks. Although attack surface reduction helps prevent security failures, it does not mitigate the amount of damage an attacker could inflict once a vulnerability is found.
See also
*
Vulnerability (computing)
Vulnerabilities are flaws in a computer system that weaken the overall security of the device/system. Vulnerabilities can be weaknesses in either the hardware itself, or the software that runs on the hardware. Vulnerabilities can be exploited by ...
*
Computer security
Computer security, cybersecurity (cyber security), or information technology security (IT security) is the protection of computer systems and networks from attack by malicious actors that may result in unauthorized information disclosure, t ...
*
Attack Surface Analyzer
*
Vulnerability management
*
Vulnerability scanner
References
{{Reflist
Computer security software
Mobile security