Kaspersky Lab have discovered a new strain of ATM malware

The ATMii malware, was discovered in April this year, implements an injector module (exe.exe) and the module to be injected (dll.dll). Crooks can use ATMii to drain available cash from targeted machines. They need a direct access to a target ATM, either physically or over the network, to install the malicious code. The injector is unprotected command line application that was written in Visual C language with a fake compilation timestamp dated back to four years ago. The malicious code works for a Windows XP and later that are the OSs most ATMs run. The available commands allow dispensing a desired amount of cash, retrieve information about ATM cash cassettes, and completely remove the C:\ATM\c.ini file from the ATM.

The injector targets the atmapp.exe (proprietary ATM software) process, is fairly poorly written, since it depends on several parameters. If none are given, the application catches an exception. The supported parameters include:
  • /load, which attempts to inject dll.dll into atmapp.exe.
  • /cmd, which creates or updates the C:\ATM\c.ini file to pass commands and params to infected library.
  • /unload, which tries to unload injected library from atmapp.exeprocess, while restoring its state.
After the injection of the DllMain function, the dll.dll library loads msxfs.dll and replaces the WFSGetInfofunction with the function mWFSGetInfo. The injected module attempts to find the ATM’s CASH_UNIT service id to and stores the result. If successful, all successive calls are redirected to the mWFSGetInfofunction, which parses and executes the commands from the C:\ATM\c.inifile.

Some appropriate countermeasures against such attacks are default-deny policies and device control. The first measure prevents criminals from running their own code on the ATM’s internal PC, while the second measure will prevent them from connecting new devices, such as USB sticks, concluded Kaspersky.

No comments :