Java Web Attack Installs Malware In RAM 98
snydeq writes "A hard-to-detect piece of malware that doesn't create any files on the affected systems was dropped onto the computers of visitors to popular news sites in Russia in a drive-by download attack, according to Kaspersky Lab. 'What's interesting about this particular attack is the type of malware that was installed in cases of successful exploitation: one that only lives in the computer's memory. ... It's ideal to stop the infection in its early stages, because once this type of "fileless" malware gets loaded into memory and attaches itself to a trusted process, it's much harder to detect by antivirus programs.'"
Persistence? (Score:2, Redundant)
Re: (Score:3, Funny)
A: "Volume!"
Re: (Score:3, Informative)
"This type of malware is rare, because it dies when the system is rebooted and the memory is cleared.
However, this wasn't a problem for the cybercriminals behind this particular attack, because of the very high probability that most victims would revisit the infected news websites, Golovanov said."
From the linked article.
Re:Persistence? (Score:4, Interesting)
In Soviet Russia, Java runs YOU!
Re: (Score:2, Funny)
Oh noe! Programs have invaded my RAM!
I'm doomed! Time to call geek squad and have them reformat Windows!
Re: (Score:2, Funny)
Oh noe! Programs have invaded my RAM!
I'm doomed! Time to call geek squad and have them reformat Windows!
Have them install Linux. It's so awesome and secure it doesn't need RAM.
Re: (Score:3)
It's so awesome and secure it doesn't need RAM.
O rly? I agree, it needs very little. I have a Debian appliance with 32 megs of RAM, and a Unix server with 128 megs.
It doesn't (Score:5, Informative)
It doesn't have to. It contacts the C&C server where someone presumably decides whether to install further bots or more resident exploits.
The exploit seems to be more about stealth distribution and about dropping other malware. This makes sense because if a dropper is detected as malicious, it becomes useless due to its detection. (You can safely assume anything using a dropper is malicious)
This means that anti virus software should in theory only be able to detect the actual dropped malware. Any new malware could have had a field day with this exploit because both the dropper and malware would not have been detected.
From my understanding of the article it actually dropped the Lurk trojan but I get the feeling it could drop anything the C&C wants it to.
Re: (Score:2)
This is not a virus, but it does use a command and control server.
Re: (Score:2)
Wouldn't necessarily need to, if it's an infostealer type malware. It's already gotten what it needs to, doesn't matter if it gets rebooted - your passwords belong to the guy on the other end already.
Re: (Score:2)
If this malware resides exclusively in RAM without any footprint on the HDD or BIOS, then how does it survive a cold boot?
I didn't RTFA, so feel free to heckle me at whim:
1. How often do cold reboots really happen these days?
2. If Slashdot, for example, was a site that used this exploit, well there ya go.
Re: (Score:2)
Yeah, I wonder what they'd call the effect of having lots of Slashdotters preventing other sites from working.
Re: (Score:2)
1. How often do cold reboots really happen these days?
Every night for most home users. It's mainly geeks who leave their computers on 24/7 you know.
Re: (Score:2)
Re: (Score:2)
Do you have a statistic on that? My own experience paints a different picture.
Re: (Score:2)
> Every night for most home users. It's mainly geeks
> who leave their computers on 24/7 you know.
I probably qualify as a geek, but... here in Ontario, Canada, condo buildings have separate electric meters for each suite. So I have a financial incentive to hibernate my linux machine when not in use.
And I haven't had Java on my linux machine for years. One less attack vector. Nothing is "unbreakeable" (I'm looking at you, Oracle), but not running Java sure helps. Ditto for replacing Acrobat with epdfvie
Re: (Score:2)
Why this is news is a wonder, other than it being Java. We've seen it before, think SmitFraud.
Re: (Score:2)
Re: (Score:2)
In this case it's more general, you have to press the reset button which is the most frequent solution to any computer problem on any platform.
Re:Ctrl-Alt-Del (Score:5, Informative)
Oh, if only that weren't true.
My wife does enterprise storage, used to do backups ... occasionally a server gets out of whack, and has all sorts of problems. Eventually she or someone on her team ends up saying "can we just reboot it?". This is usually after several days of troubleshooting and huge amounts of time spent.
It fixes a vast amount of issue in which nobody can identify what's going wrong. Though, it makes any proper form of root-cause impossible to track down. I've heard this referred to as "The Microsoft Patch".
I also know some old-school UNIX admins and mainframe guys who cringe at the notion that a reboot can be a viable way of troubleshooting/making the problem go away. Because they don't reboot unless God himself has filled out all of the right paperwork, and only then if he's got a really good reason and there are no alternatives.
Re: (Score:3)
That makes a whole lot of sense. If your system isn't opaque like Windows, you can dig down to the root cause of a problem and ascertain that it will actually be gone after a reboot or whatever fix is needed. Otherwise chances are that it'll come back.
That's what I do on my own Linux boxes too. As soon as I find the time I want to switch from Debian to Gentoo to have even more of that capability.
Re: (Score:2)
Linux users have [access to] the sources of all or at least most of what they're running. Old school UNIX users used to as well, until IBM, HP & co made their Unixes proprietary.
Re: (Score:1)
Re: (Score:3)
How does Gentoo provide more of that capability than Debian? Even if you need to change the source, it's not like running an "apt-get source" and then a "dpkg-buildpackage" is a difficult process.
(This isn't a dig on Gentoo, which is obviously a great distro)
Re: (Score:2)
I agree but Gentoo kind of forces me to use the source and it seems that some of the system management is simpler and more obvious.
Re: (Score:2)
I also know some old-school UNIX admins and mainframe guys who cringe at the notion that a reboot can be a viable way of troubleshooting/making the problem go away.
One way you can find out what the problem is and prevent it from happening again. The other way you just pour gasoline on it, throw a couple matches in and hope that whatever caused the problem isn't fireproof.
Doing the magic dance, pressing the red button and hoping that everything gets better on its own isn't that different from Cargo Cult science or faith-based economic policy. It shouldn't be that hard to see why people who are supposed to know better don't like it.
Re: (Score:2)
Oh, I know why people don't like it, and certainly people don't like taking production outages for a mystery reboot.
But if you have spent a week on the phone with the vendor, involved several teams to trouble shoot, spent countless hours trying to identify the problem, and gotten nowhere ... If the reboot fixes the problem and it never comes back (which I have seen), then sometimes you have no better options.
The vendor just asks for logs. Nothing anywhere ever actually shows the source. And all you do is
Re: (Score:2)
But if you have spent a week on the phone with the vendor, involved several teams to trouble shoot, spent countless hours trying to identify the problem, and gotten nowhere ..
Yeah we had to reboot cisco core switches before. Initially we thought it was a firewall problem (was an active-active firewall cluster - which usually means it's more likely to be the culprit ;) ). But after spending a few nights in a freezing datacenter trying to figure out why it wasn't working, the decision was to reboot both the clustered switches (which took _everything_ down) and stuff started working again.
We were the support vendor for the firewall but not the switches. So we had to make sure it wa
Re: (Score:1)
I've seen a number of instances, from people trying to email files that were bigger than the total RAM on the machine, to secondary drives that were dying, all of which would cause the machine to fail to come back up but could be corrected while it was still on and save hours of work and possibly a trip to the site.
Rebooting a windows server though, yeah, that's stage 1 troubleshooting
Re: (Score:2)
I also know some old-school UNIX admins and mainframe guys who cringe at the notion that a reboot can be a viable way of troubleshooting/making the problem go away. Because they don't reboot unless God himself has filled out all of the right paperwork, and only then if he's got a really good reason and there are no alternatives.
I've seen issues where rebooting a Linux machine actually causes more problems than it solves.
As long as the kernel is still running nearly every other software issue on a Unix/Linux system can be fixed. And a few firmware/hardware issues, too.
Re: (Score:2)
That's how you solve all problems in Winders, right?
CTRL+SHIFT+ESCAPE is infinitely superior.
Re: (Score:2)
Re: (Score:1, Funny)
Where's the format button?
Re: (Score:2)
CTRL+AmigaLeft+AmigaRight is more superior.
(Unless you get a Guru Meditation error.)
Sandboxing (Score:2)
But how would it do that? Isn't Java sandboxed? Or is it only sandboxed on more recent operating systems (Win7 & OS X 10.7)?
Re: (Score:2)
It is sandboxed. If there was a DLL loaded there is a flaw in the sandbox, somebody got this code signed by a trusted certificate, or the user clicked "Run".
Re: (Score:3)
It is sandboxed as long as there is no bug to be exploited. And since there is no bug free software more complex than a "Hello, world!" program...
Re: (Score:2)
Re: (Score:1)
Unlike like Adobe Reader and Flash no one uses Java except as way to install malware on computers.
Not true, Oracle eBusiness Suite's front-end is written in java, and uses the java plugins.
Re: (Score:2)
All in memory? (Score:5, Interesting)
Re: (Score:3)
Could the jar pull the DLL remotely? If so, the only thing local that could be hunted for could be made to be innocuous, since pulling web resources is hardly an unusual process.
Re: (Score:3)
Re: (Score:2)
But the Jar is the exploit and that has to be downloaded for the JVM to load it. You won't find the DLL but that's not really the exploit. Any jar that is designed to get out of the sand box without being signed should be locked up by the AntiVirus as a code exploit.
Doesn't mean that the JAR has to hit disk. Java can load code out of memory just fine, though it has to go via the verifier on its journey from bytes to a loaded class. The problem comes when something messes up and gives code loaded from an untrusted source permission to do too much. Wasting CPU is irritating; turning into part of a botnet is much worse.
Re: (Score:2)
Re: (Score:2)
So, to get rid of it... (Score:2)
Not too terribly novel. (Score:3)
These are fairly common, actually.
Well, at least in the first steps of the malware - load a payload into memory that disables antivirus. Then you do the filesystem changes after the antivirus can no longer stop you.
Thus why antivirus isn't nearly as important as due diligence in using your computer. This means browsing without all of the fancy addons, generally. Or, at least, if you must have them, keep them up to date.
Then what does a memory scan do? (Score:3)
Every antivirus product I've used claims to scan memory for viruses (usually as the first step of a full scan). If it's not looking for these RAM based viruses, then what is it looking for?
Re:Then what does a memory scan do? (Score:4, Interesting)
AV software can scan memory in order to find active malware, yes, but it cannot do so constantly. For example, in order to make sure that your browser isn't getting owned, or that malware isn't otherwise being attached to an active process, it would have to scan every change to memory, which would be prohibitive in terms of processing overhead. Instead, they generally scan whenever files are written to the hard drive. Since any permanent virus needs to do that at some point (and most malware works by downloading a file then executing that), that will usually catch and stop most malware at the very beginning. And since writing is comparatively slow (next to RAM), the overhead is minimal.
What this seems to do is run exclusively in RAM, which can be caught by AV doing a RAM sweep, but not by most resident AV systems which don't do regular RAM sweeps (again, because of the performance impact that would cause). It will either have to download a permanent program to the harddrive later (ideally, after getting "trusted" status to bypass AV software) or simply steal info while resident. Either way, most AV software will have trouble detecting it. I think if the malware gets written to swap, the AV will detect it than, but I could be wrong.
Re: (Score:2)
I think if the malware gets written to swap, the AV will detect it than, but I could be wrong.
This is the case for most major AV vendors, but depends upon HOW it is written to swap. If it is polymorphic shell code that is stored encrypted in memory, it probably won't trigger a swap scan. If it contains an easy to identify javascript exploit in plain text and is stored at the top of a swap segment or cache file, it will be detected. If you have encryption enabled for your swapfiles and cache files, no AV scanner will detect it.
Re: (Score:2)
ick... reading comprehension out the window. S/javascript/Java
Ugh, keep Java off! (Score:3)
Ever since those fucking banner ads starting using Java exploits to do redirects and run fake malware scans, I've kept Java off except for the incredibly rare occasion.
Re: (Score:2)
Re:Ugh, keep Windows off! (Score:2)
Window's really what the problem is here.
Re: (Score:1)
Java, not Java-script. Also it looks like Java is just the front for the payload.... The article says it uses a DLL, so you non-windows people are probably safe.
Java Web Attack Installs Malware In RAM (Score:2)
Conspiracy! (Score:1)
Am I naive to think Microsoft should fix the OS? (Score:3)
I think by making it impossible to write over the OS, or alter OS files, then when you boot you shouldn't worry of a virus hosing your boot. Sure, a virus could write over all your program files and screw with your data, but I think the OS itself should never be at risk. Someone else can figure out how to make program files secure. Maybe they could say things can't escape out of their parent install directory.
Am I naive to think this sort of thing should be possible?
Re: (Score:3)
Re: (Score:2, Informative)
UEFI isn't going to protect the operating system from being modified, it's going to prevent the computer from booting if said operating system if it gets modified, which is pretty much exactly the opposite of what we wanted.
Re: (Score:2)
Except that you can repair it from the UEFI shell, or a UEFI binary written to replace the infected file with a clean one on the installation media / over the wire.
Re: (Score:2)
This requires there to be no code that loads before the code that locks down the OS. UEFI Secure Boot is part way there, but there's still the option to write to keyboard/video memory and persist across a reboot, then automatically enter an insecure mode, install the rogue bootloader, and then load the expected OS on top, applying the appropriate secure patches as if the software was an external user.
As long as we've got buggy code, input devices and device drivers, there will be ways of shoehorning a boot
Re: (Score:2)
Of course, considering how doing this is orders of magnitude harder in effort spent than just fooling the operator into letting the software run, it will continue to mostly be done for industrial espionage/targeted reasons, not for adding home users to an uberbotnet.
The interesting fact about software is that it only needs to be written once.
Re: (Score:2)
The interesting fact about software is that it only needs to be written once.
Indeed... the continuing prevalence of Conficker shows us that. But what we're talking about here is targeted attacks using both exploits and social engineering. If I received an email containing a PDF claiming to contain the auditor's edits of Oracle's 2011 tax statement, for example, I'd probably suspect something fishy was going on. Plus, the rootkit likely wouldn't run on my computer, and the database it is attempting to gain access to sure isn't on my subnet.
The other interesting fact about software
Re: (Score:2)
yeah, have fun with win8 arm.
"what? I can't install a virtual cd device that'll look exactly like a real cdrom drive?"
(anyways, the files.. if they can't be altered, then ms can't hot update them either)
Re: (Score:2)
Aren't they doing that with Windows 8, and getting slapped around by all the linux guys over it by saying "OMG they're locking us out of our own hardwarez by requiring the secure EFI bootz!"
Re: (Score:2)
Re:More Windows malware? (Score:2)
Why do we still use this shit?
Memory-only worms are not new (Score:1)
The idea of loading malware into memory and not placing it in file is hardly new. In fact, the idea goes back over 20 years.
Back in the dark ages of networking, one of the earliest deliberately malicious worms was WANK (Worms Against Nuclear Killers) which was unleashed back in October of 1989. It was a VMS based worm that attacked via DECnet (no laughter...DECnet was more popular than IP at one time.)
WANK attacked systems on the old NASA SPAN (Space Physics Analysis Network) and the DOE HEPnet (Hi
Oh no, Java scary! (Score:4, Informative)
http://www.oracle.com/technetwork/topics/security/javacpuoct2011-443431.html [oracle.com]
The infoworld article mentions that the applet used a "rogue" DLL. Where did that come from? If it didn't install any files on the system, why is there a "rogue" DLL on the system? Did it just "install" that DLL into memory also? And if the malicious applet code managed to get escalated privileges, why didn't it install something on the drive? And isn’t the term “install” being misused in the article? In fact, isn’t it true Mr. Infoworld Article person, that the alleged malware was merely “loaded” into memory? The truth is there was no flight leaving Guantanamo Bay, you doctored the flight logs, you ordered the code red, you framed OJ Simpson
Re: (Score:2)
Re: (Score:2)
Never mention Windows .. (Score:1)
"After seizing all necessary privileges on the victim computer, the exploit does not install malware on the hard drive using Java. Instead, it uses its payload to inject an encrypted dll from the web directly into the memory of the" javaw.exe process [securelist.com]
Re: (Score:1)
But the malware already ran "touch -t 0101011337 ./malware.exe", so maybe you won't spot it with this.
Windows only? (Score:2)
OK. The usual question. Does this run on Linux? (or Mac)?
It mentions a DLL which is Windows only so I assume Windows only?