Web Skimmer found on at least 17 websites, including Casio UK
February 03, 2025
A threat actor has installed a web skimmer on all pages of the Casio UK’s website, except the checkout page.
Jscrambler researchers uncovered a web skimmer campaign targeting multiple websites, including Casio one (casio.co.uk). The experts confirmed that at least 17 victim sites have been compromised, though the number may grow as the investigation continues. Attackers likely exploited vulnerabilities in Magento e-stores.
The web skimmer became active on the Casio UK website between January 14 and 24, 2025. We detected the threat on January 28th. Jscrambler reported their findings to Casio UK that in less than 24 hours removed the malicious code from its website.
Unlike typical web skimmer campaigns that target checkout pages, attackers behind these attacks placed the skimmer on all pages except the checkout page. The threat actors deployed the skimmer directly on the homepage without obfuscation.
“The skimmer loader could be found right from the homepage and, untypically, did not use any obfuscation. It looks like an ordinary third-party script loader that uses an asynchronous script element and sets its source to the skimmer’s location.” reads the report published by Jscrambler. “The script is then added to the page before the first existing script, and as soon as it gets loaded, it also removes itself from the page.”
The initial loader was unobfuscated, it loads the second-stage skimmer that is protected by multiple layers of obfuscation, including custom encoding to vary strings across victims and an XOR-based technique to evade detection.
The skimmer intercepts checkout clicks on the cart page, displaying a fake payment form in a modal window to steal users’ personal details.
The skimmer uses a fake 3-step checkout form to steal personal and payment details. The experts noticed that the attack flow only worked when victims followed a specific sequence, adding items to the cart and then proceeding to checkout. The experts noticed that if the victims directly clicked on ‘buy now’ instead of adding the items to the cart, the fake form was not displayed.
The software skimmer encrypts stolen data using AES-256-CBC, generating a unique key and IV for each request. The encrypted data, along with the key and IV, is sent to a server controlled by attackers. The stolen information includes billing addresses, credit card details, phone numbers, and email addresses.
After data exfiltration, users are redirected to the real checkout page.
“In the first step, the user is asked to enter their email, country, first/last name, address, city, country, postcode, and phone number. When submitted, this first step will send an XHR GET request to postanywhere[.]net with a fraction of the inserted data sent as payload. In the second step, users will see some details on shipping costs and must click a “continue” button. In the last step, users are asked to insert their credit card number, name, expiration date, and CVV. There, a “Pay now” button fires a JavaScript alert message saying, “Please verify your billing information and try again”.” continues the report. “After clicking OK, the skimmer triggers the exfiltration process and redirects users to the legitimate “/checkout” page, asking them to fill in the exact details again. This is known in the PCI DSS v4 world as a double-entry skimming attack.”
Jscrambler states that the website of Casio UK had a Content Security Policy in report-only mode without reporting directives, logging violations in the browser console instead of blocking the attack.
All the skimmers employed in this campaign were downloaded from a Russian hosting provider. While skimming domains varied, the similar code suggests a common tool or actor. Some domains were newly registered but had historical records, indicating threat actors exploited old, defunct domains for credibility.
“The casio.co.uk skimming incident attests that although Content Security Policy (CSP) is a relatively simple standard, it’s often considered hard to manage. It is easy to make mistakes, which often leads to companies opting for a report only over blocking, which also takes away a significant portion of the benefit.” concludes the report. “Companies are also burdened with the need to build internal tools around CSP and CSP reporting, which takes time and effort, so many do not. The other option is to use a solution that fully automates script security and management, such as Jscrambler’s Webpage Integrity.”
Follow me on Twitter: @securityaffairs and Facebook and Mastodon
Pierluigi Paganini
(SecurityAffairs – hacking, Casio)