FireEye has discovered a new strain of POS malware dubbed Multigrain that steals card data from point-of-sale systems and exfiltrates it over DNS.
Security experts at FireEye have spotted a new strain of the NewPosThings PoS malware, dubbed Multigrain, that steals payment card data from point-of-sale (PoS) systems and exfiltrate it via DNS to avoid detection.
The technique is very effective because DNS traffic isn’t filtered by target organizations making hard the detection for the data exfiltration.
The VXers knows very well that sysadmins never inspect deeply the DNS packets, this exfiltration technique is unusual for this malware family, in the past a few malicious code implemented it (i.e. BernhardPOS and FrameworkPOS).
The experts at FireEye highlighted that administrators in sensitive environments that process payment card data will often monitor the HTTP or FTP traffic in order to detect data exfiltration activity. Organizations never block DNS service in order to resolve hostnames, they always trust this kind of traffic.
“FireEye recently discovered a new variant of a point of sale (POS) malware family known as NewPosThings. This variant, which we call “MULTIGRAIN”, consists largely of a subset of slightly modified code from NewPosThings.” states FireEye in a blog post. “The variant is highly targeted, digitally signed, and exfiltrates stolen payment card data over DNS. The addition of DNS-based exfiltration is new for this malware family; however, other POS malware families such as BernhardPOS and FrameworkPOS have used this technique in the past.”
The Multigrain infection is triggered by checking the multi.exe back-end PoS process, only if it is running on the machine the attack goes on.
Once Multigrain infects the PoS, it uses a crafted DNS query to inform the C&C server of a successful installation, then he starts scraping the memory of the PoS systems searching for payment card data (e.g. account number, expiry date and card security number).
“The malware collects the volume serial number and part of the MAC address and creates a hash of the concatenated value using the DJB2 hashing algorithm. The resulting hash is then combined with the computer name and a version number and all three components are then encoded with a custom Base32 encoding algorithm. The malware then makes a DNS query with this information to a hardcoded domain, notifying the attacker of a successful installation.” continues FireEye.
The report published by FireEye highlights the similarities between the Multigrain and the NewPosThings codes. Among the similarities the memory-scraping mechanism and the DJB2 hashing algorithm that identifies the target machine.