November 28, 2012 By Dana Tamir 2 min read

Shylock is a financial malware platform discovered by IBM Security in 2011. Like most malware strains, it continues to evolve in order to bypass new defensive technologies put in place by financial institutions and enterprises. While analyzing a recent Shylock dropper, we noticed a new trick it uses to evade detection. Namely, it can identify and avoid remote desktop environments, a setup commonly used by researchers when analyzing malware.

Exploiting the Lab

Researchers collect suspected malware samples for analysis and often place them onto machines that are isolated in an operations center, also known as a lab. Rather than sit in front of a rack of physical machines in a cold basement lab, researchers use remote desktop connections to study malware from the convenience and coziness of their offices. It is this human weakness that Shylock exploits. We have discovered advanced malware that is now capable of detecting remote desktop environments to evade researchers.

The Shylock dropper we discovered detects a remote desktop environment by feeding invalid data into a certain routine and then observing the error code returned. It uses this return code to differentiate between normal desktops and other lab environments. In particular, when executed from a remote desktop session, the return code will be different and Shylock won’t install. It is possible to use this method to identify other known or proprietary virtual/sandbox environments, as well.

For those more technically oriented, here is a bit more detail. The dropper dynamically loads Winscard.dll and calls the function SCardForgetReaderGroupA(0, 0). The malware proceeds as expected only if the return value is either 0x80100011 (SCARD_E_INVALID_VALUE) or 0x2 (ERROR_FILE_NOT_FOUND).

We noticed that when the dropper is executed locally, the return value is 0x80100011, but when it is executed from a remote desktop session the return value is 0x80100004 (SCARD_E_INVALID_PARAMETER). The assembly language source code is shown below. We have found a number of malware strains that utilize different approaches to identify specific execution environments in order to take appropriate evasive actions. The assembly language source code is shown below.

IBM vs. Shylock

IBM Security solutions are not affected by anti-VM/anti-research techniques employed by malware. This is because we use real-time application protection to monitor for suspected malware behavior in the endpoint device’s memory. This approach prevents malware from compromising applications, including the browser, and stealing data like user credentials. It is also immune to malware evasion techniques designed to identify remote desktop and virtual machine environments.

More from Banking & Finance

Exploring DORA: How to manage ICT incidents and minimize cyber threat risks

3 min read - As cybersecurity breaches continue to rise globally, institutions handling sensitive information are particularly vulnerable. In 2024, the average cost of a data breach in the financial sector reached $6.08 million, making it the second hardest hit after healthcare, according to IBM's 2024 Cost of a Data Breach report. This underscores the need for robust IT security regulations in critical sectors.More than just a defensive measure, compliance with security regulations helps organizations reduce risk, strengthen operational resilience and enhance customer trust.…

Unveiling the latest banking trojan threats in LATAM

9 min read - This post was made possible through the research contributions of Amir Gendler.In our most recent research in the Latin American (LATAM) region, we at IBM Security Lab have observed a surge in campaigns linked with malicious Chrome extensions. These campaigns primarily target Latin America, with a particular emphasis on its financial institutions.In this blog post, we’ll shed light on the group responsible for disseminating this campaign. We’ll delve into the method of web injects and Man in the Browser, and…

PixPirate: The Brazilian financial malware you can’t see

10 min read - Malicious software always aims to stay hidden, making itself invisible so the victims can’t detect it. The constantly mutating PixPirate malware has taken that strategy to a new extreme. PixPirate is a sophisticated financial remote access trojan (RAT) malware that heavily utilizes anti-research techniques. This malware’s infection vector is based on two malicious apps: a downloader and a droppee. Operating together, these two apps communicate with each other to execute the fraud. So far, IBM Trusteer researchers have observed this…

Topic updates

Get email updates and stay ahead of the latest threats to the security landscape, thought leadership and research.
Subscribe today