Opinions: The sorry state of application security

Application security is currently one of the major battlegrounds in information security.

Application security is currently one of the major battlegrounds in information security.  Compromised web applications are ransacked for credit card numbers, personally identifiable information and is a major vector for spreading crimeware enabling criminals to defraud our banking institutions. But the field of application security is broader than web application security alone, we must remember that every system, device, appliance and Commercial Off The Shelf (COTS) application we use in our infrastructure is only secure if the code that comprises them is written securely.  Well what are some of the major issues in this challenging arena of application security?

Firstly we preach to the converted. When was the last time you saw a security professional presenting at an event attended by software developers and asking for their help in stopping the use of insecure functions or lobbying for the deprecation of them from development frameworks? The usual status quo is appsec people talking to appsec people in incestuous cabals or touting their skills to project directors and security managers to clean up after those "clueless coders" or educate them to be less clueless.

Secondly, there are many challenges with writing secure code.  I've always said that good infrastructure security is just the extension of good systems administration practice.  Likewise good application security is just the extension of good software engineering practice.  Good code meets customer requirements (naturally security requirements should comprise some of them) and has high quality due to peer review and quality control processes. 

Most security professionals can set fairly good application security requirements and even raise awareness of defensive coding principles thanks to some of the good work undertaken by groups such as OWASP, SANS, MITRE, CERT etc.  However only a few elite security professionals can swap seats with a top developer, read some of their code and show them how to meet those requirements on the fly.  To write good code (and hence secure code) requires extensive prior experience, skill, passion and constant use. To explain to the layperson, it’s kind of like the level of skill possessed by my costume designer friend. I watched with amazement as she designed and sewed a dress to fit my wife perfectly by sight alone in only a few minutes.  When a good portion of code produced today is written by the harassed and inexperienced using cut and paste methods from ill-defined patterns it’s no wonder we get fraying T shirts rather than tailor made suits!

Thirdly, there is no market driver for the development of secure software as security is not a marketable feature due to the lack of a rating scheme to enable purchasers to identify what product is more secure than another. Only federal governments have software assurance and certification programs (e.g. Common Criteria, UK Govt’s CPA Scheme, DSD’s AISEP etc.) to enable their most security conscious agencies to procure theoretically more secure products. Only a small subset of products are certified to these schemes due to the costs involved for the vendor. 

Fourthly, Universities don’t teach secure coding techniques and a defensive mindset as part of their standard software engineering syllabus and don’t seem to even want to.  The CSO of Oracle (the world's largest software company according to Forbes) sent 10 or more letters to major US universities requesting that application security be taught as part of curriculum for software engineering and that Oracle would preferentially hire their students if they did. Only one was returned!

First steps in attempting to address these challenges should really start closer to home, the security industry needs to “eat its own dog food”. According to Veracode’s latest State of Software Security (SOSS) Report, 72 per cent of security applications assessed by the company were deemed 'unacceptable' on the first analysis of their code, a result that was ahead of only one sector, customer support, which failed 82 per cent of the time.  It’s kind of weird that Microsoft is now one of the best success stories for an effective application security program.  Why isn’t a security company leading the pack?

Tags: cert, Opinions, SANs, secure code, security, Mitre, application security, OWASP, infrastructure security, Web application security, secure software
Comments are now closed.
CSO Corporate Partners
  • Webroot
  • Trend Micro
  • NetIQ
rhs_login_lockGet exclusive access to CSO, invitation only events, reports & analysis.
CSO Directory

Splunk for Security (Enterprise)

Splunk collects, indexes and harnesses all the fast moving machine data generated by your applications, servers and devices - physical, virtual and in the cloud.

Security Awareness Tip

Incident handling is a vast topic, but here are a few tips for you to consider in your incident response. I hope you never have to use them, but the odds are at some point you will and I hope being ready saves you pain (or your job!).


  1. Have an incident response plan.

  2. Pre-define your incident response team 

  3. Define your approach: watch and learn or contain and recover.

  4. Pre-distribute call cards.

  5. Forensic and incident response data capture.

  6. Get your users on-side.

  7. Know how to report crimes and engage law enforcement. 

  8. Practice makes perfect.

For the full breakdown on this article

Security ABC Guides

Warning: Tips for secure mobile holiday shopping

I’m dating myself, but I remember when holiday shopping involved pouring through ads in the Sunday paper, placing actual phone calls from tethered land lines to research product stock and availability, and actually driving places to pick things up. Now, holiday shoppers can do all of that from a smartphone or tablet in a few seconds, but there are some security pitfalls to be aware of.