Kerentanan keamanan dalam kode
Perangkat lunak sistem operasi, perangkat lunak aplikasi, atau firmware dalam sistem tertanam adalah komponen dasar dari infrastruktur digital apa pun. Namun, meningkatnya percepatan dan tekanan tenggat waktu dalam proyek digitalisasi sering kali menyebabkan pengabaian aspek keamanan informasi yang sangat penting. Persyaratan pengembangan perangkat lunak biasanya berpusat pada fungsi dan menekankan aspek konstruktif, sehingga pandangan destruktif tentang potensi kerentanan keamanan sebagian besar bertentangan secara diametris dengan tujuan pengembangan yang sebenarnya: banyak programmer juga tidak memiliki pandangan yang terstruktur dan tajam tentang keamanan siber.
Dalam kondisi seperti ini, tim pengembangan mengalami kesulitan untuk terus meninjau dan secara konsisten mengamankan pengkodean perangkat lunak mereka, sebagaimana dibuktikan dengan banyaknya kerentanan yang diterbitkan oleh MITRE Corporation nirlaba setiap tahun dalam daftar CVE (Kerentanan dan Eksposur Umum). Patch keamanan reguler dari produsen perangkat lunak yang terkenal sekalipun merupakan indikator dari tugas berat untuk menutup bug yang berkaitan dengan keamanan, apalagi mengidentifikasi mereka bahkan sebelum diluncurkan ke pasar.
Kode Open Source - kasus khusus
Ketika mengkodekan perangkat lunak yang dikembangkan sendiri, para pemrogram suka menggunakan pustaka dan modul sumber terbuka. Keuntungan praktisnya sangat jelas: Jika Anda tidak perlu menemukan kembali roda berulang kali, Anda mendapatkan keuntungan dari dorongan teknologi ini, pengembangan yang cepat, biaya pengembangan yang lebih rendah, lebih banyak transparansi melalui kode sumber terbuka, dan interoperabilitas yang lebih tinggi melalui standar dan antarmuka terbuka.
Juga sering dikatakan bahwa kode dari sumber terbuka menawarkan tingkat keamanan yang tinggi karena kode tersebut telah divalidasi oleh banyak pengguna dan kecerdasan kawanan dari komunitas sumber terbuka memungkinkan perbaikan bug yang cepat dan efisien.
Dalam praktiknya, kepercayaan ini sekarang harus dievaluasi dengan cara yang berbeda dan kritis. Contoh paling serius adalah kerentanan keamanan zero-day Log4Shell dalam pustaka pencatatan yang banyak digunakan Log4J untuk aplikasi Java, yang ditemukan pada November 2021. Anda mungkin pernah mendengar tentang tingkat peringatan merah yang dikeluarkan oleh Kantor Federal Jerman untuk Keamanan Informasi (BSI) untuk Log4Shell. Pustaka Log4J, yang didistribusikan sebagai standar semu yang berfungsi dengan andal melalui Apache Foundation, telah memantapkan dirinya di banyak sistem sejak 2013 - termasuk layanan web terkenal seperti Amazon AWS.
Kompleksitas pustaka yang dikembangkan dengan baik dan juga dipelihara ini secara implisit menyediakan fungsionalitas yang kuat yang sering kali tidak disadari oleh pengembang yang mengimpor dalam pengembangan baru gabungannya sendiri, tetapi dapat dieksploitasi oleh penyerang.
Faktor ketidakamanan lain dari komponen open source adalah apa yang disebut dengan serangan rantai pasokan, yaitu kerentanan yang disengaja oleh aktor jahat yang berpura-pura menjadi bagian dari komunitas open source dan membantu pengembangan kode. Kerentanan seperti itu merupakan cara yang sangat efisien bagi peretas untuk menyerang sejumlah besar organisasi pengguna hilir. Maka, tidak heran jika vektor serangan ini berkembang pesat: studi Sonatype mendiagnosis peningkatan 650% saat membandingkan tahun 2020 dan 2021.