# Towards the Detection of GPS Spoofing Attacks against Drones by Analyzing Camera's Video Stream
## 1 Introduction  
A Global Positioning System (GPS) is a satellite-based radio navigation system that provides geolocation and time information. GPS sensors are located in various devices and vehicles such as cars, planes, cell phones, ships, large and small UAVs, and more. In light of this, we propose a novel GPS spoofing attack detection system. We focus our solution on small UAVs (drones) for several reasons: (1) they are small and inexpensive, (2) they rely on a built-in camera, (3) they use GPS sensors, and (4) it is difficult to add external components to micro UAVs. Many attacks on GPS sensors attempt to spoof the location of the device at a given moment, including GPS spoofing, which is one of the most common attacks of this kind. A successful spoofing attack enables the attacker to perform various attacks, such as changing the direction of the device, redirecting the device to another location in the world, and more. A drone manufacturer can detect GPS spoofing attacks by analyzing the physical layer of the signal, because it has access to this data via the sensor. Currently, subtle GPS spoofing attacks are not detected by drone manufacturers, creating a real problem for consumers who need an effective user-level solution (i.e., a solution that is effective given the existing constraints whereby the consumer likely has limited to no access to the relevant data). Recent studies have suggested countermeasures to detect, mitigate, and prevent GPS spoofing attacks, however the proposed methods have numerous disadvantages, and as a result, a recent SoK identified GPS spoofing attacks against drones as a scientific gap [1] that threatens drones' ability to perform their tasks. In this research, we examine whether a drone's video stream can be used to detect GPS spoofing attacks, without the need for additional drone hardware or memory, or prior knowledge of the flight area. We propose a method capable of detecting GPS spoofing attacks by verifying the measurements obtained by the GPS sensor against the video stream captured by the drone's camera. We analyze the suggested method's performance in a controlled environment by conducting experiments on a flight simulator that we developed. Then, we analyze its performance in the real world using a commercial drone. We show that our method can detect any attempt to launch a GPS spoofing attack in which the spoofed location is a distance of 1-4 m (an average of 2.5 m) from the real location and for a drone flying at altitudes of 50-100 m over an urban area at an average speed of 4 km/h with different levels of ambient light. The significance of our method with respect to the methods proposed in related work is as follows:  
1. Our method relies on existing hardware: in contrast to methods presented in other studies (e.g., [2; 3; 4]), our method does not involve the use of additional hardware, which also makes it cost-effective;
2. Our method is database independent: in contrast to methods presented in other studies (e.g., [5]) which use a precompiled database, our method does not rely on a precompiled database or a map of the drone's flight area;
3. Our method offers flexibility: unlike other methods, it can be implemented on the drone itself or from the ground control station used to control the drone (i.e., on the drone's controller);
4. We empirically evaluate the accuracy of our method and determine the level of security for a situation in which the spoofed location is an average of 2.5 m away from the actual location, an aspect that was not evaluated in related studies. In summary, this paper makes the following contributions: (1) We propose a new method for the detection of GPS spoofing attacks on devices that include (or contain) an on-board video camera. The method's performance was evaluated with a simulator and in a real life scenario.