Permintaan terhadap unit pemrosesan grafis atau GPU telah meledak di beberapa tahun terakhir karena sistem rendering video dan kecerdasan buatan telah memperluas kebutuhan akan daya pemrosesan. Dan sementara sebagian besar kekurangan yang paling terlihat (dan harga saham yang melonjak) berhubungan dengan chip PC dan server papan atas, prosesor grafis seluler adalah versi yang digunakan setiap orang dengan telepon pintar setiap hari. Jadi kerentanan dalam chip ini atau bagaimana mereka diimplementasikan dapat memiliki konsekuensi di dunia nyata. Itulah sebabnya tim pemburu kerentanan Android Google mengarahkan pandangannya pada perangkat lunak sumber terbuka dari raksasa chip Qualcomm yang banyak digunakan untuk mengimplementasikan GPU seluler.
Pada Bahasa Inggris Defcon konferensi keamanan di Las Vegas pada hari Jumat, tiga peneliti Google memaparkan lebih dari sembilan kerentanan—yang kini telah ditambal—yang mereka temukan di GPU Adreno Qualcomm, serangkaian perangkat lunak yang digunakan untuk mengoordinasikan antara GPU dan sistem operasi seperti Android pada ponsel bertenaga Qualcomm. “Driver” semacam itu sangat penting bagi cara komputer dirancang dan memiliki hak istimewa yang mendalam di kernel sistem operasi untuk mengoordinasikan antara periferal perangkat keras dan perangkat lunak. Penyerang dapat memanfaatkan kelemahan yang ditemukan para peneliti untuk mengambil kendali penuh atas perangkat.
Selama bertahun-tahun, baik teknisi maupun penyerang sama-sama lebih fokus pada potensi kerentanan di unit pemrosesan pusat (CPU) komputer dan telah mengoptimalkan efisiensi pada GPU, mengandalkannya untuk mendapatkan daya pemrosesan mentah. Namun, karena GPU menjadi lebih penting dalam segala hal yang dilakukan perangkat sepanjang waktu, peretas di kedua ujung spektrum tersebut tengah mencari cara untuk mengeksploitasi infrastruktur GPU.
“Kami adalah tim kecil dibandingkan dengan ekosistem Android yang besar—cakupannya terlalu besar bagi kami untuk mencakup semuanya, jadi kami harus mencari tahu apa yang akan memiliki dampak paling besar,” kata Xuan Xing, manajer Tim Merah Android Google. “Jadi mengapa kami berfokus pada driver GPU untuk kasus ini? Karena tidak ada izin yang diperlukan bagi aplikasi yang tidak tepercaya untuk mengakses driver GPU. Ini sangat penting, dan saya pikir akan menarik perhatian banyak penyerang.”
Xing merujuk pada fakta bahwa aplikasi pada ponsel Android dapat berkomunikasi dengan driver GPU Adreno secara langsung tanpa “sandboxing, tanpa pemeriksaan izin tambahan,” seperti yang ia katakan. Hal ini sendiri tidak memberi aplikasi kemampuan untuk bertindak nakal, tetapi menjadikan driver GPU sebagai jembatan antara bagian-bagian reguler sistem operasi (tempat data dan akses dikontrol dengan cermat), dan kernel sistem, yang memiliki kendali penuh atas seluruh perangkat termasuk memorinya. “Driver GPU memiliki berbagai macam fungsi yang hebat,” kata Xing. “Pemetaan dalam memori itu adalah primitif yang hebat yang diinginkan oleh para penyerang.”
Para peneliti mengatakan kerentanan yang mereka temukan adalah kelemahan yang muncul dari kerumitan dan interkoneksi yang harus dinavigasi oleh driver GPU untuk mengoordinasikan semuanya. Untuk mengeksploitasi kelemahan tersebut, penyerang harus terlebih dahulu membuat akses ke perangkat target, mungkin dengan mengelabui korban agar mengunduh aplikasi berbahaya secara langsung.
“Ada banyak komponen yang bergerak dan tidak ada batasan akses, jadi driver GPU mudah diakses oleh hampir semua aplikasi,” kata Eugene Rodionov, pimpinan teknis Android Red Team. “Yang benar-benar membuat masalah di sini adalah kompleksitas implementasi—itu adalah salah satu hal yang menyebabkan sejumlah kerentanan.”
Qualcomm patch yang dirilis untuk kelemahan pada “produsen peralatan asli” (OEM) yang menggunakan chip dan perangkat lunak Qualcomm di ponsel Android yang mereka buat. “Mengenai masalah GPU yang diungkapkan oleh Tim Keamanan Android Red, patch telah tersedia untuk OEM pada bulan Mei 2024,” kata Juru Bicara Qualcomm kepada WIRED. “Kami mendorong pengguna akhir untuk menerapkan pembaruan keamanan dari produsen perangkat saat tersedia.”
Ekosistem Android itu rumit, dan patch harus dipindahkan dari vendor seperti Qualcomm ke OEM, lalu dikemas oleh masing-masing pembuat perangkat dan dikirimkan ke ponsel pengguna. Proses yang berkesinambungan ini terkadang berarti bahwa perangkat dapat dibiarkan terbuka, tetapi Google telah menghabiskan waktu bertahun-tahun untuk berinvestasi guna meningkatkan jaringan ini dan menyederhanakan komunikasi.
Meski demikian, temuan ini merupakan pengingat lain bahwa GPU sendiri dan perangkat lunak yang mendukungnya berpotensi menjadi medan pertempuran penting dalam keamanan komputer.
Seperti yang dikatakan Rodionov, “menggabungkan kompleksitas implementasi yang tinggi dengan aksesibilitas yang luas menjadikannya target yang sangat menarik bagi para penyerang.”