# Automated Penetration Testing Framework for Smart-Home-Based IoT Devices
## 1 Introduction  
IoT devices are physical objects which offer services through online connectivity. They are equipped with sensors, actuators, and controllers. Any device that can connect, interact, and exchange data with the internet is an IoT device [1]. It is a new way of data exchange, where devices interact with each other for the delivery of services [2]. In recent times, there has been a rapid expansion of the IoT and because of being in a highly technological society, people are surrounded by networked smart devices designed to enhance productivity, efficiency, and efficacy. These devices operate interactively and anonymously and encompass most of the Internet of Things. Therefore, it can be established that the IoT is far more ubiquitous than many realize and based on a recent statistic, the total number of IoT devices (worldwide) is expected to be around 22 billion (2018) and is expected to reach 50 billion by the year 2030 [3]. This expansion is expected to cause an evolution in the government and majorly in the fields of transportation, education, and finance, along with a few other fields [4]. This expansion, with the help of network virtualization,communication capabilities, and cloud computing, has enabled a new connection between the virtual and the physical world. IoT devices have different applications across various fields through which information can be shared and communicated via the Internet [5]. These devices fall into different categories, such as information technology and enterprise devices; operation technology like SCADA (supervisory control and data acquisition) [6], process control, medical devices; consumer devices like smartphones, smart bulbs, smart kettles; and various other single-purpose devices [4]. Another good example is wearable devices; they are a transformation of ordinary wearable products into smart devices such as clothes, shoes, or watches, which can be worn on the user's body and can interact with their surroundings [7]. Additionally, the concept of smart homes which comes under consumer devices is of great interest in the field of IoT. Smart homes are an environment built using smart IoT devices. In other words, a smart home \"is a house or living environment that contains the technology to allow home devices and systems to be controlled automatically\" [8]. There is no formal definition for a smart home but the most suitable was one found in one research paper: \"A residence equipped with a communications network, linking sensors and domestic devices and appliances that can be remotely monitored, accessed or controlled, and which provide services that respond to the needs of its inhabitants\" [9]. All the IoT devices present in such an environment are smart home-based IoT devices. Deployed at home, these devices generally communicate with the servers on the cloud and access the network (directly or indirectly) through protocols like ZigBee, Wi-Fi, and Bluetooth [10]. There are six important components surrounding the architecture of smart homes [11]:  
1. **Hardware:** It includes all the physical components of the device (including the firmware). 2. **User interface:** The devices used by the user to access the IoT devices (i.e. The user's PC or Mobile Phone). 3. **Web Application:** It helps in configuring, accessing, or controlling a device. In most cases, it is hosted on a web server residing in the device itself. 4. **Mobile Application:** It is like a web application, but with more features and is more practical for the user's use. 5. **Network and Cloud:** All the communications between the devices and the applications happen to go through the network and the data is stored in the cloud. 6. **API (Application Protocol Interface):** This plays a crucial role in making interoperability and interaction between the device, application, and the cloud possible. An example of the architecture described above is shown in Figure 1.  
Above Figure 1 represents the connections between the components surrounding the architecture of smart homes.