IoT penetration testing is a security assessment of the complete IoT ecosystem, from backend systems and cloud services to mobile devices and hardware. It involves a multi-stage simulated attack on IoT devices and their supporting system to identify security risks before attackers can exploit them.
Unpatched firmware is responsible for 60% of IoT security breaches, according to the IoT Security Foundation. In 2024, Southern Water experienced a cyber incident affecting around 5–10% of its customers, exposing personal data of customers and employees. The attackers exploited an IoT-based water monitoring system running outdated firmware to gain unauthorised access to internal servers.
In 2024, an NHS Trust suffered a data breach after attackers exploited vulnerabilities in connected medical devices to access patient records, affecting thousands of patients. The attackers exploited outdated firmware in IoT-enabled diagnostic equipment to gain entry into the Trust’s network.
According to NIST (National Institute of Standards and Technology), IoT security failures cost businesses an average of $330,000 per incident. The Mirai botnet turned unsecured IoT devices into an army of attack machines, launching one of the biggest DDoS attacks ever recorded, according to Kaspersky.
IoT penetration testing is characterised by end-to-end testing, multi-layer security assessment, multi-stage attack simulation, and AI integration.
The process of conducting a successful IoT penetration test involves preparation and planning, threat modelling, reconnaissance, vulnerability assessment, exploitation, post-exploitation, reporting, remediation, documentation, and continuous improvement. The main tools used for IoT pentesting are NURSE, Wireshark, OWASP ZAP, Nessus, and Nmap. IoT penetration testing improves an organisation’s overall security posture by identifying and proactively fixing vulnerabilities to reduce financial and reputational risks.
IoT penetration testing makes IoT devices secure by identifying and fixing vulnerabilities across hardware, firmware, networks, and cloud integrations. It validates real-world attack scenarios, reduces risk, and ensures devices so that organisations remain compliant, resilient, and trustworthy over time.
IoT penetration testing is a simulated real-world attack on Internet of Things devices and their supporting networks and applications to identify security vulnerabilities (weak passwords, insecure protocols) before attackers can exploit them. It involves a complete assessment of controls and configurations of IoT devices and evaluation of communication protocols and interfaces. Other names of IoT penetration testing are IoT pentesting and IoT security assessment.
IoT penetration testing works by defining a clear objective and scope, and then gathering information about devices, networks, and services within IoT ecosystems. Automated vulnerability scanning is combined with manual inspection to find known and unknown vulnerabilities. The real-world impact of discovered vulnerabilities is revealed through exploitation and post-exploitation. This process ends with detailed reporting and remediation recommendations.
IoT penetration testing involves testing both hardware and software layers in an IoT ecosystem. It includes testing IoT device security, examining communication protocols, probing physical security, and evaluating mobile/web apps, network configurations, and cloud APIs.
The main aim of IoT Penetration testing is to uncover exploitable weaknesses in IoT devices, firmware, communication protocols, and associated infrastructure. This includes both known and unknown (zeroday) vulnerabilities that could compromise confidentiality, integrity, or availability, according to a 2023 study by JeanPaul A. Yaacoub, titled “Ethical hacking for IoT: Security issues, challenges, solutions and recommendations.
IoT pentesting helps organisations to assess the security posture of IoT systems through the simulation of a real-world attack scenario. It lets them understand the potential impact of a security threat and the effectiveness of existing security measures. Organisations obtain evidence of a proactive security assessment through IoT penetration testing and use it to ensure compliance with industry standards and regulations.
IoT penetration testing is a multi-layer security assessment that combines automation and AI tools to decompose the attack surface while simulating a multi-stage attack and kill chain.
Five features of IoT penetration testing are listed below.
IoT penetration testing is performed by gathering information and conducting reconnaissance of the entire IoT ecosystem, followed by vulnerability scanning, exploitation, and post-exploitation analysis. Pentesters generate a detailed report with remediation suggestions.
Listed below are the 10 steps to perform IoT penetration testing.
IoT pentesting experts define a clear testing scope by specifying which systems, devices, and communication layers are used during testing. They identify in-scope IoT devices, out-of-scope gateways, mobile apps, communication protocols, and cloud platforms. They perform fine-tuned authorised attack vectors such as hardware, network, RF, and firmware. Pentesters obtain written consent and authorisation from the client before starting IoT penetration testing. Rules of engagement and safety constraints are documented at this step to prevent physical damage to devices, data loss, and service disruptions.
The IoT pentesting team considers safety rules alongside regulatory and legal requirements to ensure compliance when defining the IoT pentesting scope. The team obtains approval of the scope document, which is well aligned with the business’s security objectives and meets the business’s regulatory needs.
IoT pentesting experts follow structured threat modelling frameworks and security standards (OWASP IoT Top 10, ISO 27001, IEC 62443) during this phase.
The IoT pentesting team begins mapping IoT assets after defining the testing scope and obtaining the client’s legal permission.
Mapping IoT assets and topology refers to creating a complete inventory of the IoT ecosystem, which comprises gateways, networks, cloud services, user-facing apps, sensors, and APIs. Pentesters identify and document all connected IoT assets, communication protocols, authentication points, and trust boundaries. They visualise how data flows between all these IoT components. They create a detailed asset inventory and topology diagram highlighting device relationships, exposure points, and dependencies.
Pentesters uncover shadow IoT devices, pinpoint high-risk paths, and get a structural foundation for targeted vulnerability analysis. Common tools used for assets and topology mapping are Nmap, Netdisco, Masscan, and network visualisation platforms.
Pentesters start enumerating passive Radio Frequency (RF) and network interfaces after getting a clear visual of IoT assets and communication paths.
Enumerating passive RF and network interfaces refers to collecting information about identifying all wireless and network-based communication channels used by IoT devices without actively exploiting them. Pentesters examine real-world behaviour with minimal disruption through enumeration. IoT pentesters passively monitor LoRa, ZWave, Bluetooth, WiFi, Zigbee, and other RF signals. They identify open ports, services, and broadcast communication. They obtain a list of exposed protected interfaces, packet capture files, and protocol inventories from this monitoring.
The IoT pentesting team detects unauthorised access to RF points, protocol misconfiguration, and insecure communication that attackers could exploit at this stage. The IoT pentesting team relies on passive enumeration tools such as tcpdump, Kismet, and Wireshark, as well as network reconnaissance utilities.
The pentesting team starts firmware analysis to uncover embedded software vulnerabilities after identifying exposed network and wireless interfaces.
Firmware acquisition and static or binary analysis refer to the examination of IoT devices’ internal software to discover security weaknesses without code execution. The IoT pentester obtains firmware data from vendor update portals, over-the-air (OTA) mechanisms, or direct extraction from hardware, then unpacks it to analyse file systems, binaries, and configuration files. They use static analysis to uncover hardcoded credentials, cryptographic keys, logical flaws, insecure services, and outdated libraries embedded within the firmware.
The IoT pentesting team obtains vulnerability insight, evidence of insecure design or implementation, alongside extracted firmware components during this phase. Static firmware analysis identifies critical vulnerabilities that usually persist across deployments and can lead to long-term compromise if attackers exploit them.
IoT pentesters use tools such as Binwalk, IDA Pro, Ghidra, radare2, and the Firmware Tool Analysis Kit. They start probing into the hardware interface after discovering firmware-level weaknesses.
Probing hardware interfaces and debugging embedded systems involves assessing exposed debug and communication ports that may allow an attacker to bypass software controls. IoT penetration testing experts identify hardware interfaces such as UART, JTAG, SWD, SPI, or I²C, access device consoles, and then test them for authentication bypass or privilege escalation.
This hardware penetration testing provides an assessment of the feasibility of physical attacks, as well as evidence of memory dumps and console access. Physical access to hardware interfaces usually leads to full device compromise, especially when protection is weak. Therefore, pentesters probe hardware interfaces and debug embedded systems to address threats such as device theft, tampering, and supply chain risks. Common tools used for hardware analysis include logic analyser, JTAGulator, Bus Pirate, OpenOCD, and USBtoUART adapters.
The IoT pentesting team continues with protocol testing after evaluating physical access risk factors.
Testing IoT protocols and radio communications involves an active security assessment of the data transmission channels identified during passive enumeration. IoT pentesting professionals analyse protocol implementations such as MQTT, Bluetooth Low Energy, LoRaWAN, CoAP, HTTP/HTTPS, WebSockets, Zigbee, and proprietary RF protocols. These protocols are tested for common weaknesses such as misconfigurations, weak encryption, improper authentication, and replay attacks. IoT pentesters validate protocol-level vulnerabilities, insecure cipher usage, and exploitation paths affecting data confidentiality in this step.
Protocol and Radio communication probing help pentesters identify compromised channels that an attacker may intercept, manipulate, or inject malicious commands into IoT systems. The pentesting team uses tools like Bettercap, Scapy, Burp Suite, MQTT Explorer, and RF testing platforms for testing protocols.
IoT penetration testers shift their focus to device authentication and authorisation assessments once communication channels have been analysed.
IoT pentesters evaluate how IoT devices authenticate services, users, and other devices and how authorisation and session handling are used across cloud layers, mobile apps, and devices. They review credential storage, certificate usage, role-based access controls, token handling, and session expiration mechanisms.
IoT pentesters discover vulnerabilities like privilege escalation paths, authentication bypasses, and weak session controls during this assessment. Poor identity and access management let attackers obtain unauthorised device control that enables data exposure and lateral movements across IoT ecosystems. The IoT pentesting team uses tools like JWT analysis tools, OAuth testing utilities, Burp Suite, Postman, and custom API test scripts for evaluating device authentication and authorisation.
The IoT pentesting expert continues with OTA and supply chain testing after validating access controls in IoT ecosystems.
Verifying Over the Air (OTA) update mechanisms and supply chain integrity refers to checking that firmware updates cannot be tampered with, downgraded, or maliciously injected. IoT pentesters analyse third-party dependency trust, firmware signing, version control, rollback protections, and update delivery channels. Pentesting experts find vulnerabilities such as weak supply chain controls, insecure update processes, and missing signature validation, or weak.
Verification of the OTA update mechanism is important because attackers use compromised mechanisms to deploy persistent malware at scale in an IoT ecosystem. Common tools used for verification are CI/CD security validation techniques, Wireshark, Kismet, and Capsa.
The IoT pentesters shift their attention to the evaluation of Sensor data flow and Cloud/API integration, once firmware integrity is validated.
The IoT pentesting team assesses how sensor data is generated, processed, transmitted, stored, and exposed through cloud platforms and API. They analyse API authentication, data validation, rate limiting, encryption, logging, and error handling across cloud services. This analysis helps the pentesting team identify risks of improper data isolation, data leakage, API abuse, and insecure storage.
Pentesters evaluate these data flows to identify vulnerabilities that attackers can exploit. These sensor data flows are the primary target for attackers as they contain sensitive operational and personal information. Common tools used for sensor data flow analysis include Postman, Burp Suite, cloud security scanners, and API fuzzing tools.
The IoT pentesting team performs controlled exploitation to create a remediation roadmap after evaluating data flows.
The final stage of IoT penetration testing involves controlled exploitation of discovered vulnerabilities to determine whether an attacker can achieve persistence, maintain long-term control of IoT devices and backend systems while implanting backdoors. IoT pentesters use tools like custom exploit frameworks and Metasploit to exploit discovered vulnerabilities in the previous steps. They simulate attacks in a controlled environment to check the real-world impact of each vulnerability.
IoT pentesters document a comprehensive report after exploitation. This report includes all discovered vulnerabilities throughout the IoT pentesting process alongside their risk ratings and impact. They add proof of concept, prioritised remediation steps, and business impact in the report to improve IoT ecosystem security posture.
IoT Penetration Testing Tools are specialised software and hardware utilities designed to identify, exploit, and validate security vulnerabilities (insecure network, weak password) in the IoT ecosystem.
Ten tools used to perform IoT penetration testing are listed below.
The cost to perform IoT penetration testing typically ranges between £6,000 and £60,000+. A simple pentest on a single IoT device costs around £6,000–£9,000, while the cost of testing multiple devices is somewhere between £12,000–£25,000. IoT penetration testing cost for large environments like industrial systems or healthcare IoT is more than £50,000 to £60,000+.
The factors affecting the cost of IoT penetration testing include scope and number of IoT devices; the depth of assessment (firmware reverse engineering, RF analysis); the complexity of firmware/hardware design; and the communication protocols and RF technologies in use (MQTT, CoAP, Zigbee). Additional factors contributing to the overall cost of IoT penetration testing are compliance and regulatory obligations, remediation support, and physical access requirements (device teardown, onsite testing).
It takes 2 to 10 weeks to perform IoT penetration testing. Simple IOT device testing takes 2 to 3 weeks, while complex IoT device testing usually requires 6 weeks. Penetration testing for a single component, like firmware or a mobile app, takes less than 2 weeks. Full IoT ecosystem penetration requires more than 8 weeks.
Three main factors affecting the time requirement for IoT penetration testing include the number of IoT devices, the complexity of the overall IoT architecture, and the depth of testing required. Basic assessment focuses on network exposure or cloud security takes 1 to 2 weeks, while comprehensive testing involving static/dynamic analysis, firewall extraction, hardware interface proving, RF/protocol testing, and controlled exploitation takes 8 to 10 weeks. Factors that increase the timeline for conducting IoT penetration testing include the need to test multiple communication technologies, compliance requirements, the use of custom firmware, physical access to devices, retesting, and remediation validation.
IoT penetration testing helps organisations identify and fix vulnerabilities, maintain regulatory compliance, build customer trust and improve the incident response of their IoT ecosystem.
Eight benefits of IoT penetration testing for organisations are listed below.
IoT devices should be penetrated at least annually or after significant changes to IoT systems. Regular, on-time pentesting helps keep IoT devices more secure by enabling organisations to proactively identify vulnerabilities and adjust security controls as devices evolve.
Organisations should plan IoT pentests at regular intervals to prevent backdoor disks, reduce attack surface, maintain strong authentication and data protection, while validating secure update mechanisms. This regular pentesting makes IoT devices more resilient while reducing the probability of large-scale compromise over time.
IoT devices are physical objects embedded with software, sensors, connectivity, and processing capabilities that let them collect, send, and receive data over the internet or private networks without continuous human intervention. It is important to secure IoT devices because any compromise of such devices leads to sensitive personal and operational data exposure, disrupts essential services, and enables unauthorised remote control. Insecure IoT devices serve as entry points into larger networks, causing regulatory violations, large-scale breaches, and significant reputation and financial damage for organisations, customers, and stakeholders.
IoT security risks are potential threats and vulnerabilities arising from weaknesses in connected devices, communication channels, hardware interfaces, firmware, and supporting cloud or API infrastructure.
Listed below are the five most common IoT security risks.
Listed below are five ways to make your IoT devices secure.
IoT penetration testing plays a major role in maintaining the safety and security of IoT devices by proactively identifying vulnerabilities before attackers can exploit them. IT helps organisations validate real-world attack scenarios, ensure compliance and maintain trust and long-term resilience in IoT ecosystems.
Nine best practices for performing IoT penetration testing are listed below.