Iklan
Lihatlah aplikasi yang paling sering Anda gunakan di komputer. Kemungkinan besar, banyak dari mereka menawarkan fungsionalitas yang sangat terhubung, terutama browser web Anda. Program yang sangat terhubung ini dapat melakukan banyak hal, tetapi mereka juga merupakan undangan terbuka bagi peretas jahat untuk menyerang.
Agar pemogokan tidak berhasil, pengembang harus mengenali dan menutup setiap lubang dalam kode mereka, yang tidak mungkin dilakukan. Sebaliknya, pengembang harus mengambil fakta itu dan merencanakan kode mereka dengan itu dalam pikiran. Solusi paling umum dan efektif: kotak pasir.
Pasir Dalam Kotak?
Tidak, ini bukan kotak pasir taman lokal yang saya sukai, tetapi kotak pasir perangkat lunak. Kotak pasir ini memiliki satu tujuan utama: untuk mencegah penyebaran serangan. Seperti yang saya sebutkan di atas, pengembang cerdas tahu bahwa kode itu tidak sempurna, dan bahwa produk mereka pada akhirnya akan diretas atau ditembus. Untuk melindungi pengguna, mereka menerapkan kotak pasir yang mengisolasi bagian-bagian dari program mereka. Intinya, semua yang terjadi di kotak pasir, tetap di kotak pasir itu.
Kotak Pasir Beraksi
Untuk menjelaskan kotak pasir dalam aksi, saya akan menggunakan Google Chrome sebagai contoh utama. Chrome adalah salah satu produk yang paling dikenal untuk menerapkan sandboxing, yang oleh Google dengan bangga disebut-sebut sebagai fitur keamanan unik di antara browser. Google mengambil Chrome dan pada dasarnya membaginya menjadi tiga kategori berbeda: proses utama yang mengikat semuanya bersama-sama, proses tab (es) yang menahan halaman dan termasuk renderer, dan proses plugin (es). Semua kategori ini memiliki tingkat izin yang berbeda sehingga mereka dapat berjalan, tetapi izin tersebut adalah yang paling rendah sehingga semuanya sangat terbatas. Selain itu, proses yang berbeda tidak dapat benar-benar berbicara satu sama lain, tetapi hanya saling mengisi. Misalnya, meskipun konten Flash dari plugin Flash mungkin ada di laman, prosesnya masih terpisah dan tidak saling berbicara. Penyaji hanya menyisakan ruang pada halaman untuk proses yang akan ditampilkan. Ketidakmampuan untuk berkomunikasi ini penting karena jika tab macet atau dibajak, itu tidak dapat mempengaruhi tab lain atau sistem itu sendiri.
Firefox Memiliki Juga, Semacam
Firefox juga memiliki fitur sandboxing, meskipun terbatas, memisahkannya dari plugin pihak ketiga seperti Flash. Sementara browser dan semua tabnya digabungkan menjadi satu proses tunggal, ada proses terpisah untuk semua plugin. Dalam pendekatan Firefox, ia lebih memercayai kodenya sendiri daripada Googles dengan Chrome, dan menyalahkan semua masalah penjelajahan pada plugin. Karenanya, jika plugin mogok dengan cara apa pun, browser dan tab tidak akan terpengaruh.
Berpikir Di Luar Kotak
Meskipun strategi yang baik untuk menerapkan teknik sandboxing ke dalam kode program itu sendiri, ada banyak program lain yang tidak memiliki sandboxing apa pun. Alih-alih, Anda ingin menjalankan kotak pasir virtual tempat Anda dapat menjalankan program yang hanya dapat mendatangkan malapetaka sebanyak mungkin di dalam kotak pasir, meninggalkan sistem Anda dengan bijak. Meskipun ini sering dimaksudkan untuk menguji perangkat lunak, itu juga merupakan pilihan yang baik untuk menjalankan browser web atau benar-benar perangkat lunak lain di sana jika Anda lebih paranoid (atau masukkan kata favorit Anda lainnya di sini). Pilihan yang sangat populer untuk ini adalah Sandboxie Cara Mengisolasi & Menguji Aplikasi Tidak Aman di PC Anda Baca lebih banyak , tetapi ada produk lain, baik gratis maupun berbayar, yang dapat mencapai hal yang sama.
Kesimpulan
Sandboxing saat ini adalah salah satu topik terpanas dalam hal keamanan, dan pasti melakukan pekerjaan dengan cukup baik. Tentu saja, pengembang harus selalu tetap berkonsentrasi pada pembuatan kode mereka sebaik mungkin, tetapi jelas tidak membantu untuk memiliki beberapa rencana tindakan ketika terjadi masalah. Harap diperhatikan bahwa kotak pasir masih belum sempurna, karena kotak pasir Chrome dikalahkan di Pwn2Own 2012 setelah beberapa peretasan yang sangat sulit, tetapi mereka jelas merupakan pilihan yang jauh lebih baik daripada tidak sama sekali.
Apa pendapat Anda tentang aplikasi sandboxing? Perbaikan apa yang ingin Anda lihat di browser web sandboxing, atau aplikasi mana yang menurut Anda perlu sandboxing? Beri tahu kami di komentar!
Kredit Gambar: Katie Gregory, Ernst Vikne
Danny adalah senior di University of North Texas yang menikmati semua aspek perangkat lunak open source dan Linux.