Pendahuluan
Perangkat Internet of Things (IoT) saat ini digunakan hampir di semua bidang kehidupan. Mulai dari kamera CCTV, smart TV, router, smart home, hingga perangkat industri modern semuanya terhubung ke internet. Semakin banyak perangkat IoT digunakan, maka semakin besar pula risiko keamanan yang muncul.
Banyak perangkat IoT dibuat dengan fokus pada fungsi dan harga murah, tetapi sering mengabaikan aspek keamanan. Akibatnya, perangkat tersebut menjadi target menarik bagi peneliti keamanan maupun hacker.
Salah satu teknik yang sering digunakan dalam penetration testing IoT adalah hardware hacking. Teknik ini dilakukan dengan cara berinteraksi langsung dengan perangkat keras untuk mendapatkan akses ke sistem.
Dalam artikel ini kita akan membahas beberapa interface hardware yang paling sering digunakan dalam pentesting IoT, yaitu:
- UART
- JTAG
- I2C
- SPI
Artikel ini ditulis dengan bahasa sederhana agar mudah dipahami oleh pemula yang ingin belajar keamanan perangkat embedded dan IoT.
Memahami Arsitektur Perangkat IoT
Sebelum melakukan hardware hacking, kita perlu memahami struktur dasar perangkat IoT.
Komponen Utama IoT
Biasanya sebuah perangkat IoT memiliki beberapa komponen berikut:
1. Microcontroller (MCU)
MCU adalah otak dari perangkat IoT. Komponen ini menjalankan program utama dan mengontrol semua fungsi perangkat.
Contoh:
- ESP32
- STM32
- ATmega
- Raspberry Pi Pico
2. Flash Memory
Digunakan untuk menyimpan firmware atau sistem operasi perangkat.
3. EEPROM
Menyimpan konfigurasi seperti password, SSID WiFi, atau data kecil lainnya.
4. Sensor
Digunakan untuk membaca lingkungan sekitar.
Contoh:
- Sensor suhu
- Sensor gerak
- Sensor cahaya
5. Modul Komunikasi
Digunakan agar perangkat bisa terhubung ke jaringan.
Contoh:
- WiFi
- Bluetooth
- ZigBee
- LoRa
Attack Surface pada IoT
Perangkat IoT memiliki banyak titik serangan.
Beberapa di antaranya:
- Web interface
- Firmware
- Port debugging
- API cloud
- Wireless communication
- Hardware interface
Dalam artikel ini kita fokus pada hardware interface.
Persiapan Lab Hardware Hacking
Sebelum mulai praktik, kita perlu menyiapkan beberapa alat.
Peralatan yang Dibutuhkan
USB to TTL Adapter
Digunakan untuk mengakses UART.
Logic Analyzer
Digunakan untuk membaca sinyal digital.
Bus Pirate
Alat multifungsi untuk komunikasi hardware.
Multimeter
Digunakan untuk mengukur tegangan dan mencari pin.
Solder dan Kabel Jumper
Digunakan untuk menghubungkan perangkat.
Raspberry Pi
Bisa digunakan sebagai alat bantu analisis.
Software Pendukung
Beberapa software yang sering digunakan:
| Software | Fungsi |
|---|---|
| PuTTY | Serial terminal |
| Minicom | Serial communication |
| OpenOCD | JTAG debugging |
| Flashrom | Dump firmware |
| Binwalk | Analisis firmware |
| Ghidra | Reverse engineering |
| Saleae Logic | Analisis sinyal |
Keselamatan dan Etika
Hardware hacking harus dilakukan secara legal.
Jangan melakukan pengujian pada perangkat yang bukan milik sendiri tanpa izin.
Selain itu:
- Hindari short circuit
- Jangan memberikan tegangan berlebih
- Backup firmware sebelum eksperimen
- Gunakan anti-static protection jika memungkinkan
Pengenalan UART
Apa Itu UART?
UART (Universal Asynchronous Receiver Transmitter) adalah komunikasi serial yang sangat umum digunakan pada perangkat embedded.
UART sering digunakan oleh developer untuk debugging.
Karena itu, UART menjadi target utama dalam hardware hacking.
Biasanya UART memiliki tiga pin utama:
- TX
- RX
- GND
Kadang juga terdapat pin VCC.
Cara Mencari Pin UART
Beberapa cara untuk menemukan pin UART:
1. Melihat PCB
Biasanya pin UART berada dekat processor.
Sering diberi label:
- TX
- RX
- GND
- J1
- JP1
2. Menggunakan Multimeter
Gunakan multimeter untuk mencari:
- Ground
- Tegangan
3. Menggunakan Logic Analyzer
Bisa digunakan untuk melihat aktivitas komunikasi serial.
Mengakses UART
Setelah pin ditemukan:
- Hubungkan TX perangkat ke RX adapter
- Hubungkan RX perangkat ke TX adapter
- Hubungkan GND
- Gunakan software seperti PuTTY atau Minicom
Baud rate umum:
- 9600
- 115200
Jika berhasil, kita bisa melihat boot log perangkat.
Eksploitasi UART
UART sering memberikan akses besar ke sistem.
Contoh eksploitasi:
1. Mendapatkan Shell Linux
Beberapa perangkat langsung memberikan akses shell.
2. Mengakses Bootloader
Kita bisa menghentikan proses boot.
Contoh bootloader:
- U-Boot
- CFE
3. Dump Firmware
Firmware bisa diekstrak melalui bootloader.
4. Reset Password
Beberapa perangkat memungkinkan bypass autentikasi.
Studi Kasus UART
Misalnya kita melakukan analisis pada router.
Saat booting melalui UART muncul informasi:
- Versi kernel
- Username
- Konfigurasi jaringan
Kadang bahkan terdapat hardcoded password.
Eksploitasi JTAG
Apa Itu JTAG?
JTAG adalah interface debugging hardware.
Developer menggunakan JTAG untuk:
- Debugging
- Flashing firmware
- Analisis memory
Karena memiliki akses tingkat rendah, JTAG sangat menarik dalam pentesting.
Struktur Pin JTAG
Pin umum JTAG:
- TDI
- TDO
- TCK
- TMS
- TRST
Kadang jumlah pin berbeda tergantung perangkat.
Mencari Port JTAG
Analisis PCB
Perhatikan pola pin di board.
Menggunakan JTAGulator
JTAGulator membantu mengidentifikasi pin otomatis.

Dump Firmware melalui JTAG
Setelah koneksi berhasil:
- Gunakan OpenOCD
- Hubungkan debugger
- Baca flash memory
- Simpan firmware
Firmware yang didapat kemudian bisa dianalisis.
Memory Analysis dengan JTAG
JTAG memungkinkan:
- Membaca RAM
- Menghentikan CPU
- Melihat register processor
- Analisis runtime
Teknik ini sangat berguna dalam reverse engineering.
Studi Kasus JTAG
Dalam beberapa kasus, peneliti berhasil:
- Mengambil firmware kamera CCTV
- Mendapatkan private key
- Menemukan credential admin
Analisis Bus I2C
Apa Itu I2C?
I2C adalah protokol komunikasi antar chip.
Biasanya digunakan untuk:
- Sensor
- EEPROM
- RTC
I2C menggunakan dua jalur:
- SDA
- SCL
Enumerasi Device I2C
Peneliti bisa melakukan scanning address untuk menemukan perangkat yang terhubung.
Contoh device:
- EEPROM
- Sensor suhu
- Sensor accelerometer
Sniffing Traffic I2C
Dengan logic analyzer, kita bisa membaca komunikasi data.
Data yang terlihat bisa berupa:
- Nilai sensor
- Konfigurasi
- Password
Eksploitasi I2C
Beberapa serangan yang umum:
1. Membaca EEPROM
EEPROM kadang menyimpan:
- Password
- Serial number
- Konfigurasi
2. Modifikasi Data
Konfigurasi perangkat bisa diubah.
3. Manipulasi Sensor
Data sensor palsu dapat dikirim ke sistem.
Studi Kasus I2C
Dalam pengujian perangkat smart home, peneliti berhasil membaca konfigurasi WiFi dari EEPROM melalui I2C.
Eksploitasi SPI
Apa Itu SPI?
SPI adalah protokol komunikasi cepat antar chip.
Biasanya digunakan untuk flash memory.
Pin utama SPI:
- MOSI
- MISO
- CLK
- CS
Identifikasi Flash SPI
Chip SPI flash biasanya berasal dari vendor:
- Winbond
- Macronix
- Gigadevice
Chip ini sering menyimpan firmware utama.
Dump Firmware SPI
Cara umum dump firmware:
- Gunakan SOIC clip
- Hubungkan ke programmer
- Gunakan flashrom
- Simpan hasil dump
Analisis Firmware
Firmware yang berhasil diekstrak bisa dianalisis menggunakan:
- Binwalk
- Strings
- Ghidra
Kita bisa menemukan:
- Hardcoded password
- API key
- Konfigurasi sistem
- File system Linux
Modifikasi Firmware
Dalam beberapa kasus, firmware bisa dimodifikasi.
Contoh:
- Menambahkan backdoor
- Mengubah konfigurasi
- Menghapus autentikasi
Setelah dimodifikasi, firmware dapat di-flash kembali.
Studi Kasus SPI
Banyak router rumahan dapat diekstrak firmwarenya menggunakan teknik SPI flash dumping.
Reverse Engineering Firmware IoT
Setelah firmware diperoleh, langkah berikutnya adalah reverse engineering.
Ekstraksi Firmware
Binwalk sering digunakan untuk mengekstrak isi firmware.
Kita bisa menemukan:
- BusyBox
- Linux filesystem
- Script startup
- Binary executable
Analisis Kerentanan
Beberapa vulnerability yang sering ditemukan:
- Hardcoded password
- Weak encryption
- Command injection
- Backdoor developer
Dynamic Analysis
Firmware juga bisa dijalankan menggunakan emulator seperti QEMU.
Tujuannya:
- Analisis runtime
- Testing vulnerability
- Monitoring network
Teknik Lanjutan IoT Hacking
Fault Injection
Teknik ini dilakukan dengan mengganggu sistem secara fisik.
Contoh:
- Voltage glitching
- Clock glitching
Tujuannya untuk bypass keamanan.
Side Channel Attack
Serangan ini memanfaatkan informasi sampingan.
Contoh:
- Konsumsi daya
- Waktu proses
- Sinyal elektromagnetik
Chip-Off Forensics
Pada teknik ini chip memory dilepas langsung dari board.
Kemudian data dibaca menggunakan programmer khusus.
Secure Boot Bypass
Beberapa peneliti mencoba bypass secure boot untuk menjalankan firmware modifikasi.
Defense dan Mitigasi
Agar perangkat IoT lebih aman, developer harus menerapkan beberapa proteksi.
1. Menonaktifkan UART dan JTAG
Interface debugging sebaiknya dinonaktifkan pada perangkat produksi.
2. Secure Boot
Firmware harus diverifikasi sebelum dijalankan.
3. Firmware Encryption
Firmware perlu dienkripsi agar sulit dianalisis.
4. Hardware Security Module
Gunakan secure element atau TPM.
5. Secure Coding
Hindari hardcoded credential dan vulnerability umum.
Tools Populer untuk IoT Pentesting
| Tools | Fungsi |
|---|---|
| Bus Pirate | Analisis komunikasi hardware |
| JTAGulator | Identifikasi JTAG/UART |
| Logic Analyzer | Membaca sinyal digital |
| OpenOCD | Debugging JTAG |
| Flashrom | Dump firmware |
| Binwalk | Ekstraksi firmware |
| Ghidra | Reverse engineering |
Tantangan Keamanan IoT
Keamanan IoT menjadi semakin penting karena:
- Jumlah perangkat terus meningkat
- Banyak perangkat tidak diupdate
- Firmware jarang mendapat patch
- Hardware murah sering mengabaikan keamanan
Selain itu, ancaman seperti botnet IoT dan supply chain attack semakin berkembang.
Kesimpulan
Hardware hacking merupakan bagian penting dalam penetration testing perangkat IoT.
Dengan memahami UART, JTAG, I2C, dan SPI, peneliti keamanan dapat:
- Menganalisis firmware
- Mengidentifikasi vulnerability
- Menguji keamanan perangkat embedded
Namun semua teknik ini harus dilakukan secara etis dan legal.
Bagi developer, memahami teknik hardware hacking juga penting agar dapat membangun perangkat IoT yang lebih aman.
Ke depan, keamanan hardware dan embedded system akan menjadi bidang yang semakin penting dalam dunia cybersecurity.
Referensi
- OWASP IoT Top 10
- Dokumentasi OpenOCD
- Dokumentasi Flashrom
- Dokumentasi Binwalk
- Embedded Linux Security
- Practical Hardware Pentesting
-
Research Paper IoT Security








