Jurnal MEDTEK, Volume 2, Nomor 1, April 2010
EVALUASI BOMOD SEBAGAI MEDIA PEMBELAJARAN BUFFER OVERFLOW Arip Mulyanto Jurusan Teknik Informatika Fakultas Teknik Universitas Negeri Gorontalo Email:
[email protected]
Abstrak Topik serangan buffer overflow dalam keamanan piranti lunak adalah salah satu topik yang penting untuk dipahami oleh kalangan akademisi, industri dan analis dalam bidang pengembangan piranti lunak. Untuk tujuan tersebut, NSF (National Science Foundation) mengembangkan suatu modul untuk pembelajaran Buffer overflow. Pada makalah ini kami memaparkan hasil evaluasi terhadap modul pembelajaran tersebut dari sisi kejelasan, kegunaan dan kualitas. Hasil pengamatan kami menunjukkan modul tersebut sudah memenuhi kriteria kejelasan, kegunaan dan kualitas yang baik. Kata kunci: Bloom’s Taxonomy, Computer Mediated Learning, Buffer overflow, Security Software
Penggunaan media pembelajaran dengan komputer dewasa ini telah semakin berkembang seiring dengan perkembangan teknologi informasi yang semakin maju. Kelebihan media berbantuan komputer dalam format digital adalah jauh lebih murah, mudah didistribusikan, bisa lebih interaktif selain memungkinkan eksplorasi materi yang lebih luas. Modul Bomod adalah modul pembelajaran yang dibuat oleh EmbryRiddle Aeronautical University dan didanai oleh NSF (National Science Foundation) yaitu lembaga penelitian Amerika. Modul ini ditujukan untuk meningkatkan pemahaman dan kesadaran para akademisi dan praktisi dalam mengatasi serangan buffer overlow. Versi lengkap modul ini bisa diunduh dialamat:http://nsfsecurity.pr.erau.edu/bo m_docs/bomod.zip. Pada penelitian ini dilakukan evaluasi Bomod sebagai media pembelajaran dalam bidang keamanan piranti lunak untuk topik buffer overflow.
Evaluasi tersebut diawali dengan tinjauan Taksonomi Bloom dan dilanjutkan dengan penilaian subjektif kami sebagai pengguna. Evaluasi yang kami lakukan mencakup kejelasan, kegunaan dan kualitas. Evaluasi ini diharapkan bisa menjadi masukan untuk pengembangan media tersebut dan media-media serupa untuk mencapai tingkat pembelajaran yang lebih baik.
BUFFER OVERFLOW Buffer overflow adalah salah satu jenis serangan terhadap keamanan perangkat lunak yang memanfaatkan kelemahan dalam penggunaan memori. Buffer overflow sering terjadi pada program perangkat lunak yang ditulis dalam bahasa permrograman level rendah seperti C/C++. Pada bahasa pemrograman tersebut, beberapa fungsi pada libarary standar yang digunakan tidak melakukan pengecekan batas penggunaan memori untuk suatu variable data.
1
Arip Mulyanto, Evaluasi BOMOD Sebagai Media Pembelajaran Buffer Overflow
Secara umum, cara kerja serangan buffer overflow adalah dengan memberikan masukan ke dalam program melebihi jumlah atau ukuran data yang seharusnya diterima oleh program. Serangan ini memungkinkan seorang penyerang untuk mengubah variabel yang sensitif di dalam program, atau mengganggu pemanggilan instruksi sehingga program menjalankan instruksi yang tidak semestinya dilakukan.
Dalam modul Bomod, pembaca diharapkan dapat memahami buffer overflow melalui materi yang disampaikan dibantu dengan animasi dan soal-soal latihan yang diberikan. Ranah Kognitif dalam Taksonomi Bloom sendiri dibagi menjadi beberapa kategori atau hierarki, yaitu: 1. Pengetahuan (knowldege) 2. Pemahaman (comprehension) 3. Penerapan (application) 4. Analisis (analysis) 5. Sintesis (synthesis) 6. Evaluasi (evaluation)
TAKSONOMI BLOOM Taksonomi Bloom merujuk pada taksonomi yang dibuat untuk tujuan pendidikan. Taksonomi ini pertama kali disusun oleh Benjamin S. Bloom pada tahun 1956. Dalam hal ini, tujuan pendidikan dibagi menjadi beberapa domain (ranah, kawasan) dan setiap domain tersebut dibagi kembali ke dalam pembagian yang lebih rinci berdasarkan hirarkinya. Tujuan pendidikan dibagi ke dalam tiga domain, yaitu: 1. Ranah Kognitif (Cognitive Domain), yang berisi perilaku-perilaku yang menekankan aspek intelektual, seperti pengetahuan, pengertian, dan keterampilan berpikir. Domain ini terdiri dari pengetahuan, pemahaman, aplikasi, analisis, sintesis dan evaluasi. 2. Ranah Afektif (Affective Domain) berisi perilaku-perilaku yang menekankan aspek perasaan dan emosi, seperti minat, sikap, apresiasi, dan cara penyesuaian diri. Domain ini terdiri dari penerimaan, tanggapan, penghargaan, pengorganisasian dan karakterisasi berdasarkan nilai-nilai. 3. Ranah Psikomotor (Psychomotor Domain) berisi perilaku-perilaku yang menekankan aspek keterampilan motorik seperti tulisan tangan, mengetik, berenang, dan mengoperasikan mesin. Domain ini terdiri dari persepsi, keasiapan, respon terpimpin, mekanisme, respon tampak yang kompleks, penyesuaian dan penciptaan. Ditinjau dari sisi Taksonomi Bloom, modul pembelajaran buffer overflow Bomod termasuk ke dalam ranah domain kognitif.
Jika digambarkan dalam diagram, maka akan tampak piramida berikut:
bentuk seperti
Gambar 1. Piramida Ranah Kognitif Piramida tersebut menggambarkan bahwa belajar pada level yang lebih tinggi harus melewatei level di bawahnya. Jika ditinjau berdasarkan piramida tersebut, Modul Bomod berada pada level 1-3 yaitu pengetahuan sampai penerapan. Pengetahuan dicapai melalui materi pembelajaran yang disampaikan. Pemahaman didapat melalui penjelasan dan demo dalam bentuk animasi. Penerapan bisa dicapai jika pengguna mencoba sendiri demo yang ditampilkan.
METODE Penelitian ini dilakukan dengan metode observasi atau pengamatan dan pengalaman langsung. Berdasarkan pengalaman dan pengetahuan tersebut
2
Jurnal MEDTEK, Volume 2, Nomor 1, April 2010
dilakukan penilaian modul Bomod dari sisi kejelasan, kegunaan dan kualitas.
besar demo disajikan dengan menggunakan animasi berbasis Applet (Java) dan sebagian dalam bentuk tampilan terminal. Bagian ini berisi animasi interaktif yang menggambarkan bagaimana buffer overflow dapat terjadi karena kesalahan di dalam kode program. Salah satu animasi menggambarkan bagaimana pencegahan yang bisa dilakukan. Animasi yang ditampilkan memuat contoh kode program dalam bahasa C dan gambaran bagaimana sistem operasi menyimpan program dan variabel-variabel-nya di dalam memori, pemanggilan sub-routine, alamat memori dan eksekusi instruksi program. Animasi tersebut dibuat interaktif sedemikian hingga pengguna bisa melihat bagaimana buffer overflow terjadi ketika diberikan input tertentu.
HASIL DAN PEMBAHASAN Bagian ini memuat hasil pengamatan kami terhadap modul Bomod. Pertama, kami akan menjelaskan secara ringkas mengenai materi pembelajaran yang ada pada Bomod. Selanjutnya, kami memaparkan hasil penilaian kami dari segi kejelasan, kegunaan dan kualitas. Muatan Materi Pembelajaran Modul bomod dibagi ke dalam beberapa bagian. Bagian pertama merupakan pengantar yang berisi penjelasan singkat mengenai masalah buffer overflow dalam keamanan perangkat lunak, kekurangan di dunia akademis dalam mengajarkan buffer overflow, pihak-pihak yang dapat menggunakan media pembelajaran tersebut dan bagaimana menggunakannya. Bagian kedua berisi pengenalan mengenai topik buffer overflow. Penjelasan tersebut dipaparkan dengan ilustrasi sehingga mudah dipahami oleh mereka yang tidak terbiasa dengan istilah-istilah komputer seperti memori, stack, variabel, dan sebagainya. Bagian ketiga menjelaskan langkahlangkah yang bisa dilakukan untuk menangani buffer overflow dengan berbagai pendekatan. Secara umum, buffer overflow diatasi dari sisi bahasa pemrograman, proses pengembangan, kompilator dan sistem operasi. Setiap pendekatan dijelaskan bagaimana melakukannya serta kelebihan dan kekurangan masing-masing. Bagian kelima menjelaskan hal-hal yang dapat menyebabkan terjadinya buffer overflow dengan lebih detil. Penjelasan tersebut bertujuan agar para praktisi (programmer, tester, manager) bisa mengenali kesalahan-kesalahan yang berpotensi menimbulkan masalah buffer overflow pada saat mereka mengembangkan perangkat lunak. Selain materi pembelajaran, Bomod juga berisi demo, studi kasus, serta latihan dan kuis untuk menguji pemahaman. Sebagian
Gambar 2. Tampak Muka Halaman Utama Bomod
Gambar 3. Animasi Demo Buffer overflow 3
Arip Mulyanto, Evaluasi BOMOD Sebagai Media Pembelajaran Buffer Overflow
Studi kasus yang diberikan mengambil contoh Code Red Worm dan Code Red Worm II pada tahun 2001 yang berhasil memanfaatkan buffer overflow pada server web IIS keluaran Microsoft. Worm tersebut menyerang sekitar 800.000 mesin berbahasa Inggris termasuk server situs resmi gedung putih AS (www.whitehouse.gov) dan menyebabkan kerugian sekitar $ 2,5 Milyar di seluruh dunia. Serangan ini mengakibatkan denial-of-service (DoS) pada mesin-mesin yang diserang. Soal-soal latihan diberikan untuk memperdalam pemahaman mengenai hal-hal yang berkaitan buffer overflow. Kebanyakan soal latihan disampaikan dalam bentuk studi mandiri untuk mencari sumber-sumber informasi terkait. Sedangkan kuis ditujukan untuk menguji pemahaman pengguna setelah belajar dari modul bomod tersebut. Bagian selanjutnya akan memaparkan hasil evaluasi kami terhadap modul Bomod mencakup kejelasan, kegunaan dan kualitas.
yang isinya sedikit lebih lengkap dengan penjelasan pada modul utama. Bagian demo sangat membantu pengguna untuk memahami cara kerja serangan buffer overflow karena menggunakan animasi yang menggambarkan eksekusi program di komputer. Menurut kami, demo tersebut adalah bagian yang sangat penting bagi pengguna untuk bisa memahami apa yang dimaksud dengan buffer overflow tanpa harus membaca penjelasan panjang lebar. Kekurangan pada Bomod adalah tidak adanya referensi teks yang menjelaskan informasi atau keterangan lebih detil mengenai topik yang dibahas per bagian bagi mereka yang ingin mendalami. Berkas power point yang disediakan hanya sedikit lebih detil dalam menjelaskan apa yang juga dijelaskan pada modul utama. Seharusnya ada keterangan referensi di Internet atau buku yang bisa dibaca untuk mendalami bahasan-bahasan tertentu. Evaluasi Kegunaan Secara umum, kegunaan yang diharapkan dari modul Bomod adalah: 1. Meningkatkan kepedulian (awareness) akan serangan buffer overflow pada piranti lunak. 2. Memberikan pemahaman mengenai buffer overflow: bagaimana terjadinya, dan sebab-sebabnya. 3. Menjelaskan bagaimana buffer overflow bisa dihindari. Tapi karena penggunaannya luas mencakup dunia akademis, industri dan analis maka kami melakukan evaluasi kegunaan dengan domain pengguna. Hasil evaluasi kami rangkum dalam Tabel 1. Hampir semua kegunaan pada daftar di Tabel 1 telah dipenuhi oleh Bomod. Untuk kegunaan dalam melatih kemampuan pemrograman yang aman, menurut kami belum dipenuhi oleh Bomod karena untuk bisa mencapai kegunaan tersebut dibutuhkan lebih banyak latihan praktek pemrograman. Bagi penguji (tester), keahlian untuk membuat skenario pengujian yang baik dalam mencegah buffer overflow juga belum bisa dipenuhi oleh Bomod karena
Evaluasi Kejelasan Modul Secara umum modul ini cukup memberikan kejelasan bagi yang membacanya, walaupun si pembaca adalah orang awam dalam bidang keamanan komputer. Modul ini dilengkapi dengan animasi yang menarik sehingga memudahkan para pembaca modul dalam memahami mengenai buffer overflow. Selain itu, modul ini juga dilengkapi dengan soalsoal latihan untuk memperdalam pemahaman mengenai buffer overflow dan kuis untuk menguji pemahaman. Menu yang ditampilkan juga cukup jelas dan lengkap dengan keteranganketerangan tool-tip mengenai apa yang dibahas per bagian jika kursor diarahkan pada gambar yang terkait dengan bagian tertentu. Dengan menggunakan ikon-ikon, tampilan menu menjadi lebih menarik. Muatan setiap materi dibuat dengan sederhana dan sebagian menggunakan gambar, bagan, diagram atau tabel untuk mempermudah pemahaman tanpa haurs menjelaskan panjang lebar. Beberapa bagian juga dilengkapi dengan berkas power point
4
Jurnal MEDTEK, Volume 2, Nomor 1, April 2010
penjelasannya kurang detil membutuhkan praktek langsung.
dan
Tabel 1. Evaluasi Kegunaan Berdasarkan Domain Pengguna Domain pengguna Kegunaan Akademis Dosen - Mempermudah pengajaran - Memperkaya materi belajar - Meningkatkan awareness Mahasiswa - Mempermudah dan meningkatkan pemahaman - Melatih kemampuan pemrograman yang baik dari sisi keamanan - Meningkatkan ketelitian dan awareness pada saat membuat program Industri Programmer - Melatih kemampuan pemrograman yang aman - Meningkatkan ketelitian dan awareness pada saat menulis program - Mengenali teknik pemrograman yang bisa menimbulkan buffer overflow Tester - Mampu menemukan potensi buffer overflow dalam pengujian - Mampu membuat scenario pengujian yang
Manager
Lainnya
Analis
Umum
baik - Sensitif terhadap kemungkinan buffer overflow pada program - Mengelola proses pengembangan program supaya bisa meminimalkan buffer oveflow - Meningkatkan awareness dari tim pengembang - Memberikan masukan atau saran untuk solusi yang lebih baik - Meningkatkan kesadaran publik terhadap ancaman buffer overflow - Mendapatkan pemahaman mengenai bahayanya buffer overflow
Evaluasi Kualitas Kualitas Bomod kami nilai berdasarkan kelengkapan materi, cara penyampaian, bentuk tampilan, dan pengaturan menu. Dari sisi kelengkapan materi, buffer overflow sudah baik mencakup pengenalan, penanganan, sebab-sebanya dan studi kasus. Beberapa bagian dilengkapi dengan power point yang bisa dibaca langsung. Kekurangannya adalah belum memberikan referensi atau daftar bacaan lebih jauh untuk topik-topik tertentu. Dari sisi cara penyampaian sudah baik. Tampilannya sederhana, tapi komprehensif dengan keterangan yang memadai. Bagan dan tabel yang ditampilkan sudah baik dan mampu membantu memahami materi lebih 5
Arip Mulyanto, Evaluasi BOMOD Sebagai Media Pembelajaran Buffer Overflow
cepat. Animasi yang digunakan untuk demo juga sudah baik dan cukup interaktif. Pengaturan menu juga sudah baik. Ikon yang digunakan untuk menunjukkan pokok bahasan tertentu sudah tepat. Keterangan tool-tip pada saat kursor diarahkan ke ikon mudah dipahami. Beberapa short-cut untuk bagian tertentu seperti daftar istilah (glossary) juga membantu pengguna untuk pindah halaman dengan cepat.
DAFTAR PUSTAKA Anon., Learning Domains or Bloom's Taxonomy, http://www.nwlink.com/ ~donclark/hrd/bloom.html, 2007 (Diakses Desember 2008). Anon., Taxonomy of Educational Objectives, http://en.wikipedia.org/wiki/Taxono my_of_Educational_Objectives, 2008 (Diakses Desember 2008). Niklas Frykholm, Countermeasures against Buffer overflow Attacks, http://www.comms.scitech.susx.ac.uk /fft/security/buffer.pdf, 2005. (Diakses November 2008). Stpehen Downes, Some Principles of Effective E-Learning, http://www.downes.ca/post/13, 2005 (Diakses 15 Desember 2008). Susan Gerhart, How do buffer overflow attacks work?, http://nsfsecurity.pr.erau.edu/bom/in dex.html, 2002 (Diakses November 2008).
SIMPULAN Berdasarkan pengamatan yang kami lakukan, kami mengambil kesimpulan berikut: 1. Modul Bomod mampu menyampaikan materi dengan jelas dan lengkap. 2. Modul Bomod telah memenuhi hampir semua kegunaan yang dimaksudkan. 3. Modul Bomod telah memenuhi kualitas yang baik sebagai media pembelajaran. Untuk pengembangan modul ini kami menyarankan agar dilengkapi dengan keterangan referensi dan daftar acuan yang lebih lengkap. Selain itu, lebih baik lagi jika disertakan bagian tersendiri untuk melatih kemampuan pemrograman yang aman.
6
Jurnal MEDTEK, Volume 2, Nomor 1, April 2010
7