
Akademik keamanan cyber (terbuka di tab baru) peneliti telah menandai kerentanan aneh yang memengaruhi sebagian besar penyusun kode komputer, dan banyak lagi lingkungan pengembangan perangkat lunak (terbuka di tab baru).
Ditemukan oleh para peneliti di University of Cambridge, bug tersebut memengaruhi semua kode sumber yang dikandungnya penggantian dua arah (Bidi) Titik kode Unicode, yang dalam beberapa kasus dapat memungkinkan pengguna jahat memperkenalkan perbedaan antara kode yang ditinjau dan kode yang dikompilasi.
“Dengan menyuntikkan karakter pengganti Unicode Bidi ke dalam komentar dan string, musuh dapat menghasilkan kode sumber yang valid secara sintaksis di sebagian besar bahasa modern (terbuka di tab baru) yang urutan tampilan karakternya menghadirkan logika yang menyimpang dari logika sebenarnya. Akibatnya, kami menganagram program A ke dalam program B,” catat para peneliti dalam laporan mereka makalah penelitian (terbuka di tab baru).
Sederhananya, kerentanan, yang disebut oleh para peneliti sebagai Sumber trojan (terbuka di tab baru)dan dilacak sebagai CVE-2021-42574, mengeksploitasi seluk-beluk dalam standar pengkodean teks seperti Unicode untuk memperkenalkan perubahan dalam logika, yang pada dasarnya memungkinkan musuh untuk memperkenalkan kerentanan yang ditargetkan.
Ancaman rantai pasokan perangkat lunak
Para peneliti berpendapat bahwa serangan berdasarkan kerentanan ini menimbulkan tantangan besar mengamankan rantai pasokan perangkat lunak (terbuka di tab baru).
“Jika musuh berhasil melakukan kerentanan yang ditargetkan ke dalam sumber terbuka (terbuka di tab baru) kode dengan menipu peninjau manusia, perangkat lunak hilir kemungkinan besar akan mewarisi kerentanan tersebut,” catat para peneliti.
Para peneliti bahkan telah memberikan contoh serangan yang mengeksploitasi bug ini di makalah mereka, pepatah (terbuka di tab baru) bahwa mereka telah memverifikasi bahwa serangan berdasarkan kerentanan ini bekerja dengan kode yang ditulis di hampir semua bahasa pemrograman modern, termasuk C, C++, C#, JavaScript (terbuka di tab baru)Java, Rust, Go, dan Piton (terbuka di tab baru).
Mengingat implikasinya yang luas, pengungkapan kerentanan dikoordinasikan dengan beberapa organisasi, beberapa di antaranya kini merilis pembaruan untuk mengatasi kelemahan keamanan.
Ingin membuat kode? Lihat ringkasan kami tentang laptop terbaik untuk pemrograman (terbuka di tab baru)