Incident: Tesla NFC Key Card Exploitation for Unauthorized Key Enrollment

Published Date: 2022-06-09

Postmortem Analysis
Timeline 1. The software failure incident happened last year as mentioned in both articles [Article 128639, Article 129708]. Therefore, the incident occurred in 2021.
System 1. Tesla's NFC key card authorization system [128639, 129708]
Responsible Organization 1. The software failure incident was caused by a security vulnerability in Tesla's handling of the unlock process via the NFC key card, allowing unauthorized individuals to exploit the system and enroll new keys without authentication [128639, 129708].
Impacted Organization 1. Tesla [128639, 129708]
Software Causes 1. Vulnerability in Tesla's handling of the unlock process via NFC card, allowing unauthorized key enrollment [128639, 129708] 2. Lack of authentication and authorization mechanisms for enrolling new keys within a 130-second window after unlocking with an NFC card [128639, 129708] 3. Inadequate connection between the online account world and the offline BLE world, enabling attackers to send VCSEC messages to enroll keys for arbitrary vehicles [128639, 129708]
Non-software Causes Unknown
Impacts 1. The software failure incident allowed attackers to exploit a vulnerability in Tesla vehicles, enabling them to steal cars by enrolling their own key during a 130-second window after the car was unlocked with an NFC card [128639, 129708]. 2. The attack demonstrated how thieves could surreptitiously enroll their own key, giving them unauthorized access to unlock, start, and turn off the car without any indication of tampering from the in-car display or the legitimate Tesla app [128639, 129708]. 3. The vulnerability stemmed from the lack of authentication required for enrolling new keys within the 130-second interval, highlighting a flaw in Tesla's authorization method and the disconnect between the online account world and the offline BLE world [128639, 129708]. 4. Despite the potential security risks posed by this software failure incident, Tesla did not respond to inquiries seeking comment on the issue, leaving concerned owners with limited options for protection and mitigation [128639, 129708].
Preventions 1. Implementing stricter authentication measures for enrolling new keys, such as requiring additional verification steps or biometric authentication [128639, 129708]. 2. Enhancing the communication security between the NFC card and the vehicle to prevent unauthorized key enrollment [128639, 129708]. 3. Regularly updating the software to patch vulnerabilities and address security flaws identified by researchers [128639, 129708]. 4. Conducting thorough security assessments and penetration testing to identify and mitigate potential attack vectors [128639, 129708]. 5. Providing timely responses to security researchers reporting vulnerabilities to address issues promptly and prevent exploitation [128639, 129708].
Fixes 1. Implement a fix to ensure that the authorization process for enrolling new keys in Tesla vehicles is more secure and requires proper authentication, preventing unauthorized key enrollment [128639, 129708]. 2. Enhance the communication protocol between Tesla vehicles and external devices to establish a secure connection that prevents unauthorized access and key enrollment [128639, 129708]. 3. Develop a mechanism to detect and prevent malicious apps like Teslakee from communicating with Tesla vehicles and enrolling unauthorized keys during the 130-second window after unlocking with an NFC card [128639, 129708]. 4. Improve the security features of Tesla's phone app and BLE communication to prevent signal jamming attacks that force the use of NFC cards for unlocking vehicles [128639, 129708]. 5. Enhance the overall key management system in Tesla vehicles to ensure that only authorized keys are accepted and prevent unauthorized key enrollment without proper authentication [128639, 129708].
References 1. Martin Herfurt, security researcher in Austria [Article 128639, Article 129708] 2. Tesla [Article 128639, Article 129708] 3. Ars Technica [Article 128639, Article 129708]

Software Taxonomy of Faults

Category Option Rationale
Recurring one_organization (a) The software failure incident related to Tesla vehicles being vulnerable to theft due to a flaw in the NFC key card system has happened again within the same organization. The vulnerability was exploited by a security researcher named Martin Herfurt, who demonstrated how attackers could steal Tesla cars by enrolling their own key during a 130-second window after the car was unlocked with an NFC card. This incident highlights a recurring issue with Tesla's authorization method and the lack of connection between the online account world and the offline BLE world [Article 128639, Article 129708]. (b) There is no information in the provided articles about a similar incident happening at other organizations or with their products and services.
Phase (Design/Operation) design, operation (a) The software failure incident in the articles can be attributed to the design phase. The vulnerability exploited by the researcher was a result of how Tesla's authorization method was implemented, specifically in handling the unlock process via the NFC card. The flaw allowed for unauthorized key enrollment within a 130-second window after unlocking the car with the NFC card, without requiring any authentication or displaying any indication on the in-car display [Article 128639, Article 129708]. (b) Additionally, the software failure incident can also be linked to the operation phase. The attack demonstrated by the researcher involved exploiting the operational aspect of the Tesla vehicles, particularly how they interacted with Bluetooth Low Energy (BLE) devices. By using a malicious app to communicate with the car during the 130-second window, the attacker could enroll a new key without the owner's knowledge, showcasing a failure in the operational security of the system [Article 128639, Article 129708].
Boundary (Internal/External) within_system (a) within_system: The software failure incident described in the articles is primarily within the system. The vulnerability exploited by the researcher, Martin Herfurt, was related to how Tesla's authorization method handled the unlock process via the NFC card. Herfurt discovered that within a 130-second interval after unlocking the car with the NFC card, the car could be started and new keys could be enrolled without authentication, leading to potential unauthorized access and theft [Article 128639, Article 129708]. (b) outside_system: The software failure incident does not seem to have contributing factors that originate from outside the system. The vulnerability exploited by the researcher was based on flaws within Tesla's authorization method and the communication protocol used by the NFC card and BLE devices, rather than external factors beyond Tesla's control [Article 128639, Article 129708].
Nature (Human/Non-human) non-human_actions, human_actions (a) The software failure incident in the articles is primarily due to non-human actions. The vulnerability exploited by the researcher, Martin Herfurt, is related to the way Tesla's authorization method via NFC card is implemented. The flaw allows for unauthorized key enrollment within a 130-second window after unlocking the car with the NFC card, without requiring any authentication or indication on the in-car display. This vulnerability is a result of the dual roles played by the NFC card, which not only opens and starts the car but also authorizes key management [128639, 129708]. (b) However, human actions are also involved in the exploitation of this vulnerability. The attacker, in this case, needs to be physically present near the car during the 130-second window after the car is unlocked with the NFC card to carry out the attack. Additionally, the attacker can force the use of the NFC card by blocking the BLE frequency used by Tesla's phone-as-a-key app, thereby manipulating the unlocking method to exploit the vulnerability [128639, 129708].
Dimension (Hardware/Software) hardware, software (a) The software failure incident reported in the articles is primarily due to contributing factors that originate in hardware. The vulnerability exploited by the researcher involves the NFC key card and the Bluetooth Low Energy (BLE) communication with the Tesla vehicles. The attack takes advantage of the way Tesla's authorization method is implemented, specifically the lack of connection between the online account world and the offline BLE world, allowing attackers to enroll keys for arbitrary vehicles by sending VCSEC messages to the vehicle [128639, 129708]. (b) The software failure incident also has contributing factors that originate in software. The attack was made possible by the development of a malicious app named Teslakee that communicates using VCSec, the same language used by the official Tesla app to communicate with Tesla cars. This app allows attackers to surreptitiously enroll their own key during the 130-second interval after the car is unlocked with an NFC card. The flaw in Tesla's software implementation, which does not properly authenticate key enrollment during this interval, enables the attack to succeed [128639, 129708].
Objective (Malicious/Non-malicious) malicious (a) The software failure incident described in the articles is malicious in nature. A security researcher named Martin Herfurt discovered a vulnerability in Tesla vehicles that allowed attackers to exploit the NFC key card feature to steal cars. Herfurt developed a malicious app named Teslakee that could enroll new keys without authentication during a 130-second window after the car was unlocked with the NFC card. This attack was designed to demonstrate how thieves could take advantage of the vulnerability to steal Tesla vehicles [Article 128639, Article 129708].
Intent (Poor/Accidental Decisions) poor_decisions (a) The intent of the software failure incident in the articles can be categorized as poor_decisions. This is evident from the fact that the vulnerability exploited by the attacker was a result of the way Tesla's authorization method was implemented, which allowed for unauthorized key enrollment without proper authentication [128639, 129708]. The lack of connection between the online account world and the offline BLE world, as well as the failure to address vulnerabilities reported in the past, indicate poor decisions in the design and security implementation of the software system.
Capability (Incompetence/Accidental) development_incompetence, accidental (a) The software failure incident in the articles can be attributed to development incompetence. The vulnerability exploited by the researcher, Martin Herfurt, was a result of Tesla's flawed authorization method, which allowed for unauthorized key enrollment without proper authentication [128639, 129708]. Herfurt highlighted the lack of connection between the online account world and the offline BLE world in Tesla's system, which enabled attackers to exploit the NFC card unlock process [128639, 129708]. Despite Herfurt's attempts to communicate these vulnerabilities to Tesla in the past, he received no response, indicating a lack of action on Tesla's part to address the issue [128639, 129708]. (b) The software failure incident can also be considered accidental to some extent. The flaw in Tesla's system that allowed for unauthorized key enrollment during the 130-second window after unlocking with an NFC card was not intentional but rather a result of the flawed design and implementation of the system [128639, 129708]. The vulnerability was not deliberately introduced but was a consequence of how Tesla's authorization process handled the NFC card unlock feature, leading to the unintended consequence of enabling attackers to exploit the system [128639, 129708].
Duration temporary The software failure incident described in the articles can be categorized as a temporary failure. The vulnerability exploited by the researcher, Martin Herfurt, allowed for the unauthorized enrollment of new keys within a specific 130-second interval after unlocking a Tesla vehicle with an NFC card [Article 128639, Article 129708]. This timeframe limitation indicates that the failure was temporary and dependent on the specific circumstances of the attack within that window of opportunity.
Behaviour value, other (a) crash: The software failure incident described in the articles does not involve a crash where the system loses state and does not perform any of its intended functions. Instead, the incident involves a vulnerability that allows unauthorized individuals to enroll new keys to steal Tesla vehicles [128639, 129708]. (b) omission: The software failure incident does not involve a failure due to the system omitting to perform its intended functions at an instance(s). The vulnerability exploited in this incident is related to unauthorized key enrollment rather than the system omitting any intended functions [128639, 129708]. (c) timing: The software failure incident does not involve a failure due to the system performing its intended functions too late or too early. The vulnerability exploited allows for immediate unauthorized key enrollment within a specific time window after unlocking the car with an NFC card [128639, 129708]. (d) value: The software failure incident does involve a failure due to the system performing its intended functions incorrectly. Specifically, the vulnerability allows for the unauthorized enrollment of new keys without proper authentication, leading to potential car theft [128639, 129708]. (e) byzantine: The software failure incident does not involve a failure due to the system behaving erroneously with inconsistent responses and interactions. The vulnerability exploited in this incident is more focused on unauthorized key enrollment rather than inconsistent system behavior [128639, 129708]. (f) other: The other behavior observed in this software failure incident is the exploitation of a security vulnerability that allows attackers to surreptitiously enroll their own key during a specific time window after unlocking the car with an NFC card. This behavior poses a significant security risk to Tesla vehicle owners [128639, 129708].

IoT System Layer

Layer Option Rationale
Perception None None
Communication None None
Application None None

Other Details

Category Option Rationale
Consequence property, non-human, theoretical_consequence (a) unknown (b) unknown (c) unknown (d) Property: The software failure incident allowed attackers to steal Tesla cars by exploiting a vulnerability in the NFC key card system, enabling them to enroll their own key and gain unauthorized access to the vehicles [128639, 129708]. (e) unknown (f) Non-human: The vulnerability in the NFC key card system allowed attackers to enroll new keys for arbitrary vehicles, impacting the security of the vehicles themselves [128639, 129708]. (g) unknown (h) Theoretical_consequence: The vulnerability in the NFC key card system could potentially lead to theft of Tesla vehicles by unauthorized individuals exploiting the flaw in the system [128639, 129708]. (i) unknown
Domain transportation (a) The failed system in the articles is related to the transportation industry as it involves exploiting vulnerabilities in Tesla vehicles' NFC key card system to steal cars [Article 128639, Article 129708].

Sources

Back to List