Browse Definitions:

software attack surface

Contributor(s): Matthew Haughn

The software attack surface is the complete profile of all functions in any code running in a given system that are available to an unauthenticated user.

The more surface there is, the better the chance an attacker or a piece of malware can use various exploits to gain access and run code on the target machine. The software attack surface is particularly at risk in the case of Web applications, which expose the coding to the Internet.

Flawed functions may lead to the compromise of an entire network or other system by allowing an unverified user -- who may be a hacker or a corporate spy -- to steal data or gain further access, perhaps  elevating privileges to administrator level. Individual functions with security flaws can be considered attack vectors; those that may be exploited to gain further access can be seen as vulnerabilities.

 Another consideration in software attack surface is insider threats. Users that authenticate with valid credentials may be able to access unprotected data beyond their authorization levels if access controls are loosely implemented.

Because any running code may have exploitable vulnerabilities, one of the simplest ways to limit the software attack surface is to reduce the amount of code being run at any given time. If a program is not being used or if other installed software can perform the same task, it should be eliminated. Antivirus, hardware and software firewalls can help block access to existing vulnerabilities; operating system and application updates sometimes patch these weaknesses. However, it is better for overall security to minimize the number of vulnerabilities to begin with. To that end, developers are increasingly considering attack vectors in their software design.

Because many attack approaches exploit a combination of attack surface types to gain access to desired resources, a comprehensive attack surface analysis is crucial to proper set up of breach detection systems (BDS), firewall, intrusion prevention systems, data policy and other security measures. Tools available to help guide that analysis include WebInspect, Microsoft attack surface analyzer and CORE Impact.

See also: network attack surface, physical attack surface, social engineering attack surface

This was last updated in January 2015

Continue Reading About software attack surface

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.


File Extensions and File Formats

Powered by:


  • risk map (risk heat map)

    A risk map, also known as a risk heat map, is a data visualization tool for communicating specific risks an organization faces. A...

  • internal audit (IA)

    An internal audit (IA) is an organizational initiative to monitor and analyze its own business operations in order to determine ...

  • pure risk (absolute risk)

    Pure risk, also called absolute risk, is a category of threat that is beyond human control and has only one possible outcome if ...


  • federated identity management (FIM)

    Federated identity management (FIM) is an arrangement that can be made among multiple enterprises to let subscribers use the same...

  • cross-site scripting (XSS)

    Cross-site scripting (XSS) is a type of injection security attack in which an attacker injects data, such as a malicious script, ...

  • firewall

    In computing, a firewall is software or firmware that enforces a set of rules about what data packets will be allowed to enter or...



  • business continuity and disaster recovery (BCDR)

    Business continuity and disaster recovery (BCDR) are closely related practices that describe an organization's preparation for ...

  • business continuity plan (BCP)

    A business continuity plan (BCP) is a document that consists of the critical information an organization needs to continue ...

  • call tree

    A call tree -- sometimes referred to as a phone tree -- is a telecommunications chain for notifying specific individuals of an ...


  • volume manager

    A volume manager is software within an operating system (OS) that controls capacity allocation for storage arrays.

  • external storage device

    An external storage device, also referred to as auxiliary storage and secondary storage, is a device that contains all the ...

  • NetApp SolidFire

    NetApp SolidFire is a business division of NetApp Inc. that specializes in all-flash storage systems.


  • hybrid hard disk drive (HDD)

    A hybrid hard disk drive is an electromechanical spinning hard disk that contains some amount of NAND Flash memory.