Aplikasi Voatz ‘Blockchain’ yang Digunakan dalam Pilihan Raya AS Mempunyai Banyak Masalah Keselamatan, kata Laporan

Voatz, syarikat yang berpangkalan di Massachusetts yang mengetengahkan aplikasi pengundian mudah alih yang diaktifkan dengan blockchain, telah mendapat kritikan masyarakat kerana kurangnya ketelusan, antara lain, terutama mengenai keselamatan data. Dan dengan ancaman gangguan pilihan raya, taruhannya setinggi sebelumnya.
Voatz telah digunakan dalam pilihan raya di Virginia Barat; Jackson County, Oregon; Umatilla County, Oregon; pilihan raya perbandaran di Utah County, Utah; begitu juga dalam pilihan raya larian dan pilihan raya perbandaran di Denver, Colorado.
Audit keselamatan awam oleh firma pihak ketiga yang terkenal yang telah diminta oleh pakar akhirnya di sini. Pada bulan Disember 2023, Voatz dan Tusk Philanthropies, yang membiayai sebahagian besar juruterbang pengundian mudah alih Voatz, mengikat firma keselamatan Trail of Bits untuk melakukan audit kotak putih yang komprehensif.
Walaupun Voatz gagal memberikan backend untuk menguji vektor serangan jahat secara langsung, Trail of Bits mempunyai akses ke semua kod sumber, termasuk pelayan teras, klien Android, klien iOS dan antara muka web pentadbir.
Laporan audit adalah komprehensif, dan merangkumi tinjauan keselamatan 122 halaman dan dokumen 78 halaman mengenai pertimbangan pemodelan ancaman. Inilah ikhtisar bahagian-bahagian utama yang cepat.
Voatz tidak memerlukan blockchain
Daya tarikan pengundian blockchain adalah sistem desentralisasi yang tidak memerlukan pengundi mempercayai sesiapa pun. Tetapi penggunaan blockchain Voatz sebenarnya tidak meluas ke pelanggan mudah alih. Sebagai gantinya, Voatz telah menggunakan suara untuk blockchain Hyperledger Fabric, yang digunakannya sebagai log audit – sesuatu yang mudah dilakukan dengan menggunakan pangkalan data dengan log audit.
Walaupun jurucakap Voatz mendakwa bahawa Hyperledger “menyediakan beberapa fungsi keselamatan seperti mendapatkan undi agregat, memungkinkan pengauditan pasca pilihan raya dan menyediakan rantai hak asuh untuk surat suara digital ketika mereka melintasi ekosistem,” tidak jelas bagaimana ia akan dilakukan, dan keupayaan ini tidak terbukti dalam laporan.
Kod Trail of Bits yang dilihat tidak menggunakan kod rantai khusus atau kontrak pintar. Sebenarnya, laporan itu berbunyi:
“Semua pengesahan data dan logik perniagaan dilaksanakan di luar rangkaian di pangkalan data Scala dari Voatz Core Server. Beberapa penemuan berisiko tinggi adalah hasil dari masalah pengesahan data dan kekeliruan timbalan di pelayan teras yang dapat membolehkan satu pemilih menyamar sebagai yang lain bahkan sebelum menyentuh blockchain. “
Oleh kerana pengundi tidak berhubung secara langsung dengan blockchain itu sendiri, mereka tidak dapat mengesahkan secara bebas bahawa undi tersebut menunjukkan maksud mereka. Tetapi sesiapa sahaja yang mempunyai akses pentadbiran ke pelayan belakang Voatz mempunyai kemampuan untuk “mendononimasikan suara, menolak suara, mengubah suara, dan membatalkan jalan audit.”
Laporan tersebut mendapati bahawa sistem Voatz tidak mempunyai mitigasi untuk menghilangkan nama pengundi berdasarkan masa pengundian mereka direkodkan di blockchain. Dalam satu kenyataan, jurucakap Voatz mengatakan ia mempunyai mixnet eksperimen yang berjalan di infrastruktur tepi yang digunakan untuk eksperimen tahap rangkaian, tetapi tanpa kod sumber, dan FAQ Voatz tuntutan bahawa “setelah diserahkan, semua maklumat tanpa nama, disalurkan melalui ‘mixnet’ dan diposkan ke blockchain.” Tetapi ini adalah dipanggil dipersoalkan dalam laporan MIT – dan sekarang sekali lagi dalam audit ini.
“Tampaknya tidak ada, atau tidak disebutkan, mixnet dalam kod yang diberikan kepada Trail of Bits,” kata audit tersebut. “Pelayan teras mempunyai keupayaan untuk menghapus nama semua lalu lintas, termasuk surat suara.”
Trail of Bits mengesahkan penemuan MIT – Voatz mempertikaikannya
Pada 13 Februari, para penyelidik MIT menerbitkan laporan yang disebutkan di atas, “Surat Suara Dipecah Sebelum Blockchain: Analisis Keselamatan Voatz, Aplikasi Pengundian Internet Pertama yang Digunakan dalam Pilihan Raya Persekutuan A.S.,” yang mana Voatz membalas dengan catatan blog pada hari yang sama untuk membantah apa yang disebutnya sebagai “laporan cacat,” yang membawa para penyelidik MIT jawatan Soalan Lazim dengan penjelasan.
Ternyata sanggahan Voatz ditulis tiga hari selepas Trail of Bits mengesahkan adanya kerentanan yang dijelaskan kepada MIT, setelah menerima laporan ringkasan isu-isu dari Jabatan Keselamatan Dalam Negeri Amerika Syarikat. Ini menunjukkan bahawa Voatz sedar bahawa laporan itu tepat sebelum secara terbuka mendedahkannya.
Audit juga mempertikaikan beberapa bantahan Voatz terhadap laporan penyelidik MIT. Voatz menyatakan bahawa aplikasi Android yang dianalisis berusia 27 versi, tetapi Trail of Bits menulis bahawa ia “tidak mengenal pasti perubahan yang berkaitan dengan keselamatan dalam pangkalan kod” antara versi aplikasi September 2023 yang digunakan oleh penyelidik MIT yang akan mempengaruhi tuntutan mereka secara substansial.
Voatz juga menghadapi masalah dengan para penyelidik mengembangkan pelayan palsu, menyebutnya sebagai “pendekatan cacat” yang “membatalkan tuntutan mengenai kemampuan mereka untuk mengorbankan sistem keseluruhan.” Voatz bahkan menulis bahawa amalan ini “menafikan tahap kredibiliti bagi pihak penyelidik.”
Tetapi Trail of Bits mendakwa bahawa “mengembangkan pelayan tiruan sekiranya menyambung ke pelayan pengeluaran dapat mengakibatkan tindakan undang-undang adalah praktik standard dalam penyelidikan kerentanan. Ini juga merupakan amalan standard dalam pengujian perisian. ” Selanjutnya, laporan itu menunjukkan bahawa penemuan itu tertumpu pada klien Android, tetapi tidak bergantung pada pengetahuan mendalam mengenai pelayan Voatz.
Jurucakap Voatz mengatakan Voatz “keberatan dengan metodologi dan pendekatan para penyelidik MIT,” dan bahawa terdapat “beberapa kesalahan dalam laporan tersebut.”
“Sekiranya metodologi kami salah, teorinya adalah bahawa kami akan membuat kesimpulan yang salah. Walau bagaimanapun, semua kelemahan yang kami dapati telah disahkan oleh kajian keselamatan mereka sendiri. Selain itu, nampaknya mereka tidak bertanding di antara mereka, “kata Michael Specter, salah seorang penyelidik MIT yang mengarang laporan tersebut.
Audit sebelumnya tidak menyeluruh
Walaupun Voatz menguji banyak audit keselamatan, ini adalah pertama kalinya penilaian kotak putih dilakukan, dengan pelayan teras dan backend dianalisis. Walaupun tidak semua audit terdahulu bersifat terbuka, Trail of Bits merangkum kesemuanya.
Satu tinjauan keselamatan sebelumnya adalah dijalankan pada bulan Ogos 2023 oleh NCC, sebuah organisasi bukan untung swasta yang tidak menggunakan sebarang pakar keselamatan teknikal. Audit lebih memfokus kepada kebolehgunaan dan bukannya keselamatan. Pada bulan Julai 2023, vendor tanpa nama melakukan audit kotak hitam terhadap pelanggan mudah alih Voatz.
Pada bulan Oktober 2023, TLDR Security, yang sekarang dikenal sebagai ShiftState, melakukan tinjauan kebersihan keselamatan yang luas yang merangkumi seni bina sistem, aliran kerja pengguna dan data dan perencanaan mitigasi ancaman, tetapi tidak mencari bug dalam sistem atau dalam aplikasi sebenarnya. ShiftState kemudian melakukan audit lain pada bulan Disember 2023, melihat sama ada sistem ini beroperasi sebagaimana yang dimaksudkan dan mengikuti amalan terbaik.
Walaupun Ketua Pegawai Eksekutif ShiftState Andre McGregor sebelum ini berkata bahawa Voatz “melakukannya dengan sangat baik,” ulasan Trail of Bits terhadap audit ShiftState menunjukkan masalah dengan pembalakan terhad, pelayan yang tidak dikendalikan dan penyelesaian perisian hasad anti-mudah alih Zimperium yang tidak diaktifkan semasa juruterbang.
Oleh kerana semua perlindungan anti-tamper Voatz untuk peranti mudah alih didasarkan pada Zimperium, tidak aktif bermaksud aplikasi itu mungkin dirusak secara sepele, kerana Voatz tidak memiliki perlindungan tambahan terhadap aplikasi berbahaya yang dapat mengakses maklumat sensitif.
Jurucakap Voatz mengatakan bahawa Zimperium tidak disatukan sepenuhnya sehingga 2023 dan beberapa penyelidik meminta penonaktifannya untuk tujuan ujian, yang mereka lakukan berdasarkan kes demi kes. “Trail of Bits tidak dapat mengesahkan secara independen bahawa pemeriksaan anti-tamper milik Zimperium secara eksplisit mengesahkan penyedia keselamatan Android,” laporan itu berbunyi, mencadangkan pemeriksaan tambahan sekiranya Zimperium pernah dilumpuhkan, sengaja atau tidak.
Audit akhir oleh DHS, yang dilakukan pada bulan Oktober 2023, hanya melihat sumber awan, bukan pada aplikasi – sama ada terdapat bukti penggodaman atau jika dapat dikesan jika ia berlaku.
Di luar batasan penilaian keselamatan sebelumnya yang telah disebutkan oleh Voatz tanpa diumumkan – seperti fakta bahawa tidak ada audit yang merangkumi kerentanan pelayan dan back-end – Laporan Trail of Bits menyatakan bahawa catatan dari penilaian keselamatan lain yang dilakukan adalah dokumen teknikal . Ini menimbulkan persoalan sama ada pegawai terpilih membuat keputusan berdasarkan dokumen yang tidak layak dibaca.
Voatz kelihatan tidak teratur
Penilaian Trail of Bits berlangsung seminggu lebih lama daripada yang dijadwalkan pada awalnya “kerana gabungan kelewatan dalam menerima kod dan aset, kerumitan dan ukuran sistem yang tidak dijangka, dan usaha pelaporan yang berkaitan.”
Trail of Bits tidak pernah menerima salinan kod yang berfungsi, melarang syarikat itu melakukan ujian langsung, yang bermaksud bahawa para penyelidik hampir keseluruhannya terbatas pada ujian statik, yang mengharuskan mereka membaca sejumlah besar kod. Menurut laporan itu, Voatz mempunyai begitu banyak kod sehingga “mewajibkan setiap jurutera menganalisis, rata-rata, hampir 3,000 baris kod murni di 35 fail setiap hari penilaian untuk mencapai liputan minimum.”
Walaupun Trail of Bits mendapat akses ke backend untuk ujian langsung sehari sebelum penilaian dijadualkan berakhir, – yang dikatakan oleh jurucakap Voatz disebabkan oleh audit serentak, kelewatan audit dan aktiviti selari, dan sejumlah platform ujian, firma keselamatan itu diminta untuk tidak menyerang atau mengubah kejadian tersebut dengan cara yang akan menolak perkhidmatan untuk audit bersamaan.
Voatz melakukan kesilapan pemula – dan nampaknya tidak serius mengenai pembaikan
Trail of Bits menggambarkan beberapa pepijat yang dapat menyebabkan suara diperhatikan, dirusak atau dinonimkan, atau yang boleh membahayakan integriti pilihan raya.
Di luar fakta bahawa pengundi tidak dapat mengesahkan secara bebas bahawa resit surat suara mereka sah atau bahawa undian dihitung dengan betul, seorang pekerja Voatz secara teorinya dapat memaksa pengguna untuk memilih dua kali, membolehkan mereka memilih dua kali atau mendua suara mereka tanpa pengetahuan mereka tentang latar . Selain itu, Voatz menggunakan PIN lapan digit untuk menyulitkan semua data tempatan – sesuatu yang boleh diretas dalam masa 15 minit.
Tambahan pula, laporan tersebut mendapati bahawa aplikasi tersebut tidak mempunyai kawalan keselamatan untuk mengelakkan peranti Android tanpa pengawasan terganggu. Kelayakan API sensitif disimpan di git repositori, yang bermaksud sesiapa sahaja di syarikat yang mempunyai akses ke kod – bahkan mungkin subkontraktor – boleh menggunakan atau menyalahgunakan kunci rahsia yang terdedah di repositori.
Pekerja Voatz dengan akses pentadbir dapat mencari surat suara pemilih tertentu. Voatz menggunakan protokol jabat tangan kriptografi ad hoc, yang umumnya tidak digalakkan – kerana kriptografi buatan sendiri terdedah kepada bug, dan lebih baik menggunakan skema penyulitan yang telah dikaji oleh penyelidik dan diuji di dunia nyata. SSL (Secure Sockets Layer) tidak dikonfigurasikan dengan cara yang benar-benar selamat, kehilangan ciri utama yang membantu klien mengenal pasti bila sijil TLS (Transport Layer Security) dicabut.
Dalam satu contoh, Voatz malah memotong dan menempelkan vektor kunci dan inisialisasi dari jawapan Stack Overflow. Memotong dan menampal kod umumnya tidak dianjurkan, bahkan dalam kursus keselamatan komputer peringkat kolej, kerana kualiti maklumat mengenai Stack Overflow berbeza-beza, dan bahkan kod yang baik mungkin tidak berfungsi di lingkungan tertentu. Namun, memotong dan menempelkan kunci dan IV lebih buruk lagi, kerana ini bermaksud bahawa kunci dan IV yang digunakan untuk menyulitkan data adalah serupa dengan sesuatu di internet, walaupun tidak semestinya bersifat umum. Jurucakap Voatz mengatakan dalam e-mel bahawa ini adalah kod ujian untuk demo dalam aplikasi dan “sebenarnya tidak digunakan dalam hal atau transaksi apa pun.”
Walaupun diringkaskan, cadangan Trail of Bits sepanjang lapan halaman. Voatz nampaknya telah menangani lapan risiko keselamatan, sebahagiannya menangani enam risiko lain, dan membiarkan 34 tidak diperbaiki. Lazimnya, syarikat mempunyai rancangan komprehensif mengenai bagaimana memperbaiki risiko tinggi dan sederhana. Malah, jurucakap Voatz berkata, “Kami memandang serius setiap penemuan, menganalisis setiap penemuan dari perspektif praktikal, menetapkan kemungkinan risiko dan kemudian menentukan jalannya ke depan,” kata seorang jurucakap Voatz dalam e-mel.
“Sekiranya bug atau masalah itu praktis dapat dieksploitasi dalam senario dunia nyata yang sesuai dengan pilot skala kecil yang kami jalankan, maka kami akan segera mengatasinya jika tidak, aliran tersebut akan mengalir dalam saluran pembangunan normal kami yang diutamakan.”
Mengejutkan, Voatz memutuskan bahawa ia “menerima risiko” dari banyak bug ini, pada dasarnya menerima risiko bagi pihak pengundi daripada membuat perbaikan yang disarankan dari firma yang disewa.
Tusk Philanthropies, Voatz dan Trail of Bits merujuk Cointelegraph kepada mereka terpisah blog jawatan mengenai audit, dan Trail of Bits merujuk kepada laporan itu sendiri.
Artikel ini telah dikemas kini dengan komen oleh jurucakap Voatz.
Berkaitan: Safe Harbor atau Thrown to the Sharks oleh Voatz?

Facebook
Pinterest