That’s what I mean, it shouldn’t be possible to relay anything. It should only trigger when there’s a reader physically in proximity to the phone.
Please keep in mind this is happening on the victim’s phone which is not rooted, the malware is a regular non-system app.
If it were happening on a rooted phone I could understand being able to subvert the NFC chain because at some point it has to pass from hardware to software and if you’re privileged enough you can cut in there. But the malware app is not privileged.
There is nothing being subverted, nfc has applications other than contactless payments that require it acting as the reader, which is why it’s supported. It would be better if it was behind an explicit permission (just like other sensors would) but limiting it to only responding to readers is like limiting Bluetooth to audio transmission.
This isn’t about subscribing to NFC events, the malware is creating fake NFC events without the NFC sensor being involved in a physical interaction with a tag or reader.
The attacker uses phone A and touches the ATM NFC reader. This creates a NFC event on phone A that requests a token.
Phone A sensds the request data to the malware running on victim’s Phone V.
The malware on phone V creates a fake NFC event that makes it look like the phone V was touched against the ATM. <-- this is the huge security issue IMO
The app on phone V that’s currently associated with NFC contactless payments responds to the fake NFC event by issuing a token.
The malware on Phone V sends the token to phone A.
Phone A uses the token to “prove” to the ATM that the real customer is in front of it.
The ATM asks for the PIN and the attacker supplies the correct PIN (which they’ve previously obtained via social engineering).
Attacker can now withdraw cash from the ATM from the victim’s account.
What scenario are you talking about?? From the article:
NGate malware can relay NFC data from a victim’s card through a compromised device to an attacker’s smartphone, which is then able to emulate the card and withdraw money from an ATM.
…
Masquerading as a legitimate app for a target’s bank, NGate prompts the user to enter the banking client ID, date of birth, and the PIN code corresponding to the card. The app goes on to ask the user to turn on NFC and to scan the card.
That’s what I mean, it shouldn’t be possible to relay anything. It should only trigger when there’s a reader physically in proximity to the phone.
Please keep in mind this is happening on the victim’s phone which is not rooted, the malware is a regular non-system app.
If it were happening on a rooted phone I could understand being able to subvert the NFC chain because at some point it has to pass from hardware to software and if you’re privileged enough you can cut in there. But the malware app is not privileged.
There is nothing being subverted, nfc has applications other than contactless payments that require it acting as the reader, which is why it’s supported. It would be better if it was behind an explicit permission (just like other sensors would) but limiting it to only responding to readers is like limiting Bluetooth to audio transmission.
This isn’t about subscribing to NFC events, the malware is creating fake NFC events without the NFC sensor being involved in a physical interaction with a tag or reader.
No? The nfc sensor is next to the credit card, which is why it’s able to communicate with it to relay it.
Why would it need to create fake events? How would that even help?
There’s no credit card involved in this scenario.
What scenario are you talking about?? From the article:
Physical card is involved, mobile payments isn’t.
android permissions arent meant to be bypassable either but i bet theres malware that does it. its kinda what it does.
When it happens it’s a security flaw and it needs to get patched. It’s not normal everyday thing.