02.26.2009

VU#461321: HP Virtual Rooms ActiveX control fails to restrict access to dangerous methods

Vulnerability Note VU#461321

HP Virtual Rooms ActiveX control fails to restrict access to dangerous methods

Overview

The HP Virtual Rooms ActiveX control contains methods that can be used to download and execute arbitrary code from an arbitrary server.

I. Description

HP Virtual Rooms is software for online collaboration. HP Virtual Rooms requires Internet Explorer, as one of the components is an ActiveX control called HPVirtualRooms32, which is provided by the file HPVirtualRooms32.dll. The HPVirtualRooms32 ActiveX control contains dangerous methods, but does not place any restrictions on which web sites can use the control. These methods can be used to download and execute arbitrary code from an arbitrary server.

II. Impact

By convincing a user to view a specially crafted HTML document (e.g., a web page or an HTML email message or attachment), an attacker may be able to execute arbitrary code with the privileges of the user.

III. Solution

Apply an update

This issue is addressed with the HP Virtual Rooms client 7.01. This update sets the kill bit for the vulnerable version of the ActiveX control, while providing an updated version with a different CLSID. Please see the HP Virtual Rooms 7.01 release notice for more details. This control is also disabled in Internet Explorer with the update for Microsoft Security Advisory (969898). Please also consider the following workarounds:





Disable the HPVirtualRooms32 ActiveX control in Internet Explorer



The vulnerable ActiveX control can be disabled in Internet Explorer by setting the kill bit for the following CLSID:

    {00000032-9593-4264-8B29-930B3E4EDCCD}

More information about how to set the kill bit is available in Microsoft Support Document 240797. Alternatively, the following text can be saved as a .REG file and imported to set the kill bit for this control:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{00000032-9593-4264-8B29-930B3E4EDCCD}]
    "Compatibility Flags"=dword:00000400

Disable ActiveX



Disabling ActiveX controls in the Internet Zone (or any zone used by an attacker) appears to prevent exploitation of this and other ActiveX vulnerabilities. Instructions for disabling ActiveX in the Internet Zone can be found in the "Securing Your Web Browser" document.

Systems Affected

VendorStatusDate NotifiedDate Updated
Hewlett-Packard CompanyVulnerable2008-10-012009-06-09

References

http://www.cert.org/tech_tips/securing_browser/



http://h10076.www1.hp.com/education/hpvr/docs/HP_Virtual_Rooms_Client_Build_2722.htm

http://www.microsoft.com/technet/security/advisory/969898.mspx

http://www.securityfocus.com/bid/33918

http://www.securityfocus.com/archive/1/501260

http://support.microsoft.com/kb/240797

Credit

This vulnerability was reported by Will Dormann of the CERT/CC.

This document was written by Will Dormann.

Other Information

Date Public:2009-02-24
Date First Published:2009-02-26
Date Last Updated:2009-06-09
CERT Advisory: 
CVE-ID(s):CVE-2009-0208
NVD-ID(s):CVE-2009-0208
US-CERT Technical Alerts: 
Metric:8.51
Document Revision:11
02.25.2009

The CERT/CC and FIRST Announce Best Practices Contest 2009

For the second year in a row, the CERT/CC and FIRST are jointly hosting an international competition to honor best practices and advances in safeguarding the security of computer systems and networks.

02.23.2009

VU#435052: Intercepting proxy servers may incorrectly rely on HTTP headers to make connections

Vulnerability Note VU#435052

Intercepting proxy servers may incorrectly rely on HTTP headers to make connections

Overview

Proxy servers running in interception mode ("transparent" proxies) that make connection decisions based on HTTP header values may be used by an attacker to relay connections.

I. Description

HTTP Host Headers are defined in RFC 2616 and are often used to by web servers to allow multiple websites to share a single IP address.

From RFC 2616:

    A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP URL). For example, a request on the origin server for <http://www.w3.org/pub/WWW/> would properly include:

    GET /pub/WWW/ HTTP/1.1
    Host:
    www.w3.org</i>

    A client MUST include a Host header field in all HTTP/1.1 request messages . If the requested URI does not include an Internet host name for the service being requested, then the Host header field MUST be given with an empty value. An HTTP/1.1 proxy MUST ensure that any request message it forwards does contain an appropriate Host header field that identifies the service being requested by the proxy. All Internet-based HTTP/1.1 servers MUST respond with a 400 (Bad Request) status code to any HTTP/1.1 request message which lacks a Host header field.

Transparent proxy servers intercept and redirect network connections without user interaction or browser configuration. Some transparent intercepting proxy implementations make connection decisions based on the HTTP host-header value. Browser plugins (Flash, Java, etc) may enforce access controls on active content by limiting communication to the site or domain that the content originated from. An attacker may be able to forge HTTP host-header (or other HTTP headers) via active content. A proxy server running in intercepting ("transparent&quot;) mode that makes connection decisions based on HTTP header values instead of source and destination IP addresses is vulnerable due the ability of a remote attacker to forge these values.





To successfully exploit this issue, an attacker would need to either convince a user to visit a web page with malicious active content or be able to load the active content in an otherwise trusted site. Note that this vulnerability appears to only affect proxy servers that run in transparent mode and browser same origin policies should prevent attackers from re-using authentication credentials (cookies, etc) to obtain further access. This issue does not apply to proxy servers running in reverse mode.



More information about this issue can be found in the Socket Capable Browser Plugins Result In Transparent Proxy Abuse paper.

II. Impact

An attacker may be able to make full connections to any website or resource that the proxy can connect to. These sites may include internal resources such as intranet sites that would not usually be exposed to the Internet.

III. Solution

Update

When possible, administrators are recommended to obtain updated software. See the systems affected section of this document for a partial list of affected vendors. Until updates are able to be applied, the below workarounds will mitigate this vulnerability.





Administrators who would like to check their proxy server to determine if it is vulnerable should see the "Reproduction Instructions" section of the Socket Capable Browser Plugins Result In Transparent Proxy Abuse paper.



Workarounds for Administrators



It is possible to limit the impact of this vulnerability by restricting access in several ways:
  • Internal services that use an authentication scheme (such as a username/password) are not as likely to be affected by this issue.
  • Network designs that have limited connectivity between the proxy and internal services will prevent an attacker from obtaining direct access to these services via the proxy. Administrators should consider using access control lists or firewall rules to prevent direct connections between internal servers and proxy servers.
  • Administrators should configure the proxy to use the only the protocols and ports which are required for normal operation. In particular, administrators should limit the CONNECT method to only the minimum required port range (usually 443/tcp).
  • When possible, router or switch access control lists should be configured to prevent HTTP proxy servers from connecting to servers using ports or protocols that they should normally use. HTTP proxy servers do not usually need to communicate with well known ports other than 80/tcp and 443/tcp.

Workarounds for specific vendors are in the systems affected section of this document.





Workarounds for users
  • To exploit this issue an attacker needs to execute active content (Java, Flash, Silverlight, etc) in the context of a web browser. Mozilla Firefox users should consider using the NoScript plugin to whitelist sites that can execute dynamic content. See the Securing Your Web Browser document for more information about secure browser configurations.

Workarounds for proxy server vendors



Although these workarounds will not address the underlying issue, vendors who distribute HTTP proxy servers are encouraged to implement them to mitigate future vulnerabilities.

  • In default configurations, the proxy server should only be able to connect to a limited number of well known ports.
  • The CONNECT method should only be allowed for traffic that uses desitnation port 443/tcp, unless the proxy is desgined to act as a TCP tunnel on all ports.

Systems Affected

VendorStatusDate NotifiedDate Updated
3com, Inc.Unknown2008-12-092008-12-09
ACCESSUnknown2008-12-092008-12-09
Alcatel-LucentUnknown2008-12-092008-12-09
Apple Computer, Inc.Not Vulnerable2008-12-092008-12-11
AT&TUnknown2008-12-092008-12-09
Avaya, Inc.Unknown2008-12-092008-12-09
AvertLabsUnknown2008-12-102008-12-10
Barracuda NetworksUnknown2008-12-092008-12-09
Belkin, Inc.Unknown2008-12-092008-12-09
Blue Coat SystemsVulnerable2009-01-022009-03-04
Borderware TechnologiesNot Vulnerable2008-12-092009-02-03
BroUnknown2008-12-092008-12-09
Charlotte's Web NetworksUnknown2008-12-092008-12-09
Check Point Software TechnologiesNot Vulnerable2008-12-092009-02-20
CIACUnknown2008-12-092008-12-09
Cisco Systems, Inc.Not Vulnerable2008-12-092009-03-12
ClavisterUnknown2008-12-092008-12-09
Computer AssociatesUnknown2008-12-092008-12-09
Computer Associates eTrust Security ManagementUnknown2008-12-092008-12-09
Conectiva Inc.Unknown2008-12-092008-12-09
Cray Inc.Not Vulnerable2008-12-092008-12-17
Data Connection, Ltd.Unknown2008-12-092008-12-09
Debian GNU/LinuxNot Vulnerable2008-12-092009-02-20
DragonFly BSD ProjectUnknown2008-12-092008-12-09
EMC CorporationUnknown2008-12-092008-12-09
Engarde Secure LinuxUnknown2008-12-092008-12-09
Enterasys NetworksUnknown2008-12-092008-12-09
EricssonUnknown2008-12-092008-12-09
eSoft, Inc.Unknown2008-12-092008-12-09
Extreme NetworksUnknown2008-12-092008-12-09
F5 Networks, Inc.Unknown2008-12-092008-12-09
Fedora ProjectUnknown2008-12-092008-12-09
Force10 Networks, Inc.Not Vulnerable2008-12-092009-02-04
Fortinet, Inc.Not Vulnerable2008-12-092008-12-10
Foundry Networks, Inc.Not Vulnerable2008-12-092008-12-11
FreeBSD, Inc.Unknown2008-12-092008-12-09
FujitsuUnknown2008-12-092008-12-09
Gentoo LinuxUnknown2008-12-092008-12-09
Global Technology AssociatesUnknown2008-12-092008-12-09
GoogleUnknown2009-01-082009-01-08
Hewlett-Packard CompanyUnknown2008-12-092008-12-09
HitachiUnknown2008-12-092008-12-09
IBM CorporationUnknown2008-12-092008-12-09
IBM Corporation (zseries)Unknown2008-12-092008-12-09
IBM eServerUnknown2008-12-092008-12-09
Ingrian Networks, Inc.Unknown2008-12-092008-12-09
Intel CorporationNot Vulnerable2008-12-092009-01-07
Internet Initiative JapanNot Vulnerable2009-03-03
Internet Security Systems, Inc.Unknown2008-12-092008-12-09
IntotoUnknown2008-12-092008-12-09
IP FilterNot Vulnerable2008-12-092009-01-08
Juniper Networks, Inc.Unknown2008-12-092008-12-09
Luminous NetworksUnknown2008-12-092008-12-09
m0n0wallUnknown2008-12-092008-12-09
Mandriva, Inc.Unknown2008-12-092008-12-09
McAfeeUnknown2008-12-092008-12-09
Microsoft CorporationUnknown2008-12-092008-12-09
Microsoft Vulnerability ResearchUnknown2009-02-092009-02-09
MontaVista Software, Inc.Unknown2008-12-092008-12-09
Multitech, Inc.Unknown2008-12-092008-12-09
NEC CorporationUnknown2008-12-092008-12-09
NetAppUnknown2008-12-092008-12-09
NetBSDUnknown2008-12-092008-12-09
netfilterUnknown2008-12-092008-12-09
NokiaUnknown2008-12-092008-12-09
Nortel Networks, Inc.Unknown2008-12-092008-12-09
Novell, Inc.Not Vulnerable2008-12-092008-12-18
OpenBSDUnknown2008-12-092008-12-09
OpenSSHUnknown2009-01-062009-01-06
PayPalUnknown2008-11-112008-11-11
PePLinkNot Vulnerable2008-12-092009-01-02
PrivoxyUnknown2009-01-062009-01-06
Process SoftwareUnknown2008-12-092008-12-09
Q1 LabsUnknown2008-12-092008-12-09
QBIK New Zealand LimitedVulnerable2009-01-152009-01-21
QNX, Software Systems, Inc.Unknown2008-12-092008-12-09
QuaggaUnknown2008-12-092008-12-09
RadWare, Inc.Not Vulnerable2008-12-092008-12-17
Red Hat, Inc.Unknown2008-12-092008-12-09
Redback Networks, Inc.Unknown2008-12-092008-12-09
Secure Computing Network Security DivisionUnknown2008-12-092008-12-09
Secureworx, Inc.Unknown2008-12-092008-12-09
Silicon Graphics, Inc.Unknown2008-12-092008-12-09
Slackware Linux Inc.Unknown2008-12-092008-12-09
SmoothWallVulnerable2008-12-092009-02-20
SnortUnknown2008-12-092008-12-09
Soapstone NetworksUnknown2008-12-092008-12-09
Sony CorporationUnknown2008-12-092008-12-09
Sophos, Inc.Unknown2009-03-112009-03-11
SourcefireUnknown2008-12-092008-12-09
SquidVulnerable2009-01-022009-02-23
StonesoftUnknown2008-12-092008-12-09
Sun Microsystems, Inc.Unknown2008-12-092008-12-09
SUSE LinuxUnknown2008-12-092008-12-09
Symantec, Inc.Unknown2008-12-092008-12-09
The SCO GroupUnknown2008-12-092008-12-09
TippingPoint, Technologies, Inc.Not Vulnerable2008-12-092009-01-13
TurbolinuxUnknown2008-12-092008-12-09
U4EA Technologies, Inc.Unknown2008-12-092008-12-09
UbuntuUnknown2008-12-092008-12-09
UnisysUnknown2008-12-092008-12-09
VyattaUnknown2008-12-092008-12-09
Watchguard Technologies, Inc.Unknown2008-12-092008-12-09
Wind River Systems, Inc.Not Vulnerable2008-12-092009-03-04
ZiproxyVulnerable2009-01-132009-02-23
ZyXELUnknown2008-12-092008-12-09
02.23.2009

Top Ten Web Hacking Techniques of 2008 (Official)

We searched far and wide collecting as many Web Hacking Techniques published in 2008 as possible -- ~70 in all. These new and innovative techniques were analyzed and ranked based upon their novelty, impact, and pervasiveness. The 2008 competition was exceptionally fierce and our panel of judges (Rich Mogull, Chris Hoff, H D Moore, and Jeff Forristal) had their work cut out for them. For any researcher, or "breaker" if you prefer, simply the act of creating something unique enough to appear on the list is no small feat. That much should be considered an achievement. In the end, ten Web hacking techniques rose head and shoulders above.

Supreme honors go to Billy Rios, Nathan McFeters, Rob Carter, and John Heasman for GIFAR! The judges were convinced their work stood out amongst the field. Beyond industry recognition, they also will receive the free pass to Black Hat USA 2009 (generously sponsored by Black Hat)! Now they have to fight over it. ;)

Congratulations to all!

Coming up at SnowFROC AppSec 2009 and RSA Conference 2009 it will be my great privilege to highlight the results. Each of the top ten techniques will be described in technical detail for how they work, what they can do, who they affect, and how best to defend against them. The opportunity provides a chance to get a closer look at the new attacks that could be used against us in the future -- some of which already have.


Top Ten Web Hacking Techniques of 2008!

1. GIFAR
(Billy Rios, Nathan McFeters, Rob Carter, and John Heasman)

2. Breaking Google Gears' Cross-Origin Communication Model
(Yair Amit)

3. Safari Carpet Bomb
(Nitesh Dhanjani)

4. Clickjacking / Videojacking
(Jeremiah Grossman and Robert Hansen)

5. A Different Opera
(Stefano Di Paola)

6. Abusing HTML 5 Structured Client-side Storage
(Alberto Trivero)

7. Cross-domain leaks of site logins via Authenticated CSS
(Chris Evans and Michal Zalewski)

8. Tunneling TCP over HTTP over SQL Injection
(Glenn Wilkinson, Marco Slaviero and Haroon Meer)

9. ActiveX Repurposing
(Haroon Meer)

10. Flash Parameter Injection
(Yuval Baror, Ayal Yogev, and Adi Sharabani)


The List

  1. CUPS Detection
  2. CSRFing the uTorrent plugin
  3. Clickjacking / Videojacking
  4. Bypassing URL Authentication and Authorization with HTTP Verb Tampering
  5. I used to know what you watched, on YouTube (CSRF + Crossdomain.xml)
  6. Safari Carpet Bomb
  7. Flash clipboard Hijack
  8. Flash Internet Explorer security model bug
  9. Frame Injection Fun
  10. Free MacWorld Platinum Pass? Yes in 2008!
  11. Diminutive Worm, 161 byte Web Worm
  12. SNMP XSS Attack (1)
  13. Res Timing File Enumeration Without JavaScript in IE7.0
  14. Stealing Basic Auth with Persistent XSS
  15. Smuggling SMTP through open HTTP proxies
  16. Collecting Lots of Free 'Micro-Deposits'
  17. Using your browser URL history to estimate gender
  18. Cross-site File Upload Attacks
  19. Same Origin Bypassing Using Image Dimensions
  20. HTTP Proxies Bypass Firewalls
  21. Join a Religion Via CSRF
  22. Cross-domain leaks of site logins via Authenticated CSS
  23. JavaScript Global Namespace Pollution
  24. GIFAR
  25. HTML/CSS Injections - Primitive Malicious Code
  26. Hacking Intranets Through Web Interfaces
  27. Cookie Path Traversal
  28. Racing to downgrade users to cookie-less authentication
  29. MySQL and SQL Column Truncation Vulnerabilities
  30. Building Subversive File Sharing With Client Side Applications
  31. Firefox XML injection into parse of remote XML
  32. Firefox cross-domain information theft (simple text strings, some CSV)
  33. Firefox 2 and WebKit nightly cross-domain image theft
  34. Browser's Ghost Busters
  35. Exploiting XSS vulnerabilities on cookies
  36. Breaking Google Gears' Cross-Origin Communication Model
  37. Flash Parameter Injection
  38. Cross Environment Hopping
  39. Exploiting Logged Out XSS Vulnerabilities
  40. Exploiting CSRF Protected XSS
  41. ActiveX Repurposing, (1, 2)
  42. Tunneling tcp over http over sql-injection
  43. Arbitrary TCP over uploaded pages
  44. Local DoS on CUPS to a remote exploit via specially-crafted webpage (1)
  45. JavaScript Code Flow Manipulation
  46. Common localhost dns misconfiguration can lead to "same site" scripting
  47. Pulling system32 out over blind SQL Injection
  48. Dialog Spoofing - Firefox Basic Authentication
  49. Skype cross-zone scripting vulnerability
  50. Safari pwns Internet Explorer
  51. IE "Print Table of Links" Cross-Zone Scripting Vulnerability
  52. A different Opera
  53. Abusing HTML 5 Structured Client-side Storage
  54. SSID Script Injection
  55. DHCP Script Injection
  56. File Download Injection
  57. Navigation Hijacking (Frame/Tab Injection Attacks)
  58. UPnP Hacking via Flash
  59. Total surveillance made easy with VoIP phone
  60. Social Networks Evil Twin Attacks
  61. Recursive File Include DoS
  62. Multi-pass filters bypass
  63. Session Extending
  64. Code Execution via XSS (1)
  65. Redirector’s hell
  66. Persistent SQL Injection
  67. JSON Hijacking with UTF-7
  68. SQL Smuggling
  69. Abusing PHP Sockets (1, 2)
  70. CSRF on Novell GroupWise WebAccess



WhiteHat Security is a leading provider of web application security services. WhiteHat Sentinel, the company’s flagship service, provides continuous web applications vulnerability assessment and management.



02.22.2009

SQL Injection, eye of the storm

Originally published by Security Horizon in the Winter 2009 edition of Security Journal.

In 2008 SQL Injection became the leading method of malware distribution, infecting millions of Web pages and foisting browser-based exploits upon unsuspecting visitors. The ramifications to online businesses include data loss, PCI fines, downtime, recovery costs, brand damage, and revenue decline when search engines blacklist them. According to WhiteHat Security, 16 percent of websites are vulnerable to SQL Injection. This is likely under-reported given that the statistics are largely based on top-tier Web properties that employ a website vulnerability management solution to identify the problem. The majority of websites do not and as such may be completely unaware of the extent of the issue. In addition, some recommended security best-practice have ironically benefited malicious hackers. Websense now reports that "60 percent of the top 100 most popular Web sites have either hosted or been involved in malicious activity in the first half of 2008." Let’s examine the forces that have aligned to create the storm that allows SQL Injection to thrive.

Any custom Web application that lacks proper input-validation, fails to use parameterized SQL statements, and/or creates dynamic SQL with user-supplied data potentially leave themselves open to SQL Injection attacks -- unauthorized commands passed to back-end databases. When Rain Forest Puppy first described SQL Injection ten years ago, on Christmas Day 1998, it was a targeted one-off attack capable of exploiting only a single website at a time. Custom Web applications contain custom vulnerabilities and require custom exploits. Successfully extracting data out of an unfamiliar database is different in each instance and greatly aided by error messages revealing snippets of server-side code.

To solve the SQL Injection problem, preferably in the code, first we must identify what is broken. The easiest method to-date has been through remote black-box testing, submitting meta-characters (single quotes and semicolons) into Web applications. If the website returns a recognizable response, such as an ODBC error message, there is a high probability that a weakness exists. Comprehensive security testing, typically aided by black-box vulnerability scanners, performs the same procedure on every application input-point including URL query parameters, POST data, cookies, etc. and repeated with each code update. This software security testing process is also now one of the assessment options mandated by PCI-DSS section 6.6.

In the wake of highly publicized compromises like the 2006 incident at CardSystems, a back-end credit card transaction processor, in which millions of stolen credit card numbers fell into the wrong hands, website owners were strongly encouraged to update their Web application code and suppress error messages to defend against SQL Injection attacks. Many implemented solely the latter since it only required a simple configuration change, hindering the bad guy’s ability to identify SQL Injection vulnerabilities. Since the vulnerabilities couldn’t be found easily, perhaps this contributed to incorrectly training developers that security through obscurity was enough. Widespread attacks were not seen as prevalent enough to justify a serious software security investment. Despite cutting-edge Blind SQL Injection research helping to improve black-box testing, error message suppression contributed to three very important side effects:

  1. Black-box vulnerability scanner false-positive and false-negative rate skyrocketed.
  2. SQL Injection became significantly harder to identify, but ironically not exploit.
  3. Extracting data out of a database became exceptionally more laborious than injecting data in.

In 2007, cyber criminals in China created a new technique capable of generically exploiting SQL Injection vulnerabilities without reliance on error messages. Perpetrators inserted malicious JavaScript IFRAMEs (pointing to malware servers) into back-end databases, as opposed to pulling data out, and used the capability to exploit unpatched Web browsers and plugi-ins in record numbers. "The scale of this global criminal operation has reached such proportions that Sophos discovers one new infected webpage every 4.5 seconds – 24 hours a day, 365 days a year." No longer limited to one-off hacks, SQL Injection quickly became a method of choice to target anything and everything on the Web. According to Websense, “75 percent of Web sites with malicious code are legitimate sites that have been compromised.” Furthermore, attacks have been widely successful without even needing to authenticate. That means any website functionality beyond a login screen represents further attack targets. Worse still, security pros are unable to leverage these techniques to improve SQL Injection vulnerability detection because doing so risks adversely affecting the website.

For example, when vulnerability assessments are conducted on production systems, a cardinal rule must be followed, “Do no harm.” This often requires that testing rates be limited (X number of requests per second), testing windows be respected (usually during off-peak hours), and tests be nondestructive. It should go without saying that we do not want to crash websites or fill databases with undesirable content. Malicious hackers have no such restrictions as they may test however they want, whenever they want, for as long as they want. The other disadvantage for website defenders is that they must be 100% accurate at finding and fixing every issue all the time, while the attacker need only to exploit a single missed issue. This is an unfortunate, but inescapable reality in Web security and why testing frequency and comprehensiveness approach is vital.

Source code review (aka white-box testing) is the other option to locate SQL Injection vulnerabilities and often able to peer deeper into the problem than black-box testing. Of course you must have access to the source code. Before considering this as a scalable solution begin by asking yourself if executive management would allocate enough resources to perform source code reviews on every website every time they change. Thinking globally, let’s consider that there are over 186 million websites. While not all are “important,” if 16% had just a single vulnerability as previously cited, that means a staggering 30 million issues are in circulation. Would it be reasonable to project that finding (not fixing) each unique issue through white-box testing, even assisted by automation, would require $100 in personnel and technology costs? If so, we are talking about at least a $3 billion dollar price tag to simply locate SQL Injection -- to say nothing about other more prevalent issues such as Cross-Site Scripting and Cross-Site Request Forgery that will be left undiscovered.

Secure software education is another valuable long-term strategy that will help prevent another 30 million vulnerabilities being added to the pile over the next 15 years, but will not provide a short-term fix to the problem. Currently, there are roughly 17 million developers worldwide who are not educated on the basic concepts of secure coding that could help them tackle the SQL injection and other issues. Would $500 per developer be an acceptable rate for professional training (commercial 2-day classes typically start at $1,000 on up)? If so, the market must be prepared to make an $8.5 billion investment and then wait for everyone to come up to speed. Obviously the private sector is not going to shoulder such a financial burden alone, not in any economy, let alone in a recession. The fact is education costs must be shared in amongst colleges, enterprises, vendors, developers themselves, or through materials made freely available by organizations such as OWASP and WASC.

The climate for SQL Injection vulnerabilities has all the makings of a perfect storm, one we are already experiencing. The issue is extremely dangerous, incredibly pervasive, difficult to identify, easy to exploit, and expensive to fix. Over the last 15 years organizations have accumulated a lot Web security debt that eclipses our currently estimated spending of ~$300 million, combining outlays for scanning tools, professional services, training, and Web application firewalls. Perhaps we should ask president-elect Obama for a Web security bailout. Not likely. The fact is not every organization will invest adequately to protect themselves, at least not over night. Those who do not will undoubtedly become the low hanging fruit bad guys target first. The smart money says vast numbers of compromises will continue throughout 2009.

For those wishing to do all they can to prevent compromises, the answer is adopting a holistic approach addressing overall Web security, including SQL Injection. While fully articulating the details of each solution is beyond the scope of this article, it is important to highlight several of the most important and why they are a good ideas.

  • Security throughout the Software Development Life-Cycle, because an ounce of prevention is worth a pound of cure.
  • Education, teach a man to fish.
  • Vulnerability Assessment, because you cannot secure what you cannot measure.
  • Web Application Firewalls, because software is not and will never be perfect.
  • Web Browser security, because one must be able to protect themselves against a hostile website.

This combined strategy will prevent us from having the same conversation about Cross-Site Scripting and Cross-Site Request Forgery in the near future.




WhiteHat Security is a leading provider of web application security services. WhiteHat Sentinel, the company’s flagship service, provides continuous web applications vulnerability assessment and management.



:: Next >>

free blog themes / templates