Browse Definitions :
Definition

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.

Please create a username to comment.

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchCompliance

  • PCI DSS (Payment Card Industry Data Security Standard)

    The Payment Card Industry Data Security Standard (PCI DSS) is a widely accepted set of policies and procedures intended to ...

  • risk management

    Risk management is the process of identifying, assessing and controlling threats to an organization's capital and earnings.

  • compliance framework

    A compliance framework is a structured set of guidelines that details an organization's processes for maintaining accordance with...

SearchSecurity

  • DNS over HTTPS (DoH)

    DNS over HTTPS (DoH) is a relatively new protocol that encrypts domain name system traffic by passing DNS queries through a ...

  • integrated risk management (IRM)

    Integrated risk management (IRM) is an approach to risk management that uses a set of practices and processes to improve an ...

  • MITRE ATT&CK framework

    The MITRE ATT&CK (pronounced 'miter attack') framework is a free, globally accessible service that provides comprehensive and ...

SearchHealthIT

  • telemedicine (telehealth)

    Telemedicine is the remote delivery of healthcare services, such as health assessments or consultations, over the ...

  • Project Nightingale

    Project Nightingale is a controversial partnership between Google and Ascension, the second largest health system in the United ...

  • medical practice management (MPM) software

    Medical practice management (MPM) software is a collection of computerized services used by healthcare professionals and ...

SearchDisasterRecovery

SearchStorage

  • M.2 SSD

    An M.2 SSD is a solid-state drive (SSD) that conforms to a computer industry specification and is used in internally mounted ...

  • kilobyte (KB or Kbyte)

    A kilobyte (KB or Kbyte) is a unit of measurement for computer memory or data storage used by mathematics and computer science ...

  • virtual memory

    Virtual memory is a memory management capability of an operating system (OS) that uses hardware and software to allow a computer ...

Close