How one site dealt with SQL injection attack
- 02 May, 2008 08:34
The massive wave of SQL injection attacks that started striking Microsoft-based Web sites around the world more than a week ago claimed as one of its victims Autoweb, a UK-based advertising and marketing site.
The ongoing attack, which hit Autoweb on a late Friday, exploited a vulnerability in a single line of code in the Web application to pierce through to the company's Microsoft SQL database, inject 30 characters to overwrite content, defaced Web pages, and ultimately knocked the site offline. The attack left Web pages that would attempt to inject malicious code into browsers of Web visitors.
It is estimated that at least a half-million Web pages had been infected in a similar style since it was flagged by security experts April 24. How Autoweb had to fight to recover its site over the long weekend that followed shows how devastating SQL injection attacks can be.
CIO Richard McCombe said nothing like this ever happened before to its Web site, which is hosted by a provider in Leeds, England. "We were struggling at that point to get the site back up."
But Autoweb's IT staff, who worked through the weekend, soon realized that database tables storing content provided by car dealers about their vehicles had been overwritten with a 30-character script.
A look at log files showed the attacks, which continued to surge through the weekend, were originating from IP addresses in China. So Autoweb blocked them. "That gave us a window of opportunity," says McCombe.
About a day's worth of new Web content from car dealers had been corrupted in the SQL injection attacks, but Autoweb did a daily backup, so it turned to that for clean content, and began backing up each hour through the weekend.
McCombe reached out for advice to UK-based firm Secerno, which builds a database-security appliance.
Steve Moyle, chief technology officer at Oxford, England-based Secerno, informed Autoweb that the most likely point of attack was through Web pages. McCombe then contacted the Web software developer, a contractor that worked for Autoweb, on a Sunday. But the developer said the problem was simply "over his head," said McCombe. The contractor had no idea how to find and fix the Web page vulnerability that allowed the SQL injection attack code to execute successfully.
Secerno, an appliance vendor, couldn't help with Web application remediation since its expertise was in database protection, and its appliance couldn't be used in Autoweb's case since Autoweb had the Web application and the database on a single server.
But McCombe managed to find a Web development company to fix the Web application hole.
"It was a simple piece of code in the Web application," says McCombe. As Autoweb began to put the nightmare of the massive SQL injection attack behind it last week, it's apparent there's been an impact.
"We were at 25,000 visits a day, now we're at 20,000," says McCombe, saying the site's ranking in a Google search has dropped somewhat but it will do what it can to bring that back up.
Autoweb may be making changes in its infrastructure for future defense against such attacks. Autoweb's Web application and database reside on the same server, but in order to use Secerno's security appliance, the two would have to be separated off the same server.
Secerno's Moyle says there are an "infinite number of different SQL injection attacks." They are all designed "to fool the application layer into passing a command to the database to ask the database something you wish it wouldn't ask."
Moyle's opinion is that while there are good tools for penetration testing, such as SPI Dynamics, it's "not about the tools, it's the people using them."
Individuals with expertise are what count the most he says, pointing to Next Generation Security Software, which has offices in the United Kingdom and the United States, as one firm with a strong reputation in understanding SQL injection attacks at the application layer.
Application-layer firewalls are another approach to preventing SQL injection attacks and similar threats that may exploit vulnerabilities, cross-site scripting.