Sensors: A Robot Operating System Framework For Secure UAV Communications
Sensors: A Robot Operating System Framework For Secure UAV Communications
Article
A Robot Operating System Framework for Secure UAV
Communications
Hyojun Lee 1 , Jiyoung Yoon 2 , Min-Seong Jang 1 and Kyung-Joon Park 1, *
1 Department of Information and Communication Engineering, Daegu Gyeongbuk Institute of Science and
Technology, Daegu 42988, Korea; [email protected] (H.L.); [email protected] (M.-S.J.)
2 INTUSEER Inc., Daegu 41260, Korea; [email protected]
* Correspondence: [email protected]; Tel.: +82-53-785-6314
Abstract: To perform advanced operations with unmanned aerial vehicles (UAVs), it is crucial that
components other than the existing ones such as flight controller, network devices, and ground
control station (GCS) are also used. The inevitable addition of hardware and software to accomplish
UAV operations may lead to security vulnerabilities through various vectors. Hence, we propose
a security framework in this study to improve the security of an unmanned aerial system (UAS).
The proposed framework operates in the robot operating system (ROS) and is designed to focus on
several perspectives, such as overhead arising from additional security elements and security issues
essential for flight missions. The UAS is operated in a nonnative and native ROS environment. The
performance of the proposed framework in both environments is verified through experiments.
decision making, to final execution, and it can be referred to as a CPS. In these CPSs, stud-
ies on system vulnerabilities, one of which is vulnerability in the network, are actively
underway
to [6–10]. and it can be referred to as a CPS. In these CPSs, studies on system
final execution,
Robot
vulnerabilities,Operating Systemis (ROS)
one of which is the middleware
vulnerability in the network, for robot software
are actively development.
underway [6–10].
Unlike the operating
Robot Operatingsystems
Systemused (ROS) in is
computers, ROS provides
the middleware for robotservices
softwaresuchdevelopment.
as hardware
abstraction,
Unlike low-levelsystems
the operating device control, and message
used in computers, ROSdelivery between
provides servicesprocesses
such asfor system
hardware
abstraction,
operation. Itlow-level
is used indevice
variouscontrol,
robot and message
industries and delivery
research between processes
fields due for system
to its advantages
operation.
such as activeIt is community
used in various androbot industries
efficient and research
development. In an fields
UAS, dueROStoisitsinstalled
advantages and
such
used asonactive
the UAVcommunity
exteriorandboard efficient development.
for advanced In an UAS,
operations such asROS is installed and used
autonomous clus-
on theUAV.
tered UAV However,
exterior boardROS for
lacksadvanced
design foroperations such as autonomous
system security. Basic safety and toolsclustered
are pro-
UAV.
vided,However, ROS focus
but these tools lacks ondesignsystem for failure,
systemsuch
security.
as timeBasic safety tools are
synchronization andprovided,
program
but
partthese toolsthere
accuracy; focusareonnosystem
measures failure,
for such
systemas attacks.
time synchronization and program part
accuracy;
In thisthere are we
paper, no measures
explain the forvulnerability
system attacks.in an ROS-based UAV and propose a se-
curityInframework
this paper,towe explain
solve the vulnerability
it. Section 3 describes thein an ROS-based UAV
vulnerabilities and propose
in ROS-based UAVs a
security framework to solve it. Section 3 describes the vulnerabilities
and how attacks are planned using them. Section 4 describes the studies and tools that in ROS-based UAVs
and
havehowbeenattacks are planned
undertaken usingthe
to address them. Section
problem. 4 describes
Section the studies
5 describes and tools pro-
the framework that
have been undertaken to address the problem. Section 5 describes
posed for vulnerabilities in ROS. The performance and overhead of the proposed frame- the framework proposed
for
work vulnerabilities
are shown in in ROS. The with
comparison performance andtools
those of the overhead of the
described in proposed
Section 4; framework
a low over-
are shown in comparison with those of the tools described in
head security solution is proposed that can address vulnerabilities in ROS. Section Section 4; a low overhead
6 de-
security solution is proposed that can address vulnerabilities in
scribes the proposed security framework with actual implementation and verification. ROS. Section 6 describes
the proposed security framework with actual implementation and verification.
2. Background
2. Background
2.1. Unmanned
2.1. Unmanned AerialAerial System (UAS)
System (UAS)
UAS is
UAS is aa generic
generictermtermused
usedtotodenote
denotethe
thecombination
combination ofof a drone
a drone and and a ground
a ground con-
control
trol station (GCS), as well as the communication system between the two.
station (GCS), as well as the communication system between the two. A drone refers to an A drone refers
to an aircraft
aircraft that fliesthatautomatically
flies automatically or in semiautomatic
or in semiautomatic mode without
mode without a realonpilot
a real pilot on
board.
board. It performs its missions by controlling its altitude and position through
It performs its missions by controlling its altitude and position through an internal flight an internal
flight controller.
controller. The flight
The flight missionmission is performed
is performed eithereither by transmission
by transmission fromfromthe the
GCSGCS or byor
by built-in
built-in algorithms.
algorithms. TheThe conventional
conventional media
media usedused
for for communication
communication are are
RC RC transmit-
transmitters,
ters, Bluetooth,
Bluetooth, Wi-Fi, Wi-Fi,
and and radio.
radio. Drones
Drones cancan send
send and
and receivecommands
receive commandsand andstatus
status from
from
the GCS through these media using the MAVLink message protocol
the GCS through these media using the MAVLink message protocol [11]. MAVLink is [11]. MAVLink is aa
light messaging protocol for onboard communication or components
messaging protocol for onboard communication or components of drones. It can of drones. It can be
implemented
be implemented in 14 languages,
in 14 languages,including
includingC and
C andC++; various
C++; high-level
various high-levelAPIs exist
APIs for for
exist in-
teraction between
interaction betweenother othersystems
systemssuchsuchasasdrones
dronesandandROS.
ROS.TheThe protocol
protocol can also be used used
by at least seven GCS software programs (e.g., QGroundControlQGroundControl and and Mission
Mission Planner)
Planner) to to
communicate with the drone. Figure 1 shows the MAVLink MAVLink protocol
protocol message.
message. Figure 22
shows QGroundControl, an illustrative GCS in UAS UAS configuration.
configuration. Figure 3 shows shows thethe
UAV used
UAV used in
in this
this paper.
paper.
Figure 2.
Figure 2. QGroundControl
QGroundControlas
asthe
theground
groundcontrol
controlstation (GCS).
station (GCS).
Figure 2. QGroundControl as the ground control station (GCS).
Figure
Figure
2.2. 3.3.Unmanned
Robot Unmanned aerialvehicle
Operating aerial
System vehicle (UAV).
(ROS)(UAV).
2.2. As mentioned earlier, ROS is the middleware for robot software development [13].
2.2.Robot
RobotOperating
OperatingSystemSystem(ROS)
(ROS)
Unlike the operating systems used in computers, it provides services such as hardware
As
As mentioned
mentioned earlier,
abstraction, low-level device ROS
earlier, ROS isisthe
control, andmiddleware
the middleware
message deliveryfor
for robot
robot software
software
between development
for system[13].
development
processes [13].
Unlike the
Unlike theFor
operation. operating
operating systems
systems
asynchronous used in computers,
used in computers,
communication it provides
in ROS,ittheprovides services such as
services such model
publisher-subscriber hardware
as hardware
is
abstraction,
abstraction,
adopted; thelow-level
low-level
topic field device
device
is usedcontrol,
control, and
andmessage
messagedelivery
for communication deliverythe
between between
between processes
processes
publisher and thefor
forsystem
system
sub-
operation.
operation.
scriber. For
For4asynchronous
Figure asynchronous
shows the structuredcommunication
communication in
model of ROS.inROS,
ROS, the
The ROSthepublisher-subscriber
of the master,model
publisher-subscriber
consists modelisis
pub-
adopted;
adopted;
lisher, andthe
the topic
topic
subscriberfield is used
field
node. isThe for
used communication
for
master communication
node connects between
the the publisher
between
subscriberthenode and
thethe
publisher
to andsubscriber.
the sub-
publisher
Figure
node 4
thatshows
wants the structured
access to a model
specific of
topic.ROS.
With The
the ROS
help consists
of the of
masterthe
scriber. Figure 4 shows the structured model of ROS. The ROS consists of the master, pub- master,
node, the publisher,
connected and
subscriber
publisher
lisher, andandnode. The
subscriber
subscriber master
nodes
node. node
Thewill connects
be able
master the
to send
node subscriber
and receive
connects node to the
the desired
the subscriber publisher
nodedata node
through
to the that
publisher
wants
the
node access
topic.
that wantsto a access
specifictotopic. Withtopic.
a specific the help
Withof the
the help
master node,
of the the connected
master node, the publisher
connected
and subscriber
publisher nodes will nodes
and subscriber be ablewillto send andtoreceive
be able send andthe receive
desired the
datadesired
through thethrough
data topic.
the topic.
2.3. Rosbridge
Rosbridge is a package of ROS that allows us to use topics and services in ROS
even if the client does not have ROS installed. This is possible because the JSON-based
rosbridge protocol is used on the server with ROS installed. When a rosbridge server
that communicates with WebSocket on the ROS server side is executed, it is possible to
communicate with the node of the ROS server through various front-end devices such
as the web browser, and the service is also available. Figure 5 describes the concept of
rosbridge [14].
Sensors 2021, 21, 1369 4 of 19
Sensors 2021, 21, 1369 4 of 20
2.3. Rosbridge
Rosbridge is a package of ROS that allows us to use topics and services in ROS even
if the client does not have ROS installed. This is possible because the JSON-based
rosbridge protocol is used on the server with ROS installed. When a rosbridge server that
communicates with WebSocket on the ROS server side is executed, it is possible to com-
municate with the node of the ROS server through various front-end devices such as the
web browser, and the 4.
Figure service is also available.
Robotoperating
operating Figurestructure.
system(ROS)
(ROS) 5 describes the concept of rosbridge
Figure 4. Robot system structure.
[14].
2.3. Rosbridge
Rosbridge is a package of ROS that allows us to use topics and services in ROS even
if the client does not have ROS installed. This is possible because the JSON-based
rosbridge protocol is used on the server with ROS installed. When a rosbridge server that
communicates with WebSocket on the ROS server side is executed, it is possible to com-
municate with the node of the ROS server through various front-end devices such as the
web browser, and the service is also available. Figure 5 describes the concept of rosbridge
[14].
ROS also provides a tool to prepare for system failures. The Watchdog timer is a tool
used for high reliability systems [17], and it is implemented in ROS. The Watchdog timer
monitors the CPU and restores the system to normal conditions when abnormal or infinite
loops occur. While ROS provides a Watchdog timer for these functions, it only provides
the detection function and entrusts developers with a way to reconfigure the system.
The subsequent version of ROS, ROS2, introduced the concept of a management node,
also called the lifecycle node [18]. It is designed for the enhanced control of the state of
the ROS system. There are four node states: unconfigured, inactive, active, and finalized.
Seven switching actions can be performed: create, configure, cleanup, activate, deactivate,
shutdown, and destroy. When a switching operation is performed, it goes through six
switching states: configuring, cleaning up, shutting down, activating, deactivating, and
error processing. This node state transition is introduced to enhance the overall security
of ROS.
Recently, ROS2 was officially released, and the biggest difference and feature of the
previous version is the adoption of the Data Distribution Service (DDS) as middleware.
DDS has several security requirements, including authentication, access control, and
cryptographic operations [19]. This shows that security is important for mission-critical
ROS environments. However, since ROS and ROS2 are incompatible with each other in a
native environment, security issues still remain in systems using ROS.
Figure 7, the system model of UAV with ROS through the aforementioned procedure.
The /sensor node present in the external sensor publishes the message to the /process node
in the offboard computer using /topic. /Process nodes deliver command messages for
UAV control to /MAVROS node based on sensor data. /MAVROS node forwards the data
to the6.flight controller 6. Feedback loop in an unmanned aerial system (UAS).
Figure via
Figure Feedback loop in an MAVLink.
unmanned aerial system (UAS).
Figure 7, the system model of UAV with ROS through the aforementioned procedure.
The /sensor node present in the external sensor publishes the message to the /process node
in the offboard computer using /topic. /Process nodes deliver command messages for
UAV control to /MAVROS node based on sensor data. /MAVROS node forwards the data
to the flight controller via MAVLink.
Second, the master node does not check whether data from connected nodes through
monitoring is within the acceptable range of the system. In any command, dropping
data that exceeds a user-defined threshold protects the system from malicious false data
injection. However, when an attack is authorized within the scope, the system cannot
defend itself.
Third, the system does not guarantee the integrity of messages transmitted in ROS.
If the system ensures that the data are authorized and not changed, it can protect itself
against active attacks such as masquerade and injection attacks. Active attacks, unlike
passive attacks that only eavesdrop on systems, hurt integrity and availability, and they
directly affect the flight of UAVs in a short time. The second problem above can be covered
if the data integrity check is satisfied. Checking data integrity can also protect the system
against masquerade attacks.
The most effective attacks on the system in UAS operation are the active attacks that
change the system, such as masquerade, injection, replay, etc. To protect the system against
this, we need a solution that can solve the aforementioned problems. In addition, the
method should not have large overheads and not obstruct the flight. We propose a security
framework that addresses vulnerabilities in ROS-based UAS and has low overhead.
4. Related Work
In this section, we discuss the studies that were conducted to ensure the security of
UAVs. First, we present the studies for a ROS-based system. For each study, the method and
direction of security application for authentication, authorization, and message verification
areas are discussed.
Jeff Huang et al. [20] proposed ROSRV, a runtime verification framework for ROS-
based robot applications. A node called ROSRV is placed under the master node. The
node that needs to be registered as a publisher or subscriber node is identified and is
connected to the other node. The second function then places the monitoring node between
all publishers and subscribers within the ROS to drop commands or messages outside
the user-specified range. The two functions satisfy the requirements of authorization and
message verification. Thus, this can address the first and second vulnerabilities described
in Section 3.2 at present. However, there are several reasons why it is difficult to apply this
to UAVs, and these points are covered in Section 5.
Russell Toris et al. [21] proposed rosauth, an authentication service to enhance the se-
curity of the connection of nonnative clients in ROS. As mentioned, there is a package called
rosbridge in ROS that allows clients to communicate synchronously and asynchronously
with ROS, even if not in an ROS environment. The author proposed a method of authenti-
cating whether the client accessing the ROS server using the message authentication code
(MAC) is an authorized node. This project can solve the first vulnerability mentioned
in Section 3.2. However, the nodes are verified using MAC only at the point of client
connection. It does not guarantee the security for message tampering that occurs after
the connection. In other words, it does not guarantee data integrity, the most important
vulnerability in ROS-based UAS.
Bernhard Dieber et al. [22] treated ROS as a black box and used an authentication
server (AS) to ensure communication between authorized nodes. In this approach, the
publisher receives a key from the AS, encrypts, signs it with the message, and then forwards
it to the subscriber. The subscriber can decode and verify whether the message has been
tampered with. However, every time we send a message, we have two encryption over-
heads and a decryption overhead. Furthermore, RSA (Rivest-Shamir-Adleman) signatures
are slow.
Roland Dóczi et al. [23] proposed a security enhancement solution for ROS-based med-
ical surgical robots. The author used authorization and authentication (AA) to eliminate
security problems arising from ROS. They implemented an AA node for the AA function.
The node receives its name and password from the connection request node, checks the
DB, and passes the key if the information is the correct. The node then requests the master
Sensors 2021, 21, 1369 8 of 19
node to connect with the other node along with the key; the master node sends the key to
AA to verify that it is a valid node. However, methods of authenticating using names and
passwords can easily be overridden by attackers.
Ruffin White et al. [24] proposed SROS. SROS is a set of security enhancements for ROS,
such as native TLS support for all socket transport within ROS, the use of x.509 certificates
permitting chains of trust, definable namespace globbing for ROS node restrictions and
permitted roles, as well as covenant user-space tooling to auto generate node key pairs,
audit ROS networks, and construct/train access control policies. However, it is currently in
an experimental development phase, and developers warn that it should not be considered
as production-grade. Moreover, it is also not available to developers who use other
languages because it is considered only for python development.
Manuel J. Fernandez et al. [25] used Elliptic Curve Digital Signature Algorithm
(ECDSA)-based digital signatures to eliminate the security problem of communication
between GCS and UAVs. ECDSA is a digital signature method based on elliptic curve
encryption, and it can achieve the same level of security performance as RSA with smaller
keys. Systems applying the method can address the most important security issues for the
flight of UAVs by satisfying the part about message validation. The point of protecting
the system through digital signatures in their study has a similar direction as our work.
However, it has a concept of securing data from GCS and does not guarantee behavior
in nonnative environments. Furthermore, as much as we deal with time-sensitive UAVs,
we can compare the corresponding method with our proposed framework in terms of
overhead. In Section 5.3.1, we compare ECDSA with the overhead of digital signatures
based on SHA-256.
In addition, the security of UAV is also studied in other layers of communication. We
discuss securing the UAV communications in the physical layer. Guangchi Zhang et al. [26]
studied how to secure UAV-to-ground (U2G) and ground-to-UAV (G2U) communications
by jointly optimizing the UAV’s trajectory to maximize the average secrecy rates of the
U2G and G2U transmissions. Andrey V. Savkin et al. [27] studied the wireless commu-
nication security between a UAV to the ground node by the online planning of a UAV’s
3D trajectory. For that, they proposed a new navigation scheme with proven optimization
and developed a model predictive control algorithm. Huici Wu et al. [28] developed an
analytical framework for analyzing secrecy coverage performance and secrecy capacity
performance. For that, they investigated secrecy performance in the air-to-ground wiretap
system by considering the unique features of the UAV communication platform.
5. Proposed Method
The work was carried out in an environment with MAVROS, an extension package
for UAV in ROS (see Section 3 for details). We found that the vulnerability of ROS makes
the ROS-based UAS vulnerable. To solve this, we implemented security measures in the
master, publisher, and subscriber nodes. This does not address all security issues in the
system, but it ensures that the two security issues that are key to UAS operation are dealt
with (see Section 4 for details),
1. Unauthorized users registering nodes on the system without permission
2. Unauthorized registered node infusing incorrect data and affecting drone flight.
Message transmission in the current ROS has the following procedure. There is
the S-node that receives information about a particular topic T. P-node tries to transmit
information about T and thus attempts to connect with the node that receives the T through
the master node. The master node connects P to S. P broadcasts msgPST and delivers it
to S. Then, S receives the information and performs calculations to control the UAV. The
procedure unconditionally trusts the node and operates the robot. Thus, if a PA-node (i.e.,
the node that publishes the wrong data) accesses the system, the following occurs. PA
requests a connection to the master node with a node that receives information for a specific
topic T. The PA connected to the system injects the wrong data, i.e., msgPAST , into the S at
a faster rate than P. S does not recognize that the data are incorrect and uses that data to
mation about T and thus attempts to connect with the node that receives the T through
the master node. The master node connects P to S. P broadcasts msgPST and delivers it to
S. Then, S receives the information and performs calculations to control the UAV. The
procedure unconditionally trusts the node and operates the robot. Thus, if a PA-node (i.e.,
Sensors 2021, 21, 1369 the node that publishes the wrong data) accesses the system, the following occurs. PA
9 of 19
requests a connection to the master node with a node that receives information for a spe-
cific topic T. The PA connected to the system injects the wrong data, i.e., msgPAST, into the
S at a faster rate than P. S does not recognize that the data are incorrect and uses that data
control
to controlUAVs.
UAVs. The
Thecurrent
currentprocedure
procedurecannot
cannotdetermine
determinewhether
whetherthethe node
node that requests
that requests
registration to the master is an authorized node. It is also not known whether the
registration to the master is an authorized node. It is also not known whether the data that data that
are being transmitted are modulated or are from an accredited node. For this
are being transmitted are modulated or are from an accredited node. For this reason, we reason, we
propose a security framework for ROS-based UAS to implement a UAS
propose a security framework for ROS-based UAS to implement a UAS that is safe from that is safe from
such intrusions.
such intrusions. ROS
ROS with
with frameworks
frameworks can
can be
be schematized
schematized as as shown
shown in
in Figure
Figure 8.8. Table
Table 22
defines the terms for each component of the proposed framework.
defines the terms for each component of the proposed framework.
Figure
Figure 8.
8. Proposed
Proposed access
access control
control procedures.
procedures.
5.1. Registration
5.1. Registration ofof aa New
New Node
Node
Access control is the function of
Access control is the function of allowing
allowing or or denying
denyingsomeone
someonethe theuse
useofofaaresource.
resource.
We apply
We applyaccess
accesscontrol
control to to
ROS, thus
ROS, preventing
thus unauthorized
preventing unauthorizedsystem registration
system of nodes.
registration of
nodes. ACT means a list of access rights for nodes accessing a particular topic T. This includes
nodes ACTwith accessa to
means listT of
and can be
access expressed
rights as ACT
for nodes = [x, y,az].particular
accessing Here, d(P) andT.
topic d(S) mean
This in-
digests for P and S respectively, and d(P) can be expressed in H(k, P
cludes nodes with access to T and can be expressed as ACT = [x, y, z]. Here, d(P) and d(S)
name ||T). The ROS with
accessdigests
mean controlfor
registers
P andthe node using the
S respectively, andfollowing
d(P) canprocedure:
be expressed in H(k, Pname||T). The
ROS
1. with access control
All publishers and registers
subscriberstheaccessing
node using the following
a specific topic Tprocedure:
before ROS operation are
listed and recorded in ACT. The information recorded
1. All publishers and subscribers accessing a specific topic T before in ACT is d(P)
ROS and d(S), which
operation are
are digests of P and S. The reason for recording the digest is to make
listed and recorded in ACT. The information recorded in ACT is d(P) and d(S), which it impossible for an
attacker to masquerade itself as a node that sees the digest and has authority over T.
2. P requests the master node to register P as a publisher of T.
3. The master node obtains d(P), which is the digest for P.
4. The master checks whether the digest is in ACT. If there is digest in ACT, P is allowed
to publish to T.
Figure 8 is a diagram showing the registration procedures of the ROS with added
access control.
Sensors 2021, 21, 1369 10 of 19
Figure 9.
Figure 9. Proposed signature procedures.
Proposed signature procedures.
Figure10.
Figure 10.Digital
Digitalsignature
signaturebenchmark
benchmarkresult.
result.
5.3.2.
5.3.2.The
TheUse
Useof
ofMAC
MAC
We
Weensured
ensuredintegrity
integritythrough
throughverification
verificationofofthe
thedata
datatransmitted
transmittedwithin
withinthethesystem
system
using MAC. Similarly, rosauth [21] in Section 4 wanted to use MAC to
using MAC. Similarly, rosauth [21] in Section 4 wanted to use MAC to improve the secu- improve the security
of ROS.
rity However,
of ROS. its use its
However, is different from thefrom
use is different one in this
the study.
one In previous
in this study. Inwork, MACwork,
previous was
used
MACinwasa nonnative
used in aenvironment early in the connection
nonnative environment early in thetoconnection
enable clients to authenticate
to enable clients to
themselves
authenticatewith the server
themselves with as the
validated
server asclients. However,
validated clients.asHowever,
there is no assolution
there is noforsolu-
the
integrity of the
tion for the data transmitted,
integrity of the data the system will
transmitted, thebe breached
system will ifbeanbreached
attacker ifattempts
an attackeran
MITM attack on an already connected channel. Conversely, the framework
attempts an MITM attack on an already connected channel. Conversely, the framework proposed in this
study uses in
proposed MACthisto ensure
study usesdata
MAC integrity and authentication
to ensure data integrity andwithauthentication
each transmission withsince
each
the beginning of the connection. In addition, only nodes authorized through
transmission since the beginning of the connection. In addition, only nodes authorized access control
can be registered.
through Furthermore,
access control the proposed
can be registered. frameworkthe
Furthermore, can be secured
proposed in a nonnative
framework can be
environment, similar to their
secured in a nonnative study. This
environment, is demonstrated
similar in Section
to their study. This is6demonstrated
with an experiment.
in Sec-
tion 6 with an experiment.
6. Test
This section describes an experiment that studies the consequences that can be caused
by the vulnerabilities in an existing ROS-based UAS and the impact on the UAS after
applying the security framework. First, we describe the experimental environment of the
drones that make up the UAS for the experiment and the arrangement of the components.
The results are presented with an explanation about the operation of the proposed security
framework in a native ROS environment and a nonnative ROS environment.
running MAVROS. We demonstrate through experiments that UAV with these security
frameworks have no impact on existing methods of attack Figure 15 shows the state of the
Sensors 2021,
Sensors 21, 21,
2021, 13691369 15 of 20 20
ors 2021, 21, 1369 UAV during an attack in the same scenario as the above. An attack was made
15 of 20 near1530ofs,
but it can be confirmed that the UAV flies at an altitude of 2 m until the experiment is over.
2.52.5
2.5
2 2
2
1.51.5
Altitude
Altitude
1.5
Altitude
1 1
1
0.50.5
0.5
0 0
0
0 0 10 10 20 20 30 30 40 40 50 50
0 10 20 30 40 50
Time
Time
Time
Figure 13.13.
Figure UAVUAVflight altitude
flight without
altitude security
without framework
security in native
framework ROS.
in native ROS.
Figure
Figure 13. UAV flight13. UAV flight
altitude altitude
without without
security securityinframework
framework in native ROS.
native ROS.
Figure 14.14.
Figure Security framework
Security frameworkforfor
ROS.
ROS.
Figure 14. Security framework for14.
Figure ROS.
Security framework for ROS.
21, 1369 16 of 20
2
2.5
1.5
Altitude
1
1.5
0.5 Altitude 1
0 0.5
0 10 20 30 40 50
0 Time
0 10 20 30 40 50
3 3
2.5 2.5
2 2
Altitude
Altitude
1.5 1.5
1 1
0.5 0.5
0 0
0 10 0 20 10 30 20 40 30 50 40 60 50 60
Time Time
2.5
1.5
Alititude
1
0.5
0
0 10 20 30 40 50 60
Time
Figure19.
Figure 19.UAV
UAVflight
flightaltitude
altitudewith
withsecurity
securityframework
frameworkininnonnative
nonnativeROS.
ROS.
7.7.Conclusions
Conclusions
With
Withthe thenoticeable
noticeablegrowth
growthininthe theuse
useofofUAV,
UAV, thethe
security
security of of
thethesystem
system hashas
become
become a
major
a major concern
concernin recent years.
in recent Due to
years. thetoabsence
Due of system
the absence security,security,
of system UAVs that UAVsare applied
that are
in diverseinplaces
applied diverse areplaces
exposedare to potential
exposed to risks. Therefore,
potential it is necessary
risks. Therefore, to be aware
it is necessary to of
be
this fact and study the security of the system of
aware of this fact and study the security of the system of UAVs. UAVs.
For
Foradvanced
advancedoperation
operationof ofUAVs,
UAVs,computers
computersthat thatcan
canoperate
operateand andcommunicate
communicateare are
required
required in addition to the flight controller, which is referred to as offboardsystems.
in addition to the flight controller, which is referred to as offboard systems.UAS UAS
isis aa generic
generic term term forfor controls,
controls, communications equipment, etc.
communications equipment, etc. totooperate
operateUAVs,
UAVs,and andit
itfalls
fallsunder
underthe thecategory
category ofof CPS.
CPS. WeWe investigated
investigated thethe vulnerability
vulnerability of the
of the UAS UAS using
using off-
offboard systems in terms of the CPS, and we proposed a security
board systems in terms of the CPS, and we proposed a security framework to address it. framework to address
it.
The The framework
framework ensures
ensures the the integrity
integrity of data
of the the data transmitted
transmitted in theinsystem
the system
through through
digital
digital
signatures and prevents unauthorized nodes from accessing the system withoutwithout
signatures and prevents unauthorized nodes from accessing the system authori-
authorization,
zation, hidinghiding their identities.
their identities. By measuring
By measuring overheadoverhead for computations,
for computations, data,trans-
data, and and
transmission
mission speeds as the framework’s functions are added, the framework is shown to be to
speeds as the framework’s functions are added, the framework is shown an
be an appropriate framework
appropriate framework for UAVs. for UAVs.
InInthis
thisstudy,
study,the thereal-time
real-timeexperiment
experimentshows
showsthat thatthe
theUAS
UASfails
failsto tofunction
functionproperly
properly
through
through cyberattacks that use the vulnerability of the ROS and install ROSin
cyberattacks that use the vulnerability of the ROS and install ROS inthe
theoffboard
offboard
computer.
computer.To Toaddress
addressthis,
this,the
theproposed
proposedsecurity
securityframework
frameworkwas wasapplied
appliedtotothethesystem
systemtoto
demonstrate system security through practical experimentation.
demonstrate system security through practical experimentation.
In the current framework, the system was defended against attacks that inject abnor-
In the current framework, the system was defended against attacks that inject abnor-
mal data into UAV flight by granting only access control and integrity. As a future work,
mal data into UAV flight by granting only access control and integrity. As a future work,
we will develop a customized module that can easily upload various functions necessary
we will develop a customized module that can easily upload various functions necessary
for system security into the framework.
for system security into the framework.
Author Contributions: Conceptualization, H.L. and J.Y.; methodology, H.L., J.Y. and K.-J.P.; soft-
Author Contributions: Conceptualization, H.L. and J.Y.; methodology, H.L., J.Y. and K.-J.P.; soft-
ware, H.L. and J.Y.; validation, H.L. and K.-J.P.; formal analysis, H.L. and K.-J.P.; investigation,
ware, H.L. and J.Y.; validation, H.L. and K.-J.P.; formal analysis, H.L. and K.-J.P.; investigation, H.L.;
H.L.; resources, H.L.; data curation, H.L.; writing—original draft preparation, H.L. and K.-J.P.;
resources, H.L.; data curation, H.L.; writing—original draft preparation, H.L. and K.-J.P.; writing—
writing—review and editing, H.L., M.-S.J., and K.-J.P.; visualization, H.L.; supervision, K.-J.P.; project
review and editing, H.L., M.-S.J., and K.-J.P.; visualization, H.L.; supervision, K.-J.P.; project admin-
administration, H.L. and K.-J.P.; funding acquisition, K.-J.P. All authors have read and agreed to the
istration, H.L. and K.-J.P.; funding acquisition, K.-J.P. All authors have read and agreed to the pub-
published version of the manuscript.
lished version of the manuscript.
Funding: This work was supported by the National Research Foundation of Korea (NRF) grant
Funding: This work was supported by the National Research Foundation of Korea (NRF) grant
funded by the Korea government (MSIT) (NRF-2019R1A2C1088092).
funded by the Korea government (MSIT) (NRF-2019R1A2C1088092).
Institutional Review Board Statement: Not applicable.
Institutional Review Board Statement: Not applicable.
Informed Consent Statement: Not applicable.
Informed Consent Statement: Not applicable.
Data Availability Statement: Not applicable.
Sensors 2021, 21, 1369 18 of 19
References
1. Khan, M.A.; Ectors, W.; Bellemans, T.; Janssens, D.; Wets, G. UAV-Based Traffic Analysis: A Universal Guiding Framework Based
on Literature Survey. Transp. Res. Procedia 2017, 22, 541–550. [CrossRef]
2. Vacca, G.; Dessì, A.; Sacco, A. The Use of Nadir and Oblique UAV Images for Building Knowledge. ISPRS Int. J. Geo-Inf. 2017, 6, 393.
[CrossRef]
3. Kang, J.-H.; Kwon, Y.-M.; Park, K.-J. Cooperative Spatial Retreat for Resilient Drone Networks. Sensors 2017, 17, 1018. [CrossRef]
[PubMed]
4. Bithas, P.S.; Michailidis, E.T.; Nomikos, N.; Vouyioukas, D.; Kanatas, A.G. A Survey on Machine-Learning Techniques for
UAV-Based Communications. Sensors 2019, 19, 5170. [CrossRef]
5. Surprising Drone Uses (Besides Amazon Delivery). 2020. Available online: https://www.nationalgeographic.com/news/2013/1
2/131202-drone-uav-uas-amazon-octocopter-bezos-science-aircraft-unmanned-robot/ (accessed on 17 December 2020).
6. Wang, E.K.; Ye, Y.; Xu, X.; Yiu, S.M.; Hui, L.C.K.; Chow, K.P. Security Issues and Challenges for Cyber Physical System. In
Proceedings of the 2010 IEEE/ACM Int’l Conference on Green Computing and Communications & Int’l Conference on Cyber,
Physical and Social Computing, Hangzhou, China, 18–20 December 2010.
7. Kwon, Y.-M.; Yu, J.; Cho, B.-M.; Eun, Y.; Park, K.-J. Empirical Analysis of MAVLink Protocol Vulnerability for Attacking
Unmanned Aerial Vehicles. IEEE Access 2018, 6, 43203–43212. [CrossRef]
8. Zhao, N.; Li, Y.; Zhang, S.; Chen, Y.; Lu, W.; Wang, J.; Wang, X. Security Enhancement for NOMA-UAV Networks. IEEE Trans.
Veh. Technol. 2020, 69, 3994–4005. [CrossRef]
9. Hartmann, K.; Steup, C. The vulnerability of UAVs to cyber attacks-An approach to the risk assessment. In Proceedings of the
2013 5th International Conference on Cyber Conflict (CYCON 2013), Tallinn, Estonia, 4–7 June 2013; pp. 1–23.
10. Yoon, K.; Park, D.; Yim, Y.; Kim, K.; Yang, S.K.; Robinson, M. Security authentication system using encrypted channel on uav
network. In Proceedings of the 2017 First IEEE International Conference on Robotic Computing (IRC), Taichung, Taiwan, 10–12
April 2017; pp. 393–398.
11. MAVLink. 2020. Available online: https://mavlink.io/en/guide/serialization (accessed on 17 December 2020).
12. MAVLink Format. 2020. Available online: https://mavlink.io/en/guide/serialization.html (accessed on 17 December 2020).
13. ROS. 2020. Available online: https://www.ros.org/core-components/ (accessed on 17 December 2020).
14. Rosbridge. 2020. Available online: http://wiki.ros.org/rosbridge (accessed on 17 December 2020).
15. ROS Security. 2020. Available online: http://wiki.ros.org/Security (accessed on 17 December 2020).
16. ROS Message Filter. 2020. Available online: http://wiki.ros.org/message_filters (accessed on 17 December 2020).
17. ROS Watchdog Timer. 2020. Available online: http://library.isr.ist.utl.pt/docs/roswiki/watchdog_timer.html (accessed on 17
December 2020).
18. ROS2 Lifecycle. 2020. Available online: https://design.ros2.org/articles/node_lifecycle.html (accessed on 17 December 2020).
19. ROS 2 DDS-Security integration. 2020. Available online: https://design.ros2.org/articles/ros2_dds_security.html (accessed on 17
December 2020).
20. Huang, J.; Erdogan, C.; Zhang, Y.; Moore, B.; Luo, Q.; Sundaresan, A.; Rosu, G. ROSRV: Runtime Verification for Robots. In
Runtime Verification; Springer International Publishing: Berlin/Heidelberg, Germany, 2014; pp. 247–254.
21. Toris, R.; Shue, C.; Chernova, S. Message Authentication Codes for Secure Remote Non-Native Client Connections to ROS
Enabled Robots. In Proceedings of the 2014 IEEE International Conference on Technologies for Practical Robot Applications
(TePRA), Woburn, MA, USA, 14–15 April 2014.
22. Dieber, B.; Kacianka, S.; Rass, S.; Schartner, P. Application-Level Security for ROS-Based Applications. In Proceedings of the 2016
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, Korea, 9–14 October 2016.
23. Doczi, R.; Kis, F.; Suto, B.; Poser, V.; Kronreif, G.; Josvai, E.; Kozlovszky, M. Increasing ROS 1.x Communication Security for
Medical Surgery Robot. In Proceedings of the 2016 IEEE International Conference on Systems, Man, and Cybernetics (SMC),
Budapest, Hungary, 9–12 October 2016.
24. White, R.; Christensen, D.; Henrik, I.; Quigley, D. SROS: Securing ROS over the wire, in the graph, and through the kernel. arXiv
2016, arXiv:1611.07060.
25. Fernandez, M.J.; Sanchez-Cuevas, P.J.; Heredia, G.; Ollero, A. Securing UAV Communications Using ROS with Custom ECIES-
Based Method. In Proceedings of the 2019 Workshop on Research, Education and Development of Unmanned Aerial Systems
(RED UAS), Cranfield, UK, 25–27 November 2019.
26. Zhang, G.; Wu, Q.; Cui, M.; Zhang, R. Securing UAV Communications via Joint Trajectory and Power Control. IEEE Trans. Wirel.
Commun. 2019, 18, 1376–1389. [CrossRef]
27. Savkin, A.V.; Huang, H.; Ni, W. Securing UAV Communication in the Presence of Stationary or Mobile Eavesdroppers via Online
3D Trajectory Planning. IEEE Wirel. Commun. Lett. 2020, 9, 1211–1215. [CrossRef]
28. Wu, H.; Li, H.; Wei, Z.; Zhang, N.; Tao, X. Secrecy Performance Analysis of Air-to-Ground Communication with UAV Jitter and
Multiple Random Walking Eavesdroppers. IEEE Trans. Veh. Technol. 2021, 70, 572–584. [CrossRef]
Sensors 2021, 21, 1369 19 of 19
29. ROS-Based UAV Attack Experiment in Native Environment. 2020. Available online: https://youtu.be/m6oT---Y36Q (accessed
on 17 December 2020).
30. ROS-Based UAV Framework Experiment in Native Environment. 2020. Available online: https://youtu.be/MUmTsNmxMsM
(accessed on 17 December 2020).
31. ROS-Based UAV Attack Experiment in Non-Native Environment. 2020. Available online: https://youtu.be/ODzQ1fQpUwE
(accessed on 17 December 2020).
32. ROS-Based UAV Framework Experiment in Non-Native Environment. 2020. Available online: https://youtu.be/NgvpGi9mzhI
(accessed on 17 December 2020).