The creators of the jQuery Validation Plugin have finally addressed a vulnerability in a demo component that was first reported to them more than three years ago.
The jQuery Validation Plugin, which is written and maintained by Jörn Zaefferer of the jQuery team, is a plugin that enables easy form validation. Dutch security consultant Sijmen Ruwhof discovered a cross-site scripting (XSS) vulnerability in the plugin’s CAPTCHA demo script.
While the security hole affects the demo code and not the plugin itself, the researcher has decided to disclose the existence of the flaw because he believes many developers install the demo code along with the plugin.
“With this severe vulnerability session hijacking is possible in most cases via a reflected cross-site scripting attack, which can result in identity theft (if session cookies aren’t protected via HttpOnly),” Ruwhof explained in a blog post.
Ruwhof released the details of the vulnerability on Tuesday, three months after notifying the plugin’s developers. However, the Dutch researcher wasn’t the first to find and report the vulnerability. The earliest reports of this security hole are from June 2011, but the buggy CAPTCHA code seems to be around since 2007.
“As it seems, the cross-site scripting vulnerability was introduced by the developer of the CAPTCHA script and not by author of the jQuery Validation Plugin,” Ruwhof said.
The vulnerability remained unfixed until Wednesday when Zaefferer patched the plugin.
A Google search for a piece of code specific to websites that could be vulnerable returned 12,000 results. Searching for code found in the original CAPTCHA script returned 8,100 results. The researcher believes that roughly 20,000 websites are affected by the XSS vulnerability.
“This story is about taking responsibility for any code that ships with your software and taking security serious. This story is also about knowing where your code came from, who wrote it and the habit of blindly copying code with all kind of security implications,” Ruwhof said.
XSS vulnerabilities are highly common, but that doesn’t mean they’re less dangerous. Back in May, Google released a simple game to teach Web application developers how to spot XSS flaws in their code.