Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Teknologi Internet of Things

Kerentanan Keamanan Perangkat Keras yang Harus Diketahui Insinyur

Mengapa para insinyur harus peduli dengan keamanan perangkat keras? Karena mereka dapat membantu mencegah kerentanan melalui desain!

Mengapa para insinyur harus peduli dengan keamanan perangkat keras? Karena mereka dapat membantu mencegah kerentanan melalui desain!

Insinyur secara tradisional tidak terlalu suka berbicara tentang masalah keamanan. Namun, ini tidak meniadakan betapa pentingnya bagi para insinyur untuk mengetahui tentang kriptografi sehingga mereka dapat mengatasinya dalam desain mereka di masa depan.

Sejauh ini, kita telah berbicara tentang pengantar (singkat) insinyur untuk cyptography, pertukaran Diffie-Hellman, dan cara kerja ECC (eliptic-curve cryptography).

Sekarang saatnya mempelajari cara peretas memecahkan kriptografi, sehingga Anda dapat memulai perjalanan panjang untuk melindungi desain Anda dari serangan umum.

Mengapa Teknisi Listrik Harus Peduli Keamanan

Jika Anda bertanggung jawab untuk menyediakan perangkat yang aman ke tingkat perusahaan atau desain yang kritis terhadap keselamatan, Anda harus mendiskusikan desain Anda dengan vendor chip dan/atau peneliti keamanan Anda di setiap tahap proses desain. Perusahaan seperti Microchip, SiLabs, WolfSSL, dll. memiliki staf teknisi yang dapat membantu Anda dengan desain dan mendidik Anda tentang keamanan.

Lagi pula, tidak ada sistem yang 100% aman.

“Tidak pernah ada kuda yang tidak bisa ditunggangi. Tidak pernah ada pengendara yang tidak bisa dilempar.”

Peneliti keamanan memainkan permainan kucing dan tikus seumur hidup dengan peretas. Berkali-kali, enkripsi "tidak dapat dipecahkan" telah dilanggar. Apakah pesan Anda tetap terenkripsi atau tidak tergantung pada pemilihan bagian, seberapa baik Anda mendesain sirkuit Anda, seberapa baik Anda menerapkan kode Anda, dan apakah penyerang Anda cukup termotivasi dan diperlengkapi untuk mengalahkan desain Anda. Tugas Anda sebagai insinyur adalah melakukan semua yang Anda bisa untuk melindungi kunci pribadi Anda.

Anda mungkin menyadari bahwa hampir tidak ada yang dapat Anda lakukan untuk melindungi kunci pribadi Anda dari negara-bangsa. Sumber daya yang dapat dibawa oleh berbagai lembaga pemerintah untuk melawan target elektronik dan manusia sangat signifikan dan luar biasa. Bahkan jika mata-mata tidak dapat mengambil kunci pribadi dari perangkat, mereka selalu dapat meretas komputer yang memprogram perangkat, menyusup ke pabrik tempat IC dibuat, membahayakan karyawan...

Untungnya, Anda tidak perlu khawatir tentang negara-bangsa yang meretas perangkat Anda. Un untungnya, itu biasanya urusan yang jauh lebih sederhana daripada yang ingin kita percayai. Seorang remaja dengan perangkat keras senilai sekitar $250 dan akses ke video pelatihan YouTube dapat mengeluarkan kunci pribadi dari mikrokontroler di sore hari. Dan pemrogram jahat dapat mencuri data hanya dalam beberapa menit.

Agar siap untuk desain yang aman, penting untuk memahami ancaman yang ada. Berikut adalah tampilan tingkat tinggi dari beberapa kerentanan keamanan berbasis perangkat keras yang terkenal—dan apa yang mungkin dapat Anda lakukan untuk menguranginya.

Contoh Masalah Keamanan Sistem Tertanam

Mari kita lihat beberapa contoh kerentanan perangkat keras utama dan diskusikan beberapa tip untuk desain yang lebih aman.

Serangan Saluran Samping Elektromagnetik

Para peneliti telah mengetahui tentang serangan saluran samping elektromagnetik selama beberapa dekade. Setiap kali sakelar mekanis atau transistor berubah status, gelombang elektromagnetik merambat sepanjang dan keluar dari konduktor. Jika gelombang elektromagnetik itu dicegat oleh peretas, mereka sering dapat merekonstruksi data yang digunakan untuk membuat gelombang. Lihat Van Eck Phreaking, Tempest, atau video di bawah untuk mempelajari lebih lanjut.

Mengurangi Serangan Saluran Samping Elektromagnetik

Gunakan praktik terbaik industri saat merancang dan meletakkan PCB Anda.

  1. Tempatkan kapasitor decoupling sedekat mungkin dengan pin daya.
  2. Gunakan ground plane yang kokoh di bawah IC Anda.
  3. Gunakan pelindung EMI di atas IC Anda.

Itu tidak akan menghentikan seseorang dengan akses fisik ke perangkat Anda, tetapi itu akan membuat pekerjaan mereka jauh lebih sulit.

Serangan Analisis Daya Diferensial

Untuk memecahkan enkripsi pada sebagian besar mikrokontroler, yang Anda butuhkan hanyalah resistor $0,005, konverter analog-ke-digital, dan pemahaman dasar bahasa pemrograman Python.

Ketika gerbang digital di mikrokontroler beralih, mereka mengganggu rel listrik yang mengarah ke mikrokontroler. Peretas telah belajar menempatkan resistor 50 dan konverter analog-ke-digital melintasi rel listrik untuk merekam perubahan kecil arus yang terjadi selama operasi mikrokontroler.

Mikrokontroler diinterogasi melalui program SPI/antarmuka debug sementara data pengukuran daya diferensial direkam. Kemudian, data dianalisis, dan puncak dan pulsa digunakan untuk mengkorelasikan dan sidik jari tindakan mikrokontroler individu.

Melalui analisis yang cermat, peretas dapat mengeluarkan hampir semua informasi yang mereka inginkan dari mikrokontroler.

Mengurangi Serangan Analisis Daya Diferensial

Peretasan ini mudah dilakukan dengan kode kriptografi berbasis perangkat lunak, jadi gunakan akselerator perangkat keras kripto yang menerapkan penanggulangan DPA bila memungkinkan. Seperti sebelumnya, gunakan praktik terbaik industri dalam desain dan tata letak. Pilih jejak BGA dan jalankan rel daya Anda di lapisan tengah PCB Anda dan, jika Anda benar-benar khawatir, sematkan IC Anda di lapisan tengah PCB Anda dengan bidang tembaga di atas dan di bawah dan gunakan melalui jahitan di sekelilingnya. Lagi pula, jika orang jahat tidak dapat mencapai power rail, mereka tidak dapat dengan mudah melakukan analisis daya diferensial.

Atau, gunakan inti keamanan berbasis perangkat keras, karena mereka tidak rentan terhadap peretasan ini (mereka masih dapat diretas). Para insinyur mengetahui tentang kerentanan ini dan merancangnya dengan berbagai cara. Sebagai contoh, Silicon Labs Wireless Gecko Series 2 memiliki inti keamanan terintegrasi dan Microchip membuat rangkaian IC keamanan, termasuk modul kriptografi yang dapat Anda gunakan dalam desain Anda.

Pria di Tengah Serangan

Ada beberapa serangan Man-in-the-Middle. Makalah ini menunjukkan "Serangan Kurva Tidak Valid". Contoh hipotetis sederhana berikut ini hanyalah satu kemungkinan vektor serangan.

Saat Anda memutar musik dari komputer melalui speaker Bluetooth bernama "MyTunes", data langsung berpindah dari komputer ke speaker. Tetapi ketika Anda menghubungkan komputer Anda ke situs web eksternal bernama "AllAboutCircuits.com," Anda mungkin atau mungkin tidak menyadari bahwa komputer Anda tidak langsung terhubung langsung ke komputer lain yang disebut "AllAboutCircuits".

Hal pertama yang terjadi adalah komputer Anda menghubungi router Anda, dan router Anda menghubungi Domain Name Server (DNS) yang menerjemahkan nama AllAboutCircuits.com menjadi alamat IPV4 atau IPV6 (104.20.234.39). Ini biasanya terjadi dengan cepat dan data disimpan secara lokal untuk mempercepat penjelajahan di masa mendatang.

Entri DNS untuk AllAboutCircuits.com pada PC Windows 10.

Data kemudian memantul dari komputer ke router ke gateway untuk beralih ke dll... ke komputer yang alamat IP-nya cocok dengan 104.20.234.39. Jumlah hop bervariasi dari situs web ke situs web dan lokasi ke lokasi. Di setiap lokasi, jika komputer tidak diamankan, data dapat dicegat, lalu lintas dialihkan, atau yang lainnya sama sekali.

Jejak rute ini menunjukkan semua "lompatan" dari laptop saya ke situs web AllAboutCircuits.com

Pengaturan Serangan Man-in-the-Middle

Ada berbagai cara serangan man-in-the-middle mungkin terjadi. Pertimbangkan hanya satu jenis serangan ini.

Gambar "Bob" dari ThisPersonDoesNotExist.com

Bob membeli router nirkabel baru yang mewah. Dia membawa pulang mainannya dan menghubungkannya ke jaringan rumahnya. Dan hanya untuk memastikan dia tidak menghabiskan terlalu banyak uang untuk mainan barunya, dia memeriksa saldo rekening banknya di komputernya.

Gambar "Mallory" dari ThisPersonDoesNotExist.com

Mallory adalah seorang hacker. Dia menggunakan situs web shodan.io (atau yang serupa) untuk mengidentifikasi router, webcam, Raspberry Pi, atau perangkat IoT yang ada di internet, melihat router baru Bob, menyeringai dan menggosok tangannya dengan mengancam karena dia sekarang juga memiliki mainan baru.

Mallory menggunakan nama pengguna/kata sandi default (admin/default, admin/admin, admin/kata sandi, dll.) yang disertakan dengan semua perangkat. Sebagian besar produsen menggunakan nama pengguna/kata sandi yang sama untuk semua perangkat dan kebanyakan orang tidak repot-repot mengubahnya, jadi tidak perlu banyak waktu untuk menemukan satu atau lebih titik masuk. Mallory cukup masuk ke perangkat, mem-flash-nya dengan firmware-nya sendiri, dan mengubah server DNS menjadi server DNS pilihannya.

Dia bisa melakukan ini karena:

Sekarang Mallory memiliki akses ke jaringan pribadi. Dia bukan lagi peretas di web, dia sekarang berada di dalam jaringan rumah pribadi Bob, dan dapat melihat data bergerak bolak-balik. Data dienkripsi, jadi dia belum tentu bisa melihat apa itu—tetapi dia bisa melihat bahwa Bob cukup sering mengunjungi dan masuk ke ThisBankDoesNotExist.com (123.123.123.123), jadi dia mulai menyiapkan server dan halaman web untuk Bob yang merupakan salinan sempurna piksel dari halaman login ThisBankDoesNotExist.com.

Kemudian Mallory mengubah entri DNS Bob untuk ThisBankDoesNotExist.com menjadi (123.45.67.89)

Serangan

Bob menavigasi ke ThisBankDoesNotExist.com. Dia tidak repot-repot mengetik https:// sebelum nama domain, dan melalui peretasan Mallory, dia tidak terhubung ke komputer yang benar, dia ada di http://ThisBankDoesNotExist.com -- jadi tidak ada peringatan sertifikat yang muncul.

Bob tidak tahu semua ini; dia melihat salinan sempurna piksel dan mengetik nama pengguna/kata sandinya di komputer Mallory, dan seperti yang dia harapkan, informasi akun muncul.

Kecuali sekarang, Mallory dapat melihat semuanya—setiap transaksi, setiap pemegang akun resmi, dan bahkan nama pengguna/sandi super rumit Bob (bob/letmein) yang dia gunakan untuk melindungi informasi akunnya.

Akibat Peretasan

Hampir semua situs web menggunakan enkripsi ujung ke ujung. Itu berarti data hanya dapat didekripsi di komputer Bob dan komputer Bank. Mallory telah memperkenalkan titik akhir baru. Lalu lintas Bob dikodekan di komputernya dan diterjemahkan di komputer Mallory. Kemudian data tersebut di-encode ulang di komputer Mallory dan didecode di komputer Bank. Ini masih muncul sebagai enkripsi ujung ke ujung untuk Bob dan Bank.

Tapi ada titik akhir perantara—komputer Mallory. Mallory dapat melakukan trik yang sama untuk menemukan catatan rumah sakit Bob, email, dll.

Cara Mengamankan Sistem Tertanam

Cara termudah untuk menjaga keamanan perangkat Anda adalah dengan membuat produk Anda sulit diretas.

Jika mereka menghadapi perlawanan, ada kemungkinan hacker akan pindah ke target berikutnya. Di sisi lain, sulit bagi individu atau perusahaan kecil untuk mencegah peretasan negara-bangsa. Untungnya, banyak "peretas" hanyalah "anak-anak skrip" yang tidak memiliki keahlian untuk mengembangkan serangan baru dan memecahkan masalah ketika itu terjadi. Jika tidak ada video YouTube dan GitHub untuk perangkat Anda, mereka tidak akan tahu apa yang harus dilakukan dan mereka akan melanjutkan.

Juga, bicarakan dengan vendor microchip Anda untuk mempelajari lebih lanjut tentang mengamankan perangkat Anda. Baik Microchip dan Silicon Labs ditampilkan secara menonjol dalam rangkaian artikel ini karena kedua perusahaan menyediakan insinyur untuk wawancara untuk artikel ini.

Jika Anda merancang perangkat IoT, ada beberapa hal yang dapat Anda lakukan untuk mengurangi kemungkinan pelanggan Anda kehilangan nyawa karena praktik rekayasa dan pemrograman Anda yang lalai.

Selain pemikiran yang disebutkan di atas, pertimbangkan langkah-langkah tambahan berikut:

  1. Desain dengan mikrokontroler dan rantai alat yang mendukung autentikasi firmware (boot aman AKA). Hanya firmware digital yang ditandatangani dengan benar yang akan berjalan di mikrokontroler, dan hanya Anda yang tahu kunci pribadinya. Silicon Labs dan Microchip (dan vendor lainnya) memiliki mikrokontroler yang mendukung boot aman.
  2. Gunakan mikrokontroler yang memiliki fitur debug aman jika memungkinkan. Beberapa peretasan ini dimungkinkan karena peretas dapat menyuntikkan dan mengambil data dari mikrokontroler host dan menggunakannya untuk menentukan apa yang terjadi di dalam paket mikrokontroler. Jika data keluar diacak atau tidak sama sekali, mereka akan frustrasi dan melanjutkan. Sekali lagi, Silicon Labs dan Microchip (dan vendor lainnya) memiliki kemampuan ini.
  3. Baca tentang keamanan , ajukan pertanyaan kepada pakar, dan kirimkan desain Anda ke teknisi aplikasi di pabrikan perangkat Anda untuk menerima masukan tentang skema keamanan yang Anda usulkan, tata letak papan, dll.
  4. Gunakan teknik anti-gangguan untuk menghapus kunci pribadi Anda dari memori jika perangkat dirusak.
    • TE Connectivity membuat lembaran film piezo yang dapat membungkus seluruh PCB Anda. Jika lembaran terpotong, terganggu, meleleh, dll., maka akan menghasilkan tegangan untuk menunjukkan kondisi rusak.
    • Gunakan sensor kapasitif atau induktif (seperti yang berasal dari TI) untuk mendeteksi saat enklosur proyek Anda telah dibuka, atau sensor efek Hall untuk mendeteksi saat sekrup casing diputar.
  5. Asumsikan bahwa pada saat perangkat Anda berada di tangan pelanggan pertama, perangkat tersebut telah disusupi. Buat cetak biru keamanan proyek yang memungkinkan satu atau banyak perangkat individu disusupi tanpa memengaruhi keseluruhan proyek Anda.

Seri artikel ini hanyalah pengantar keamanan. Adalah tanggung jawab Anda sebagai seorang insinyur untuk membuat IoT aman bagi semua orang.


Teknologi Internet of Things

  1. IoT Dalam Perawatan Kesehatan:Yang Harus Anda Ketahui
  2. Menangani kerentanan keamanan IoT industri
  3. Keamanan IoT industri dibangun di atas perangkat keras
  4. Mencari ekosistem IoT terkelola yang berfungsi
  5. Tiga pertanyaan yang harus ditanyakan oleh operator jaringan tentang keamanan IoT
  6. Keamanan, bukan COVID-19, yang menantang penerapan komersial 5G
  7. Mengapa Keamanan Otomasi Industri Harus Menjadi Fokus yang Diperbarui
  8. 7 Pustaka React yang harus Anda ketahui
  9. Tiga hal yang harus dilakukan setiap produsen IoT untuk meningkatkan keamanan
  10. Dasar-dasar Desain Panel Kontrol