Membebaskan Wi‑Fi di ESP32 [Video]
(media.ccc.de)- ESP32 sangat umum digunakan, mungkin ribuan unit hanya di CCH, tetapi komponen intinya, Wi‑Fi stack, bersifat tertutup sehingga sulit dimodifikasi dan diaudit
- Sesi 38c3 membahas proses membuat Wi‑Fi stack open source, berangkat dari rekayasa balik periferal Wi‑Fi
- Tujuannya bukan sekadar implementasi pengganti, melainkan membuat perangkat lunak yang dapat menangani data sensitif bisa diverifikasi dan diperbaiki sendiri
- Jika stack baru ini mapan, ESP32 dapat berkembang melampaui SoC IoT biasa menjadi platform nirkabel murah untuk riset dan eksperimen
- Jika fiturnya cukup terbuka, pemanfaatan seperti alat pentesting, router mesh B.A.T.M.A.N., dan klien AirDrop menjadi mungkin
Alasan membuka Wi‑Fi stack tertutup
- Wi‑Fi stack ESP32 yang ada memang berfungsi, tetapi karena merupakan implementasi tertutup, sulit untuk memeriksa cara kerja internalnya atau memodifikasinya sesuai kebutuhan
- Tujuan utama Wi‑Fi stack open source adalah memungkinkan area yang berpotensi menangani data sensitif untuk dimodifikasi dan diaudit
- Di CCH mungkin ada ribuan ESP32, dan fakta bahwa semuanya menjalankan Wi‑Fi stack tertutup seperti ini memperkuat kesadaran akan masalah tersebut
Dari rekayasa balik hingga stack baru
- Proyek ini dimulai dari rekayasa balik Wi‑Fi stack proprietari milik ESP32
- Setelah itu berlanjut menjadi implementasi Wi‑Fi stack open source yang menangani langsung periferal Wi‑Fi ESP32
- Dalam proses ini turut dibahas Wi‑Fi, ESP32, rekayasa balik secara umum, dan cara mendekati proyek semacam ini
Pemanfaatan saat ESP32 terbuka
- Jika fiturnya terbuka sepenuhnya, ESP32 dapat mengambil peran yang lebih beragam sebagai alat riset dan SoC IoT
- Contoh pemanfaatan yang memungkinkan adalah sebagai berikut
- Alat pentesting
- Router mesh B.A.T.M.A.N.
- Klien AirDrop
Informasi sesi dan ketentuan publikasi
- Pembicaranya adalah Frostie314159 dan Jasper Devreker
- Ini adalah sesi berdurasi 38 menit di trek Hardware & Making 38c3, Saal 1, dengan tanggal 2024-12-27
- Video dan audio tersedia dalam format MP4, WebM, MP3, dan Opus
- Materi dipublikasikan dengan ketentuan
http://creativecommons.org/licenses/by/4.0
1 komentar
Komentar di Hacker News
Artikel terkait: https://zeus.ugent.be/blog/23-24/open-source-esp32-wifi-mac/
Jika kompatibel, bantuan dan contoh yang sudah menumpuk di internet bisa langsung dimanfaatkan, dan biaya masuknya juga lebih rendah. Orang yang hanya ingin mengubah sedikit lapisan MAC pun bisa masuk dengan cara lama tanpa beban mempelajari API baru, lalu hanya menyentuh bagian yang diinginkan
Masih cukup aneh bahwa hanya Espressif yang berhasil memasukkan modem WiFi ke mikrokontroler yang lumayan bagus
ST masih tertinggal jauh di area seperti ini
Namun WiFi pada board RP2040 W tampak seperti modul eksternal. Sumber: https://esphome.io
Bisa dibeli satuan di mana-mana, dijual dalam berbagai board breakout dengan daya USB, port pemrograman, dan pin berlabel, serta dokumentasi, contoh, Arduino IDE, dan NodeMCU-nya juga lengkap. Arduino pada awalnya juga mirip, tetapi terlalu lama bertahan di chip AVR berperforma rendah, board yang bukan buatan Tiongkok mahal, dan tidak ada WiFi. Raspberry Pi Pico fiturnya bagus, tetapi pasokan awalnya sulit, sementara yang lain lebih mirip “chip tunggal” yang dibeli dari tempat seperti DigiKey, dengan ongkos kirim mahal, dokumentasi lebih dari 600 halaman, perlu lebih dari 300 halaman hanya untuk mengirim satu ping pertama, harus menyolder ke board, dan biasanya perlu peralatan mahal juga untuk pemrograman
Saya belum sempat menonton videonya, jadi maaf kalau ini sudah dibahas, tetapi saya penasaran apakah sertifikasi nirkabel ESP32 terikat pada firmware black-box resmi
Kalau memakai firmware terbuka pada hardware yang sama, apakah harus dikirim ulang ke badan sertifikasi seperti FCC untuk diuji kesesuaiannya?
Saya tidak langsung ingat pasal CFR-nya, tetapi FCC secara eksplisit mengizinkan siapa pun menggunakan perangkat tak tersertifikasi dalam jumlah kecil. Jika perangkat itu melanggar aturan lain, tetap saja pelanggaran, tetapi fakta bahwa hardware atau software-nya dimodifikasi tidak dengan sendirinya dilarang
Keberadaan firmware hampir tidak diakui. Ada salah satu alasannya. Peralatan nirkabel tak berlisensi yang tersertifikasi seperti WiFi diharapkan tahan terhadap modifikasi demi kepentingan publik. Karena itu, ketika FCC membahas persyaratan sertifikasi router WiFi, mereka sempat mempertimbangkan untuk memperluasnya sampai ke software, misalnya mewajibkan secure boot pada semua router WiFi sampah yang rentan, tetapi itu ide mengerikan sehingga dibatalkan. Untuk saat ini, selama firmware hasilnya tidak jelas-jelas menghasilkan emisi di luar spesifikasi, saya menganggapnya kira-kira setengah legal atau setengah ilegal. Saya bukan pengacara
https://github.com/esp32-open-mac
Dulu ada ide provisioning kata sandi WiFi. SSID dan kata sandi bisa dikirim dengan memodulasi panjang paket
Perangkat IoT baru tentu tidak bisa mendekripsi paketnya, tetapi bisa mengamati panjangnya. Saya juga membuat contoh implementasi untuk Linux, tetapi tidak menemukan satu pun chip IoT yang menyediakan akses PHY tingkat rendah yang cukup untuk melakukan ini
Pertanyaan sampingan: salah satu pembicara memublikasikan nomor DECT. Apakah itu berarti masih ada orang yang membawa-bawa telepon tua untuk dipakai di konferensi teknologi?
Ada juga dasbor status yang menampilkan metrik selama acara
[1] https://events.ccc.de/2024/12/22/38c3-poc-isdn-version/
[2] https://dashboard.eventphone.de/d/de7sgxz63vzeoe/38c3?orgId=...
Terutama di area berkemah, cakupan WiFi bisa tidak menentu, jadi meskipun berjalan ke gedung toilet atau tempat parkir, panggilan tetap bisa diterima. Karena memakai frekuensinya sendiri, itu juga tidak membuat band yang dipakai WiFi, Bluetooth, dan Zigbee makin ramai. Bisa saja memakai semacam aplikasi, tetapi DECT sangat andal dan jangkauannya jauh lebih baik daripada WiFi. Saya punya perangkat Siemens yang bagus kira-kira seukuran Nokia 8210, jadi tidak perlu membawa-bawa benda seperti batu bata. Sekarang baterainya mungkin hampir mati, tetapi seperti baterai zaman itu, baterainya bisa diganti
Di dalam rumah pribadi di Jerman, DECT masih sangat populer
Jauh lebih tangguh daripada VoIP di atas WiFi
Karena DECT hadir lebih dulu, istilah itu sudah melekat seperti sebutan umum untuk jaringan telepon internal
Saya penasaran seberapa dalam level peretasannya. Pengiriman frame terlihat seperti sekadar mengatur beberapa register lalu menunggu interrupt, jadi saya menduga ini sebenarnya berbicara dengan lapisan firmware lain yang melakukan pekerjaan sesungguhnya
Ini mengingatkan saya pada board Raspberry Pi Pico. Ada SoC utama RP2040, tetapi WiFi berada pada modul WiFi/BT terpisah (CYW43xx) yang punya core Arm sendiri. Antarmuka register eksternal modul WiFi juga tidak didokumentasikan secara terbuka, tetapi ada driver open source (https://github.com/georgerobotics/cyw43-driver/tree/cf924bb0...) sehingga spesifikasinya bisa disimpulkan. Namun pada akhirnya driver ini juga berkomunikasi dengan software yang berjalan di core Arm internal modul, dan kode itu disediakan pabrikan sebagai blob biner firmware raksasa. Blob itu benar-benar ada di dalam file header di direktori firmware pada repositori yang ditautkan. Saya penasaran bagaimana peretasan ESP32 kali ini dipetakan ke struktur tersebut
Saya terkesan karena para presenternya terlihat sangat muda. Menarik melihat orang pada usia semuda itu sudah membangun pengetahuan teknis setingkat itu
Catur adalah contoh sempurna. Dulu banyak pengetahuan ada di buku, dan sering kali bukunya berbahasa asing. Sekarang semuanya terbuka, dan begitu mencapai level tertentu, mereka bisa dengan mudah bermain melawan lawan peringkat 100 besar, sehingga laju perkembangannya lebih cepat
Satu langkah lebih dekat ke library MicroPython yang mendukung mode promiscuous
Tonton tanpa mengunduh: https://media.ccc.de/v/38c3-liberating-wi-fi-on-the-esp32/pl...