Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Vulnerabilities / Threats

11/13/2019
07:15 PM
Connect Directly
Twitter
LinkedIn
RSS
E-Mail
50%
50%

Self-Cleaning Payment Card-Skimmer Infects E-Commerce Sites

'Pipka' JavaScript skimmer has infected at least 16 e-commerce websites so far, according to Visa's Payment Fraud Disruption Group.

Security researchers at Visa have spotted a unique JavaScript payment card-skimmer that tries to evade detection by removing itself from the HTML code of a compromised website after it successfully executes.

In a security alert, Visa's Payment Fraud Disruption (PFD) group described the self-cleaning mechanism as something they have not previously encountered in the wild with JavaScript skimmers, although it is common with desktop malware. "[It] marks a significant development in JavaScript skimming," Visa warned.

Visa's researchers discovered Pipka — as they are calling the malware — on a North American e-commerce site that had been previously infected with Inter, another JavaScript malware for skimming payment-card data from merchant sites. Since that initial discovery, Visa has identified at least 16 other e-commerce sites that Pipka has infected.

Visa's alert did not disclose whether the operators of Pipka had actually managed to steal payment card data from these sites, and if they had, what the scope of the theft might have been. "PFD assesses that Pipka will continue to be used by threat actors to compromise eCommerce merchant websites and harvest payment account data," the alert said.

Sam Cleveland, senior analyst at Visa's PFD team, says Visa presently is unable to provide any information on payment card fraud or theft related to Pipka. "Visa does not have this information to share due to this being an ongoing investigation," Cleveland says.

JavaScript skimmers like Pipka are designed to do what credit-card skimmers do in the physical word, which is to steal card data that can be used to make fraudulent purchases. Often, threat actors have sneaked these skimmers on e-commerce sites via third-party components that these sites use for things like online shopping carts, customer-support, and visitor tracking.

Threat actors belonging to the cybercrime syndicate Magecart in particular have stolen data on tens of millions of debit and credit cards by placing such skimmers — including Inter — on thousands of high-traffic ecommerce sites worldwide over the past few years.

Just like Inter and other electronic card skimmers, Pipka is designed to let attackers extract the cardholder name, payment card account number, expiration date, CVV, and other data from the checkout pages of e-commerce sites. Visa's alert noted that threat actors are injecting Pipka directly into different locations on e-commerce websites.

But Cleveland declined to provide any more information on how attackers might be doing that, once again citing the ongoing nature of the malware investigation. He describes Pipka's victims so far as being a mix of small- and medium-sized e-commerce merchants.

A Configurable Threat

According to Visa, attackers can configure Pipka so it captures data from specific fields that individuals use to enter payment card details when making a purchase on an e-commerce site. The malware is designed so it can recognize and collect data even from e-commerce sites that use one page to collect billing data, and a separate page to collect payment card data.

Harvested data is Base64 encoded (turning binary data into text) and encrypted using ROT13, a cipher that substitutes each letter of the alphabet with the 13th letter after it. The encoded, encrypted data is then stored in either a key or a cookie for later exfiltration to a remote command and control server, Visa said.

Pipka's anti-analysis mechanism kicks in immediately after the skimmer executes after the initial script loads. Because the self-cleaning happens so quickly, it is difficult for security analysts and website administrators to spot the code on a compromised page.

The anti-analysis feature is not the only aspect about Pipka that is unique. The manner in which the malware transmits stolen data to the command and control server is also different from other electronic skimmers. Similarly, while attackers have sometimes implemented ROT13 on the server that stores skimmed data, Pipka is the first skimmer where the cipher has been implemented in the malware itself, Visa said.

Visa's PFD listed several measures e-commerce sites can take to mitigate their exposure to Pipka and similar threats.

Among them was the need for organizations to implement recurring checks for communications with potential C2 servers and keeping an eye on the code in third-party components. Visa also recommended that site administrators keeping their shopping cart and related payment software properly updated and patched and to deploy a Web application firewall to block malware and malicious requests from the website.

Related Content:

Check out The Edge, Dark Reading's new section for features, threat data, and in-depth perspectives. Today's top story: "Account Fraud Harder to Detect as Criminals Move from Bots to 'Sweat Shops'."

Jai Vijayan is a seasoned technology reporter with over 20 years of experience in IT trade journalism. He was most recently a Senior Editor at Computerworld, where he covered information security and data privacy issues for the publication. Over the course of his 20-year ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Cybersecurity Team Holiday Guide: 2019 Gag Gift Edition
Ericka Chickowski, Contributing Writer,  12/2/2019
Navigating Security in the Cloud
Diya Jolly, Chief Product Officer, Okta,  12/4/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
The Year in Security: 2019
This Tech Digest provides a wrap up and overview of the year's top cybersecurity news stories. It was a year of new twists on old threats, with fears of another WannaCry-type worm and of a possible botnet army of Wi-Fi routers. But 2019 also underscored the risk of firmware and trusted security tools harboring dangerous holes that cybercriminals and nation-state hackers could readily abuse. Read more.
Flash Poll
Rethinking Enterprise Data Defense
Rethinking Enterprise Data Defense
Frustrated with recurring intrusions and breaches, cybersecurity professionals are questioning some of the industrys conventional wisdom. Heres a look at what theyre thinking about.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-19647
PUBLISHED: 2019-12-09
radare2 through 4.0.0 lacks validation of the content variable in the function r_asm_pseudo_incbin at libr/asm/asm.c, ultimately leading to an arbitrary write. This allows remote attackers to cause a denial of service (application crash) or possibly have unspecified other impact via crafted input.
CVE-2019-19648
PUBLISHED: 2019-12-09
In the macho_parse_file functionality in macho/macho.c of YARA 3.11.0, command_size may be inconsistent with the real size. A specially crafted MachO file can cause an out-of-bounds memory access, resulting in Denial of Service (application crash) or potential code execution.
CVE-2019-19642
PUBLISHED: 2019-12-08
On SuperMicro X8STi-F motherboards with IPMI firmware 2.06 and BIOS 02.68, the Virtual Media feature allows OS Command Injection by authenticated attackers who can send HTTP requests to the IPMI IP address. This requires a POST to /rpc/setvmdrive.asp with shell metacharacters in ShareHost or ShareNa...
CVE-2019-19637
PUBLISHED: 2019-12-08
An issue was discovered in libsixel 1.8.2. There is an integer overflow in the function sixel_decode_raw_impl at fromsixel.c.
CVE-2019-19638
PUBLISHED: 2019-12-08
An issue was discovered in libsixel 1.8.2. There is a heap-based buffer overflow in the function load_pnm at frompnm.c, due to an integer overflow.