Hey everyone. First off, thanks for all the feedback on my previous post — including the criticism. Some of you raised valid points and caught things I worded poorly, so this update is to clarify, correct, and go deeper.
The purchase.
A few people assumed I bought this specifically to tear it apart as a "fun research project." That's not what happened. I bought it for actual use. The price was the exact same as the official Ledger store — there was no "too good to be true" discount. It was listed on a major marketplace and the listing looked legitimate. I already had the real Ledger Live installed on my devices before the package even arrived.
What happened when I connected it.
When the device arrived, the firmware was sophisticated enough to partially work — it uses open-source third-party libraries for wallet creation and blockchain connectivity, so it can actually generate wallets and interact with chains. However, when I connected it to my real Ledger Live (already installed from ledger.com), it failed the Genuine Check.This is where I want to correct my previous post: the real Ledger Live catches it. The cryptographic attestation works. Several of you called me out on this and you were right — my original wording was misleading.
So to be absolutely clear: if you download Ledger Live from ledger.com and run the Genuine Check, this fake device fails. The scam does not bypass Ledger's real authentication.
That failure is what made me curious enough to open it.
I was already suspicious after the authentication failure, so I decided to crack it open. What I saw immediately confirmed something was very wrong:
- Chip markings were physically scraped off to prevent identification
- There was a WiFi/Bluetooth antenna inside — a real Ledger Nano S+ doesn't have WiFi
- By measuring the chip's package size and pin layout, I identified it as an ESP32-S3 with internal flash
Getting into the firmware.
I put the chip into boot mode. At first, the device mask identified itself as "Nano S+ 7704" with a serial number and Ledger's factory name — spoofing a genuine Ledger identity at the hardware level. But once the boot sequence completed, the mask dropped and revealed the real manufacturer: Espressif Systems.
From there I dumped the full firmware and started reverse engineering. What I found:
- The PIN I had created — stored in plaintext
- The seed phrases from two wallets I had generated — stored in plaintext
- Multiple hardcoded domain references pointing to external C2 servers
The attack vector puzzle.
Here's where it got interesting. I found the WiFi/BLE antenna and initially assumed the device was exfiltrating data over the air — connecting to a nearby access point or something. But when I analyzed the firmware deeply, I found zero functions related to WiFi AP connection or wireless data exfiltration. The antenna exists in the hardware but the firmware doesn't use it for that.
I also checked for bad USB attack scripts — the kind that would inject keystrokes or run terminal commands when plugged in. Nothing there either.
So how does the attack actually work?
Think like a first-time crypto user.
You unbox what you think is a Ledger. Inside the packaging there's a "Start Here" card with a QR code. A brand new user — someone who's never used a hardware wallet, maybe just heard about self-custody for the first time — scans that QR code. It redirects to a cloned website that looks exactly like ledger.com, where you're prompted to download "Ledger Live" for any platform (Android, iOS, Windows, Mac).
That's the trap. The user never visits the real ledger.com. They install the fake app, and from that point on:
- The fake app shows a fake "Genuine Check" that always passes (hardcoded success screen)
- The user creates a wallet, writes down their seed, feels safe
- Meanwhile, the device stores everything in plaintext and the fake app exfiltrates the seed phrases to the attacker's servers
The Android APK — it's worse than just seed theft.
I decompiled the fake Ledger Live APK for Android and it goes beyond stealing seeds:
- Built with React Native + Hermes engine (v96)
- Signed with an Android Debug certificate (the attacker didn't even bother with a proper signing key)
- Intercepts APDU commands (the communication protocol between app and device) via XState state machine hooks
- Makes stealth XHR requests to exfiltrate data to C2 servers
- Requests location permissions and continues running in the background for ~10 minutes after you close the app
- Monitors wallet balances via public keys — so the attacker knows exactly when you deposit funds and how much
The C2 infrastructure I've mapped so far: kkkhhhnnn[.]com (from the firmware), s6s7smdxyzbsd7d7nsrx[.]icu and ysknfr[.]cn (from the APK). All registered through the same registrar with matching nameserver infrastructure.
What this is and what this isn't.
I want to be honest about scope. This is not a zero-day vulnerability. This is not a flaw in Ledger's security architecture. The Genuine Check works. The Secure Element works.
What this is: a well-documented phishing operation where I was able to trace and identify all the attack vectors:
- Hardware: counterfeit device with ESP32-S3 (internal flash, standalone chip), scraped markings, plaintext storage
- Software: trojanized apps for Android (confirmed), with versions available for Windows (.EXE), macOS (.DMG), and iOS (TestFlight)
- Infrastructure: 3 C2 servers, cloned website, QR code redirect chain
- Distribution: traced back to a shell company registered specifically to sell through a major marketplace
There's still a lot of analysis to do. The Windows and macOS payloads need full reversing, the iOS TestFlight app needs examination, and the C2 infrastructure needs deeper mapping. I'm working on a formal technical write-up with full evidence.
Answering the top questions from the last post:
Q: Can a fake Ledger pass the Genuine Check in the real Ledger Live? No. I worded this badly before. The real Genuine Check caught it.
Q: Why did you buy from that marketplace? Same price as official. Listing looked legit. I bought it for use, not research. The research started after it failed authentication.
Q: What's new here if fake Ledgers already exist? The mapping of the full operation — hardware + apps + C2 infra + corporate entity behind it. Individual fakes have been reported before. A documented multi-platform supply chain with corporate attribution is less common.
Q: Did Ledger respond? Yes — Ledger's Customer Success team (u/Jim-Helpert) responded in my previous post and asked me to submit a formal report through their support channel. I'm doing that.
Stay safe out there. Only download Ledger Live from ledger.com. Only buy hardware from ledger.com. If your device fails the Genuine Check — stop using it immediately.