Security Experts:

Connect with us

Hi, what are you looking for?


Application Security

IEEE Report Reveals Top 10 Software Security Design Flaws

The IEEE (Institute of Electrical and Electronics Engineers) Center for Secure Design has published some advice to help software developers dodge common mistakes that compromise security.

The IEEE (Institute of Electrical and Electronics Engineers) Center for Secure Design has published some advice to help software developers dodge common mistakes that compromise security.

In a new report entitled ‘Avoiding  the Top 10 Software Security Design Flaws’, the Center for Secure Design (CSD) is looking to shift some of the focus from finding implementation bugs to identifying design flaws with the goal of helping software developers learn from their mistakes. Based on input from experts from a variety of organizations such as Twitter, Google and Hewlett-Packard, the 31-page report breaks the advice down into 10 broad categories:

– Earn or give, but never assume, trust

– Use an authentication mechanism that cannot be bypassed or tampered with

– Authorize after you authenticate

– Strictly separate data and control instructions, and never process control instructions received from untrusted sources

– Define an approach that ensures all data are explicitly validated

– Use cryptography correctly

– Identify sensitive data and how they should be handled

– Always consider the users

– Understand how integrating external components changes your attack surface

– Be flexible when considering future changes to objects and actors

“Bugs and flaws are two very different types of security defects,” Gary McGraw, chief technology officer at Cigital, said in a statement. “We believe there has been quite a bit more focus on common bugs than there has been on secure design and the avoidance of flaws, which is worrying since design flaws account for 50 percent of software security issues.”

The CSD brought the experts together earlier this year in a workshop. There, they discussed the design flaws they either identified in their own internal design reviews or were available from external data.

In the report, the group explains that while bugs may exist in code and never be executed, flaws are a problem at a much deeper level.

“Flaws are often much more subtle than simply an off-by-one error in an array reference or use of an incorrect system call,” the report notes. “A flaw might be instantiated in software code, but it is the result of a mistake or oversight at the design level.”

An example of such a flaw noted in the report is the failure to separate data and control instructions and the co-mingling of them in a string – a situation that can lead to injection vulnerabilities.

“Lack of strict separation between data and code often leads to untrusted data controlling the execution flow of a software system,” the report notes. “This is a general problem that manifests itself at several abstraction layers, from low-level machine instructions and hardware support to high-level virtual machine interpreters and application programming and domain specific language expressions.”

“The Center for Secure Design will play a key role in refocusing software security on some of the most challenging open design problems in security,” said Neil Daswani of the security engineering team at Twitter, in a statement. “By putting focus on security design and not just focusing on implementation bugs in code, the CSD does even the most advanced companies in the space a huge service.”

The report is available here.

Written By

Click to comment

Daily Briefing Newsletter

Subscribe to the SecurityWeek Email Briefing to stay informed on the latest threats, trends, and technology, along with insightful columns from industry experts.

Join this webinar to learn best practices that organizations can use to improve both their resilience to new threats and their response times to incidents.


Join this live webinar as we explore the potential security threats that can arise when third parties are granted access to a sensitive data or systems.


Expert Insights

Related Content

Application Security

Cycode, a startup that provides solutions for protecting software source code, emerged from stealth mode on Tuesday with $4.6 million in seed funding.

Application Security

PayPal is alerting roughly 35,000 individuals that their accounts have been targeted in a credential stuffing campaign.

Application Security

GitHub this week announced the revocation of three certificates used for the GitHub Desktop and Atom applications.

Application Security

Drupal released updates that resolve four vulnerabilities in Drupal core and three plugins.

Application Security

While there are many routes to application security, bundles that allow security teams to quickly and easily secure applications and affect security posture in...

Application Security

A CSRF vulnerability in the source control management (SCM) service Kudu could be exploited to achieve remote code execution in multiple Azure services.

Application Security

Many developers and security people admit to having experienced a breach effected through compromised API credentials.

Application Security

A security vulnerability identified on AliExpress, the wholesale marketplace owned by the Chinese e-commerce giant Alibaba, could have been exploited by hackers to hijack...