# Attack Categorisation for IoT Applications in Critical Infrastructures, a Survey
## 4 Attack Categorisation
### Use Case Specific
#### 4.8.5 Software Defined Networking (SDN)  
With the increased deployment of IoT devices throughout the world, the concern for safety increases. Although many security mechanisms exist, such as firewalls or detection and prevention systems, they are deployed along the internet edge, protecting the enclosednetwork from external attacks. However, the borderless architecture in use by IoT devices bypasses such systems and raises many security concerns. One method to combat such risks is the introduction of Software Defined Networking (SDN) to encompass and regulate routing decisions in the network itself [59]. Routing decisions are then undertaken by a global network controller that interacts directly with the SDN switch through the use of the OpenFlow protocol [109]. This paradigm can, however, be adapted to multiple types of networks. For example, an SDN architecture can be implemented over an ad-hoc network, incorporating a virtual switch into each device, through which each communication will take place [59]. With the association of WSNs and IoT in multiple areas, such as meteorology or even military surveillance, it becomes even more important to secure the various data exchanges. In [110], multiple solutions for SDN wireless-sensor-based IoT security as well as SDN-based IoT management and cellular solution frameworks have been proposed. However, like all other systems connected to the Internet, SDNs are also susceptible to various types of attack:  
* Reconnaissance, where the attacker can observe and analyse various vulnerabilities in the SDN system, allowing them to possibly penetrate into the system. * Data Exfiltration Attack, where, once the attacker has gained access to the system, they can recover and extract compromising data as well as security credentials to the rest of the system. Attacks, such as Reconnaissance, allow an attacker to observe and analyse vulnerabilities in the SDN system, allowing them the possibility to penetrate into the system. Once inside, Data Exfiltration attacks can be used to recover compromising data as well as the extraction of system credentials. These attacks cause both the loss of integrity followed by confidentiality [111] and are two of the main data-related issues related to SDNs. Another attack to which SDNs are also susceptible is a variation of the DoS attack, using multiple compromised botnet machines to launch large-scale simultaneous DoS attacks against a specific target, called _Distributed-DoS_ (_DDoS_). Although SDNs are capable of being used for DDoS detection as well as react to and block such attacks on an SDN network [112], the SDN controllers themselves, which are the brains of such detection mechanisms, can be targeted specifically. In this case, packets can take advantage of the SDN routing paradigm, transferring all unknown packet IPs to the controller, resulting in a data overload and a DoS [113]. When it comes to SDNs, the authors of [114] proposed a categorisation method to differentiate attacks dependant on the SDN architecture layers [115], which are affected or targeted by the attack. Furthermore, they also included two inter-layer categories that corresponded to the interfaces between the upper and lower layers. These five categories were the following: _Application Layer_, _Application-Control Interface_, _Control Layer_, _Control-Data Interface_, and _Data Layer_. The first category, _Application Layer_, corresponds to the highest architectural layer, which contains the various network applications used for network monitoring and control. On this layer are attacks concerning the applications themselves, such as unauthenticated application access, or resulting configuration errors, such as no policy or fake policy enforcement. The following category corresponds to the _Application-Control Interface_, which encompasses a collection of open source APIs, which, in-turn, englobe all communications between the _Application Layer_ and the _Control Layer_ below.