A stealthy new info-stealing browser injection malware aims to make security researchers' job very difficult. Fobber evades detection and defies anaylsis by sliding from one program to another, using randomly generated filenames, encrypting command-and-control communications with a custom algorithm, and encrypting individual pieces of code within the payload, so that each function must be separately, painstakingly decrypted before it can be run.
Researchers at Malwarebytes discovered Fobber, and Fox-IT researchers have confirmed that it is based off of the Tinba banking Trojan. So far, Malwarebytes has not witnessed Fobber stealing banking credentials, but that may just be a matter of time, according to Malwarebytes senior security researcher Jerome Segura.
"I think they're testing the waters," he says. All infections, thusfar, have been in the Netherlands, so Segura believes the Fobber authors are still testing out the tool before rolling out operations on a larger scale.
Malwarebytes found Fobber by accident when they stumbled across activity by the elusive HanJuan exploit kit. Opportunities to study HanJuan are rare, because it usually takes great pains to hide itself. Malwarebytes simply referred to it as the "Unknown exploit kit" when they first wrote about it in August 2014.
"It's a very discreet exploit kit," says Segura, "so that's what caught our attention."
Considering its usual discretion, the researchers discovered HanJuan acting in a way that seemed out of character. It was being hosted on a legitimate Dutch website that had been compromised, and was being distributed through a malvertising campaign. An embedded ad within the Adf.ly URL shortener service directed victims to the compromised site.
Once researchers had a look at the payload HanJuan was delivering, they saw "we have something new on our hands," says Segura. "It's very well encrypted. A lot of attention to detail in there."
Written for both Flash and Windows Explorer, Fobber uses a memory stack pivoting exploit. As Segura wrote in a blog post "Unlike a normal Windows program, Fobber makes it a habit to 'hop' between different programs." Fobber.exe itself will eventually terminate, and the malware execution will continue in Verify Class ID, until that terminates and picks up again in Windows Explorer, until that terminates and picks up again in a web browser.
Beginning with the Verify Class ID process, Fobber really frustrates any security researcher's attempts to analyze it. The code for each function must be decrypted before it can be executed; then it re-encrypts itself after completion.
It also encrypts all communication with the command-and-control server, using a custom algorithm. According to Segura's blog "Content sent by the server is signed by its RSA1 key (to prevent botnet hijacking) while the Fobber code has the public key embedded within, notifying the signature before processing the content."
The malware then performs browser injection (it works on Internet Explorer, Google Chrome, and Mozilla Firefox), hooks into certain functions (InternetCloseHandle and HttpSendRequest in IE), and waits to see when interesting credentials are being requested.
Fobber could then act like a man-in-the-middle and lift those credentials, and then use them for a variety of attacks -- including fraudulent banking transactions that would appear to the bank to be completely legitimate requests coming made from a customer's own machine with their valid credentials.
All of these techniques make it difficult for security companies to discover malware, put a name to it, and develop effective countermeasures.
"If you don't make the headlines," says Segura, "you have less scrutiny, and you can keep using" the tool for longer.
Malwarebytes has passed on its information about Fobber, HanJuan, the malvertising campaign and the compromised website to Dutch law enforcement.