Take All My Money: Penetrating ATMs
This talk explores the physical and logical security vulnerabilities of automated teller machines (ATMs), focusing on common weaknesses in hardware and software implementations. The speaker demonstrates how attackers can exploit a lack of mutual authentication between ATM components, such as the cash dispenser and the host PC, to perform unauthorized cash withdrawals. The presentation highlights the prevalence of insecure configurations, including the absence of disk encryption and the use of outdated, vulnerable operating systems in a kiosk environment. Practical takeaways include the importance of physical security, network isolation, and robust endpoint protection to mitigate ATM jackpotting attacks.
Why Your Next ATM Penetration Test Should Start at the Cash Dispenser
TLDR: Modern ATM security often relies on the flawed assumption that internal hardware components are inherently trusted. By exploiting the lack of mutual authentication between the cash dispenser and the host PC, attackers can bypass logical controls to trigger unauthorized cash dispensing. This research highlights that physical access to internal peripherals is often the only prerequisite needed to compromise an entire ATM network.
Security researchers often get distracted by the complexity of modern web applications, but the most critical vulnerabilities frequently exist in the physical and logical gaps of legacy hardware. ATMs are essentially kiosks running aging operating systems like Windows XP or Windows 7, yet they are treated as secure vaults. The reality is that these machines are often just standard x86 PCs hidden behind a thin sheet of metal, and once you gain physical access, the logical security controls often crumble.
The Myth of Trusted Peripherals
The core issue identified in this research is the lack of mutual authentication between the ATM host PC and its peripheral devices, specifically the cash dispenser. In a secure architecture, the host should verify the identity of the dispenser before sending commands. Instead, many implementations rely on the CEN/XFS standard, which prioritizes interoperability over security. This standard allows any device that can communicate over the internal bus to issue commands to the dispenser.
If you can access the internal USB or GPIO interfaces, you effectively own the machine. The host PC assumes that any device connected to its internal bus is authorized. This is a classic case of Identification and Authentication Failures where the system fails to verify the source of a command. An attacker does not need to compromise the OS if they can simply inject commands directly into the peripheral's communication channel.
Exploiting the Internal Bus
During a penetration test, the goal is to move from physical access to logical control. The research demonstrates that you do not need to be a software wizard to pull this off. If you have physical access to the internal USB expansion board, you can bypass the host PC entirely. By connecting a rogue device or a laptop to the internal bus, you can send raw commands to the cash dispenser.
The following conceptual command structure illustrates how an attacker might interact with the dispenser if they have bypassed the host's software layer:
# Conceptual command to trigger a dispense operation
# This assumes direct communication with the dispenser's firmware
dispense_cash --box 1 --amount 40 --currency USD
This is not a sophisticated software exploit. It is a fundamental failure of hardware-level trust. Because the dispenser does not require a cryptographic handshake from the host, it will execute any valid command it receives. For a pentester, this means that your engagement should focus on the physical integrity of the internal cabling and the presence of any unauthorized hardware bridges.
The Reality of ATM Engagements
When you are on-site for an ATM assessment, do not assume the software is the only attack vector. The most common finding is the absence of Full Disk Encryption. If the hard drive is not encrypted, you can pull it, mount it on your own machine, and modify the configuration files or inject your own jackpotting software.
Even if the software is hardened, the physical environment is often the weakest link. Many ATMs are placed in high-traffic areas with minimal surveillance, making it trivial to open the top cabinet. Once inside, you have access to the USB ports and the internal network cabling. If the ATM is connected to a local network, you can use Wireshark to sniff the traffic between the ATM and the bank's backend. You will often find that this traffic is unencrypted, allowing for simple Adversary-in-the-Middle attacks where you can manipulate transaction logs or alter the amount of cash requested.
Defensive Realities
Defending against these attacks requires a shift in mindset. You cannot rely on software-based security if the underlying hardware is exposed. The first step for any bank is to implement physical tamper detection that triggers an immediate alert to the security operations center. Furthermore, all internal communication between the host PC and peripherals must be encrypted and authenticated. If the hardware does not support this, it should be replaced.
Endpoint protection is also non-negotiable. Using tools like AppLocker to restrict the execution of unauthorized binaries is a baseline requirement, but it is useless if an attacker can simply boot from an external drive. Ensure that the BIOS is locked down and that the boot order is restricted to the internal, encrypted drive.
The most dangerous assumption in security is that a device is "safe" because it is behind a locked door. As this research proves, the door is often just a suggestion. If you are testing these systems, look for the gaps where the hardware assumes the software is in control, and where the software assumes the hardware is honest. That is where you will find your findings.
Vulnerability Classes
Tools Used
Target Technologies
Attack Techniques
OWASP Categories
Up Next From This Conference

Carding is Dead, Long Live Carding: How MaaS is fueling NFC relay attacks

GenAI Red Teaming for Payment Fraud

Scamming the Scammers: Weaponizing Open Source Against Pig Butchering and Organized Crime
Similar Talks

Unmasking the Snitch Puck: The Creepy IoT Surveillance Tech in the School Bathroom

Anyone Can Hack IoT: A Beginner's Guide to Hacking Your First IoT Device

