# Analyzing Cyber-Physical Threats on Robotic Platforms +
## 4 Risk Assessment of the Robotic Platform
### Attack Analysis
#### 4.1.1 Analysis of Integrity Attacks  
A good representative example of an integrity attack would be if a user is teleoperating a robot using MobileEyes (see Figure 5) and wants the robot to turn left, but a MITM attacker intercepts this command and forces the robot to turn right instead. In this case, there is a chance of physical damage to occur including falls or collisions. Other integrity scenarios are also possible. In Figure 6, we show an attack tree that demonstrates different branches of attacks based on a MITM attacker that can lead to the loss of integrity, which represents the ultimate objective of the attacker as demonstrated by Level 1 of the attack tree. The loss of integrity is achieved by manipulating the communication stream between the client (user using MobileEyes) and the server (robot) to cause cyber-physical impacts. More details on the cyber-physical impacts or consequences are given in Section 4.3. The branches of the tree represent the ways and techniques through which the attacker can achieve the ultimate goal. The arrows in the attack tree indicate the sequence through which each attack proceeds. The presented attack tree is not inclusive, meaning it does not cover all possible ways to achieve loss of integrity. There are four main ways to perform an integrity attack as shown in Level 2 of the attack tree:  
* Manipulate the traffic from the client to the robot. * Manipulate the traffic from the robot to the client. * Manipulate the data or software on the client. * Manipulate the data or software on the robot. Level 3 of the attack tree represents the traffic manipulation _techniques_ that are used to achieve the consequences in Level 2. In this paper, for our assessment, we focus on and implement the first and second manipulations from the list above. The technique to achieve the first manipulation is based on intercepting the traffic that goes from the client to the robot, while the technique to achieve the second manipulation is based on intercepting the traffic that goes from the robot to the client. The third and  
Figure 6: Integrity attack tree. fourth manipulations can be implemented using special malware, such as a computer virus or worm, but are beyond the scope of this paper. Most of the traffic sent from the client to the robot are commands; however, most of the traffic sent from the robot to the client are data and feedback of certain tasks. Both integrity attacks in the tree start by performing a MITM attack through Address Resolution Protocol (ARP) spoofing on the robot and the client as indicated by Level 5. This requires the attacker to be on the same network as the robot and the client. In other words, the attacker is either a trusted insider or an outsider who managed to hack into the network. Level 4 of the attack tree shows that the attacker can analyze the packets and distinguish certain commands (e.g., movement commands) and data (e.g., coordinates and responses) by sniffing the traffic between the robot and the client. To assess the risks associated with the two integrity manipulation threats considered in this paper, a python-based robot attack tool (RAT) that utilizes Scapy [57] is developed. To use the RAT tool, MITM attack must first be successfully initiated and mounted on the robot network. Thus, this tool is supposed to run on the MITM attacker machine to perform the intended attacks. RAT automatically intercepts certain commands (in the form of TCP packets) that are transmitted from the client to the robot and replaces them by commands of our choice; namely, this is known as a replay attack. The delay introduced into the communication link by using the RAT tool is negligible and unnoticeable for the user (usually less than 0.75 s). For example, RAT can force the robot to turn left instead of turning right as directed by the client. This is achieved by manipulating the headers of the packets, such as changing the source and destination IPs. By the same token, traffic from the robot to the client can be manipulated.