Book Image

IoT Penetration Testing Cookbook

By : Aaron Guzman, Aditya Gupta
Book Image

IoT Penetration Testing Cookbook

By: Aaron Guzman, Aditya Gupta

Overview of this book

IoT is an upcoming trend in the IT industry today; there are a lot of IoT devices on the market, but there is a minimal understanding of how to safeguard them. If you are a security enthusiast or pentester, this book will help you understand how to exploit and secure IoT devices. This book follows a recipe-based approach, giving you practical experience in securing upcoming smart devices. It starts with practical recipes on how to analyze IoT device architectures and identify vulnerabilities. Then, it focuses on enhancing your pentesting skill set, teaching you how to exploit a vulnerable IoT device, along with identifying vulnerabilities in IoT device firmware. Next, this book teaches you how to secure embedded devices and exploit smart devices with hardware techniques. Moving forward, this book reveals advanced hardware pentesting techniques, along with software-defined, radio-based IoT pentesting with Zigbee and Z-Wave. Finally, this book also covers how to use new and unique pentesting techniques for different IoT devices, along with smart devices connected to the cloud. By the end of this book, you will have a fair understanding of how to use different pentesting techniques to exploit and secure various IoT devices.
Table of Contents (19 chapters)
Title Page
About the Authors
About the Reviewers
Customer Feedback

JTAG debugging and exploitation

Now that we have covered various exploitation techniques on hardware devices, it is time to cover one of the most important methods to compromise a device-JTAG. We have already seen what JTAG is and what JTAG pins usually look like.

Getting ready

Let's get started with identifying the JTAG pinouts on our given target device. For this, we will use JTAGulator, which is a hardware tool built by Joe Grande to identify JTAG pinouts.

How to do it...

Once you have connected all the JTAGulator channels to the expected JTAG pinouts on the target device, additionally connecting the GND to GND.

  1. Launch the screen using the following code:
sudo screen /dev/ttyUSB0 115200 
  1. Then, you will be granted with a JTAGulator prompt, as shown in the following screenshot:
  1. The first thing that we will do here is set our target device's voltage, which in the current scenario is 3.3. To do this, simply type V followed by 3.3 as shown in the following screenshot:
  1. Once we have set the target voltage...