Indonesia ternyata tidak hanya dikategorikan sebagai salah satu negara terkorup di dunia. Dalam soal kejahatan dunia maya (cyber crime), Indonesia juga menempati peringkat teratas. Ironisnya, dari segi penetrasi internet, Indonesia termasuk kategori terendah.
Berdasarkan laporan Federal Bureau of Investigation (FBI)- organisasi intelijen resmi Amerika Serikat, Indonesia hanya kalah dari Ukraina dalam soal kejahatan dunia maya.
Ada dua modus kejahatan dunia maya yang paling sering dilakukan adalah carding atau memalsukan nomor kartu kredit orang lain untuk mendatangkan berbagai produk komersial yang diperjual belikan lewat internet. Modus ke dua adalah cracking atau merusak/mengacaukan jaringan komputer pihak lain.
Menurut Pusat Koordinasi CERT® yang mulai beroperasi tahun 1988, jumlah peristiwa keamanan yang dilaporkan telah meningkat secara dramatis. Tahun 1988 trerjadi serangan kurang dari 100, tetapi meningkat hampir 2,500 insiden di tahun 1995. Peningkatan serangan sepanjang tahun 1994 sejalan dengan pertumbuhan internet selama kurun waktu tersebut. Pada Gambar 1 menunjukkan grafik hubungan pertumbuhan Internet dan peningkatan laporan insidenn keamanan internet. Data untuk tahun 1995 dan data parsial tahun 1996 menunjukkan melambatnya tingkat insiden yang dilaporkan ke CERT/CC, hal ini dimungkinkan adanya usaha meningkatkan keamanan pada situs-situs atau peningkatan secara signifikan dari response team untuk menangani insiden-insiden yang terjadi. Namun demikian, banyaknya insiden yang terjadi terus meningkat khususnya peristiwa-peristiwa serius, seperti root compromises, service outages dan packet sniffers.
Gambar 1 Grafik pertumbuhan Serangan Keamanan
Selama akhir tahun 1980 dan awal tahun 1990, gangguan yang terjadi umumnya secara terang-terangan. Pengganggu paling sering memanfaatkan kelemahan yang relatif sederhana, seperti lemahnya sistem password dan kesalahan sistem konfigurasi, sehingga terjadi akses yang lebih besar terhadap sistem secara tidak disengaja. Sekali penyusup dapat mengeksploitasi kelemahan suatu sistem, maka akan dengan mudah mereka menggunakan sistem tersebut sesuai keinginannya.
Pembuat software biasanya memasarkan produknya dengan setting yang mudah ditembus atau di susup keamanannya. Mengamankan sistem bukanlah suatu hal yang sederhana, dan kebanyakan administrator sistem tidak banyak memiliki waktu, keahlian dan alat-alat bantu untuk memonitor sistem mereka secara baik dari serangan-serangan atau penyusupan.
Selama delapan tahun terakhir, penyusup menggunakan teknik dan pengetahuan yang semakin meningkat untuk melakukan penyusupan, mengeskploitasi kelemahan sistem dan membuat perangkat lunak guna menyerang sistem secara otomatis. Pada waktu yang sama, penyusup yang memiliki kemampuan yang rendah akan leluasa dan makin efektif melakukan penyusupan, disebabkan penyusup yang berpengalaman membagikan pengetahuannya kepada penyusup dengan pengetahuan yang rendah.
Data/ informasi di era informasi seperti sekarang ini, sudah menjadi suatu aset yang sangat berharga. Bahkan bisa dikatakan sangat fital sehingga kebocoran, kehilangan ataupun kerusakan terhadap data/informasi dari suatu organisasi dapat mengancam kelangsungan hidup orgabisasi yang bersangkutan. Mengingat begitu berharganya suatu data/informasi maka tidaklah heran jika bermunculan beberapa pihak yang tidak bertanggung jawab yang berusaha mencuri maupun mengubah dan merusak data/informasi dari sistem komputer milik suatu organisasi tertentu.
Ketika sebuah komputer terhubung ke dalam sebuah jaringan komputer baik secara lokal ataupun ke dunia melewati internet, maka yang harus diperhatikan adalah keamanan dari komputer server tersebut. Selain komputer server tersebut tidak boleh luput dari perhatian keamanan dari komputer-komputer lain yang juga terhubung dengan komputer server tadi.
Namun yang akan dibahas disini adalah gangguan apa saja yang dapat terjadi pada sebuah komputer server apabila terhubung dalam sebuah jaringan atau internet, Kebanyakan orang berfikir bahwa gangguan keamanan yang mungkin terjadi adalah disebabkan oleh hacker dari luar. Dalam bahasan tentang keamanan sistem perlu diperhatikan semua sebab yang mungkin menjadi faktor gangguan keamanan itu terjadi. Sebagai contoh adalah seorang penyusup yang mempunyai dendam, ketidak sengajaan seorang pegawai, bug pada sistem operasi dan aplikasi di dalamnya atau kesalahan dalam konfigurasi.
Berikut ini akan dipaparkan gangguan keamanan yang berpengaruh bagi keamanan pada komputer server.
Dari sekian banyak penyebab masalah keamanan pada komputer, baik yang bersifat lokal maupun jaringan, buffer overflow termasuk salah satu penyebab yang paling banyak dilakukan. Menurut laporan CERT/CC, buffer overflow merupakan penyebab dari 50% semua bug keamanan yang dilaporkan dan dijadikan advisori oleh CERT/CC. Lebih jauh lagi, riset yang dilakukan oleh Crispin Cowan dan kawan-kawan, menganggap buffer overflow sebagai vulnerability of the Decade.
Buffer overflow merupakan sebuah kelemahan yang mudah untuk ditemukan dan dimanfaatkan oleh penyerang dalam sebuah sistem. Aplikasi dan Operating System (OS) menyimpan untuk sementara perintah yang mereka dapat di memori tertentu yang biasa disebut buffer memory. Kalau OS atau program tidak bisa dikode secara sempurna maka penyerang bisa membuat komputer korban jadi terganggu dengan mengirimkan perintah yang dibuat khusus, membuat gangguan jadi berlangsung lebih lama. Windows 95 paling rentan kalau sudah berhadapan dengan serangan seperti “buffer overflow” yang banyak dilancarkan lewat internet ini. Saat ini serangan serupa sudah jarang dilancarkan pada sebuah komputer. Namun terkadang penyerang masih sering melakukannya untuk memperlambat kinerja sebuah situs.
Untuk mengetahui apakah sebenarnya buffer overflow dan bagaimana cara kerja untuk mengekploitasinya, maka diperlukan pemahaman tentang cara kerja sistem processor di level bawah, seperti pemrograman assembly, manajemen memory text, stack, data dan sebagainya. Selain itu bagi pengguna sistem operasi Linux, pengalaman program debug gdb akan sangat membantu.
Berikut ini istilah-istilah dasar untuk memahami penjelasan berikut mengenai buffer overflow.
Sebuah proses jika dilihat dari sudut manajemen memori, dapat dibedakan menjadi tiga bagian .
· Text, memuat instruksi kode program. Bagian ini biasanya hanya bisa dibaca dan setiap usaha untuk menuliskan data ke bagian ini akan menyebabkan kesalahan segmentation violation.
· Data, memuat data, baik yang telah diinisialisasikan maupun yang belum. Selain dapat dibaca, biasanya bagian ini juga dimanipulasi suatu instruksi untuk melakukan penulisan padanya.
· Stack, yang dapat dialokasikansecara dinamis, biasanya dimanfaatkan untuk menyimpan variabel lokal maupun untuk melewatkan parameter fungsi. Pengaksesan data kebagian ini menggunakan metode yang disebut LIFO (Last In First Out) seperti yang nanti akan diterangkan secara lebih rinci. Jenis data yang juga patut diketahui adalah sebagai buffer yang pada bahasa C diimplementasikan sebagai array. Array dapat dibedakan ke dalam dua jenis berdasarkan metode pengalokasiannya, yaitu array statis dan array dinamis. Array statis dialokasikan dibagian data saat program dimuat ke memory, sedangkan array dinamis dialokasikan di dalam stacj saat run time.
Stack dapat dibayangkan sebagai sebuah blok dan memori yang dapat memuat data secara dinamis. Beberapa hal yang patut diketahui pada processor Intel sehubungan dengan stack adalah sebagai berikut.
q Penggunaan metode Big Endian dalam mengorganisasikan sistem memori. Disini MSB (Most Significant Bit) terletak pada alamat memori yang lebih kecil dibandingkan LSB (Low Significant Bit).
q Penambahan besar stack dilakukan ke arah alamat memori yang lebih kecil. Disini posisi bawah dari stack mempunyai alamat yang tetap. Posisi atas stack yang alamat memorinya lebih kecil dari posisi bawah selalu berubah.
q Register stack pointer (SP) selalu menunjuk keposisi atas dari stack.
q Untuk memindahkan data ke stack digunakan instruksi PUSH yang secara otomatis akan menurunkan nilai SP sebesar 4 byte. Sedangkan untuk mengambil data dari stack digunakan instruksi POP yang secara otomatis juga akan menaikkan nilai SP sebesar 4 byte.
Gambar 2 di bawah memperlihatkan diagram dari sebuah stack pada prosessor Intel.
Gambar 2 Stack Pada Memori
Blok memori dari stack ini biasanya dibagi lagi menjadi apa yang disebut dengan register stack frame. Setiap register stack frame berisi data yang berhubungan dengan pemanggilan suatu fungsi. Biasanya posisi awal dari frame ini ditunjukkan oleh frame pointer (FT).
Dengan bantuan FP ini, maka pengaksesan ke variabel lokal maupun parameter fungsi dapat dilakukan menggunakan sistem pengalamatanm relatif. Pada CPU Intel, register EBP berfungsi sebagai frame pointer.
Setelah bahasan di atas, sekarang akan dijelaskan pengertian buffer overflow. Buffer overflow memiliki arti suatu keadaan di mana data yang diisikan ke suatu buffer mempunyai ukuran yang lebih besar dari dibandingkan ukuran buffer itu sendiri. Untuk lebih memahami buffer overflow, mungkin dapat kita temukan padanannya dalam kehidupan sehari-hari, yaitu saat ember diisi dengan air, sehingga air yang dituangkan sampai meluap ( overflow).
Sedangkan pada eksploitasi buffer overflow, secara prinsip ada dua hal penting yang harus dilakukan dalam proses eksploitasi buffer overflow, yaitu sebagai berikut.
1. Pertama harus membuat instruksi yang kita kehendaki agar dijalankan setelah buffer ter overflow. Instruksi ini biasanya berupa kode assembly ini harus dikonversi ke data heksadesimal.
2. Kedua, harus memperhitungkan alamat posisi RET dalam stack dan alamat kode instruksi tersebut. Kemudian alamat kode instruksi ini harus dimasukkan ke dalam nilai RET, sehingga jika buffer ter overflow instruksi tersebut dijalankan .
Dari deskripsi di atas dapat disimpulkan bahaya yang bisa ditimbulkan oleh eksploitasi buffer overflow adalah sebagai berikut.
b.1 Pemanipulasian dan pengrusakan data stack dimemori sehingga suatu program yang memerlukan data tersebut akan mengalami gangguan dalam prosesnya.
b.2 apabila suatu program atau aplikasi dijalankan maka instruksi-insruksi dari program tersebut akan disimpan dalam memori. Dengan memanfaatkan eksploitasi buffer overflow seorang pengganggu dapat memanipulasi instruksi-instruksi pada memori dengan instruksi yang diinginkannya.
Berikut adalah contoh program yang ditulis dengan bahasa C yang mengandung buffer overflow.
Program di atas apabila dikompilasi dan dijalankan pada sistem operasi Linux akan didapatkan pesan segmentation violation. Hal ini disebabkan pada fungsi fungsi() bariabel array buffer didefinisikan hanya berukuran 4 byte, sedangkan data yang disalinkan kepadanya berukuran 17 byte.
Contoh lain dapat dilihat pada program di bawah ini.
Program di atas merupakan program kecil untuk memodifikasi nilai RET (return address) sehingga instruksi yang seharusnya dikerjakan setelah pemanggilan suatu fungsi akan dilompati. Seharusnya karena nilai a terakhir di isi dengan nilai 2, tapi pada program di atas instruksi a=2 yang seharusnya dikerjakan setelah kembali dari fungsi akan dilompati. Sehingga nilai dari a yang dikeluarkan pada layar adalah 1.
d. Cara Penanggulangan
Berikut adalah tindakan yang bisa dilakukan untuk menghindari terjadinya eksploitasi buffer overflow. Dari sisi seorang pemrogram.
Sebuah program yang berjalan dengan privilge tinggi, mengharuskan untuk melindungi semua data dan harus menganggap semua data yang masuk patut dicurigai.
Perhatikan contoh potongan program berikut.
Kode di atas berbahaya karena array nama tidak dibatasi besarnya. Solusi yang lebih baik adalah sebagai berikut.
Yang membatasi string nama yang dimaksukkan sebesar 255 karakter.
Selain memeriksa ukuran input yang dimasukkan, program juga harus memeriksa bahwa data yang dimasukkan adalah data yang valid. Misalnya, jika program meminta input berupa tipe data interger, maka program harus memastikan bahwa input yang diberikan oleh user benar-benar bertipe integer, bukan tipe lainnya.
Konsepnya adalah membuat segment data sebuah program tidak dapat dieksekusi. Dengan menjadikannya tidak dapat dieksekusi, maka tidaklah mungkin bagi penyerang untuk mengeksekusi kode yang mereka masukkan ke buffer input program korban.
Cara ini digunakan pada sistem operasi komputer lama, tetapi pada sistem operasi UNIX dan MS Windowsteknik ini tidak digunakan, karena keduanya tergantung pada kemampuan memasukkan kode dinamis ke dalam segment data program untuk mendukung berbagai optimisasi kinerja.
d.3 Array Bounds Checking
Meskipun memasukkan kode adalah sebuah tindakan pilihan bagi serangan buffer overflow, pengkorupsian aliran kendali merupakan hal yang penting. Dengan menggunakan metode array bound checking akan menghentikan vunerability dan serangan buffer overflow.Jika sebuah array tidak dapat di-overflow, maka array tidak dapat digunakan untuk mengkorupsi program yang terletak di alamat memori berikutnya. Untuk mengimplementasikan metode ini, semua pembacaan dan penulisan ke array yang harus diperiksa untuk memastikan bahwa mereka tidak melampaui batasan array.
Tujuan dar metode ini agak berbeda dengan bounds cheking. Alih-alih berusaha mencegah korupsi kode pointer, ia berusaha mendeteksi bahwa sebuah kode pointer telah terkorupsi sebelum ia dideferensikan. Jadi meskipun penyerang sukses dalam mengkorupsi kode pointer, kode pointer yang terkorupsi tidak akan digunakan karena korupsi terdeteksi setiap saat sebelum digunakan.
Indeks yang digunakan untuk memanipulasi sebuah array harus diperiksa dengan teliti. Perhatikan contoh kode di bawah ini.
. Sumber daya jaringan yang sangat berharga antara lain komputer, database dan layanan-layanan lain yang disediakan oleh jasa jaringan. Jaringan ini sangat dibutuhkan oleh user dikarenakan layanan-layanan tersebut memudahkan pekerjaan sehingga pekerjaan tersebut lebih efisien. Bila layanan ini rusak atau tidak dapat bekerja, maka akan menyebabkan hilangnya produktifitas. Hal-hal yang menyebabkan jaringan tidak bekerja dapat berupa apa saja termasuk worm yang seringkali melumpuhkan sejumlah besar komputer di dunia.
Penyebab denial of service diantaranya adalah sebagai berikut.
ü Kemungkinan jaringan menjadi tidak befungsi disebabkan kebanjiran jalur lalu lintas.
ü Kemungkinan jaringan dipartisi dengan cara membuat komponen jaringan seperti router ang menjadi penghubung jaringan tidak berfungsi.
ü Kemungkinan ada virus yang menyebar dan menyebabkan sistem komputer menjadi lambat atau bahkan lumpuh.
ü Kemungkinan device yang melindungi jaringan dirusakkan.
Penggunaan sumber daya yang illegal dapat pula mengakibatkan denial of service . Sebagai contoh, suatu penyerang dapat menggunakan wilayah ftp area tak bertuan sebagai tempat untuk menyimpan salinan yang tidak sah suatu perangkat lunak komersil, memanfaatkan ruang disk dan memadatkan lalu lintas jaringan.
Denial of Service Attack lebih dikenal dengan istilah DoS attack. Serangan ini dilakukan untuk tujuan mematikan salah satu atau semua layanan yang ada pada suatu sistem tanpa permisi dari penguasa sistem.
Denial-of-service attack merupakan sebuah upaya serangan dengan jalan menurunkan kinerja sebuah web site dengan terus menerus mengulang request ke server dari banyak sumber secara simultan. Tujuan serangan seperti ini berakibat server korban jadi kewalahan melayani request yang terkirim dan berakhir dengan menghentikan aktivitas atau berhenti dengan sendirinya karena tak mampu melayani request. Kadang serangan yang dilakukan dengan cara ini dapat merusak atau mematikan sistem secara keseluruhan.
Denial-of-service merupakan serangan dengan ditandai oleh suatu usaha yang eksplisit dari penyerang untuk mencegah para pemakai yang sah menggunakan jasa pelayanan jaringan. Contohnya meliputi :
Ø mencoba untuk membanjiri suatu jaringan, dengan demikian menghambat lalu lintas jaringan yang ada,
Ø mencoba untuk mengganggu koneksi antar komputer, sehingga jasa pelayanan menjadi terhambat,
Ø mencoba untuk mencegah individu tertentu untuk mengakses suatu layanan,
Ø mencoba untuk mengganggu pelayanan seseorang atau suatu sistem yang spesifik.
Jenis serangan lainnya dapat meliputi denial of service sebagai komponen, tetapi denial of service dapat berupa bagian dari serangan yang lebih besar.
Penggunaan sumber daya yang illegal dapat pula mengakibatkan denial of service . Sebagai contoh, suatu penyerang dapat menggunakan wilayah ftp area tak bertuan sebagai tempat untuk menyimpan mencuri data suatu perangkat lunak komersil, memanfaatkan ruang disk dan memadatkan lalu lintas jaringan.
Serangan Denial-Of-Service utamanya bertujuan melumpuhkan komputer atau jaringan. Tergantung pada sifat alami perusahaan, hal ini yang secara efektif melumpuhkan organisasi..
Beberapa serangan denial-of-service dapat dieksekusi dengan sumber daya terbatas melawan terhadap suatu situsbesar yang canggih . Serangan jenis ini kadang-kadang disebut/dipanggil suatu " serangan tidak simetris (asymmetric attack)." Sebagai contoh, suatu penyerang dengan sebuah PC tua dan sebuah modem yang lambat mungkin mampu melumpuhkan banyak jaringan atau mesin yang lebih canggih dan lebih cepat.
Serangan Denial-Of-Service terdiri dari berbagai bentuk dan jenis layanan. Ada tiga jenis dasar serangan yaitu :
ü penggunaan hal yang langka, terbatas, atau sumber daya tidak dapat diperbarui,
ü perusakan atau perubahan konfigurasi informasi,
ü perusakan secara fisik atau perubahan komponen-komponen jaringan.
Komputer Dan Jaringan memerlukan berbagai hal tertentu untuk beroperasi: bandwith jaringan, memori dan ruang penyimpan, CPU time, struktur data, mengakses ke komputer dan jaringan lainnya, dan sumber daya lingkungan tertentu seperti power, pendingin udara, atau bahkan air.
Serangan Denial-Of-Service yang paling sering dilakukan yaitu menyerang hubungan komunikasi antara server dan client. Tujuannya adalah untuk mencegah host atau jaringan saling berkomunikasi. Suatu contoh serangan jenis ini adalah " SYN Flood" membanjiri dengan request. Untuk lebih jelasnya dapat dilihat pada situs berikut. {terdapat juga pada Lampiran 1)
Pada serangan jenis ini, penyerang memulainya dengan proses menetapkan suatu koneksi kepada mesin korban. Meskipun demikian maksud penyerang sebenarnya akan menghambat komputer korban berkomunikasi dengan komputer lain. .Pada saat komputer korban memesan sejumlah struktur data yang diperlukan. Setelah proses permintaan selesai, komputer korban menyudahi koneksi. Hasilnya adalah bahwa koneksi yang sah ditolak pada saat komputer korban sedang menanti untuk melengkapi koneksi.
Perlu dicatat bahwa serangan jenis ini tidak tergantung pada penyerang tersebut memakai besarnya bandwidth jaringan. Dalam hal ini, pengganggu sedang menggunakan kernel struktur data dengan melibatkan suatu koneksi jaringan. Akibatnya adalah bahwa pengganggu dapat melaksanakan penyerangan dari suatu dial-up koneksi menyerang suatu mesin jaringan sdengan sangat cepat. ( Ini adalah suatu contoh yang baik dari suatu serangan asymetric.)
Pengganggu dapat juga menggunakan sumber daya milik kita melawan kita sendiri dengan cara yang tak diduga. Satu contoh diuraikan pada web berikut ini. (Dapat pula dilihat pada Lampiran 2).
Penyerang menggunakan paket UDP untuk menghubungkan getaran pelayanan pada suatu mesin ke mesin lain. Hasilnya adalah dua penguna yang mengkonsumsi semua bandwidth yang tersedia. Sehingga koneksitas jaringan untuk semua komputer pada jaringan yang sama akan saling mempengaruhi utamanya pada komputer target.
b.1.3 Merusak Bandwidth
Seorang penyerang dapat memakan semua bandwidth yang tersedia pada jaringan dengan mengirimkan sejumlah besar paket yang langsung diarahkan pada jaringan tersebut. Secara khusus, paket ini adalah paket ICMP ECHO, tetapi pada prinsipnya mereka dapat berupa apapun. Lebih lanjut, pengganggu tidak perlu beroperasi dari sebuah komputer; bisa jadi ia bekerja dari beberapa komputer yang beroperasi dijaringan yang berbeda dengan efek yang sama
Penyerang dapat pula memnfaatkan sumber daya lain dalam jaringan untuk menyerang. Sebagai contoh, dalam beberapa sistem, terdapat struktur data berupa proses informasi seperti proses identifikasi, proses masukan data dan sebagainya.Seorang penyerang dengan menggunakan hanya beberapa perintah singkat dapat menyalin catatatan-catatan tersebu berulang-ulangt. Banyak sistem operasi modern mempunyai fasilitas kuota untuk melindungi dari masalah ini, tetapi tidak semua dilakukan.
Penyerang dapat pula untuk menggunakan ruang disk dengan cara-cara lain, seperti.
q Meningkatkan jumlah pesan mail secara berlebihan (email Bombing). Untuk informasi lebih jauh dapat dilihat.pada site berikut. (dapat pula dilihat pada Lampiran 3).
q dengan sengaja meningkatkan kesalahan yang harus dicatatm
q menempatkan file pada wilayah ftp tanpa nama dalam jaringan atau pada jaringan bersama, Untuk informasi bentuk wujud ftp tanpa nama, dapat dilihat pada site berikut atau pada Lampiran 4.
Secara umum, apapun yang mengijinkan data untuk ditulis ke disk dapat digunakan untuk melaksanakan suatu serangan denial-of-service jika tidak ada batas berapa jumlah data yang dapat ditulis.
Juga, banyak situs merancang menempatkan "lockout" suatu account setelah sejumlah login gagal dicoba. Suatu kunci dapat dipasang 3 sampai 5 kali login, jika gagal user tidak diperkenankan lagi bekerja. Seorang penyerang mungkin mampu menggunakan rancangan ini untuk mencegah para pemakai yang sah untuk masuk. Dalam beberapa kasusl, bahkan account yang diistimewakan, seperti administrator, dapat dijadikan subyek serangan jenis ini. Pastikan kita mempunyai suatu metoda untuk memperoleh akses ke sistem bila terjadi keadaan darurat. Konsultasikan pada penjual sistem operasi atau baca manual sistem operasi secara cermat untuk fasilitas larangan bekerja dan masukan dalam keadaan darurat.
Seorangpenyerang dapat) menyebabkan sistem hancur atau menjadi tidak stabil dengan pengiriman data tak diduga (tas jaringan]. Sebagai contoh tentang serangan seperti diuraikan diatas dapat dilihat pada web berikut (dapat dilihat pula pada Lampiran 5)..
Jika sistem yang sedang berjalan mengalami kerusakan dengan tidak ada penyebabnya yang jelas, bisa jadi itu adalah hasil serangan jenis ini .
Ada berbagai hal lain yang mungkin peka terhadap denial of service, meliputi :
§ alat pencetak,
§ peralatan tape,
§ network connections,
§ Resources yang penting dalam operasi organisasi.
Sebuah komputer yang kurang bak untuk dioperasikan sebaiknya tidak dioperasikan sama sekali. Seorangpenyerang dapat mengubah atau menghancurkan konfigurasi informasi dan menghambat dari penggunaan jaringan atau komputer.
Sebagai contoh, jika perusak dapat merubah informasi routing pada router, jaringan menjadi lumpuh (disabled). Jika penyerang dapat memodifikasi registry pada komputer Windows NT, berakibat fungsi tertentu menjadi hilang (unvailable).
Untuk informasi tentang configurasi UNIX dapat dilihat pada web berikut atau pada Lampiran 6 :
Untuk informasi tentang configurasi Microsoft Windows NT dapat dilihat pada: http://www.microsoft.com/security/
Perhatian yang utama dengan jenis serangan ini adalah keamanan secara fisik. Perlu menjaga komputer dari akses yang tidak bertanggung jawab seperti, router, wiring closet, jaringan backbone, power dan stasiun pendingin, dan komponen lain yang peka pada jaringan.
Keamanan secara fisik merupakan suatu komponen yang penting untuk dijaga dari jenis serangan denial of service. Untuk informasi keamanan terhadap komponen fisik ini, disarankan untuk berkonsultasi terhadap perusahaan keamanan jaringan.
Serangan denial of service dapat mengakibatkan hilangnya waktu berharga dan biaya suatu organisasi. Serangan ini dapat dipertimbangkan untuk ditanggulangi bila tidak ingin menghadapi resiko yang lebih besar.
Beberapa pertimbangn berikut dapat diikuti sebagai saran mengatasi serangan denial of service.
ü Menerapkan router filters untuk mengurangi ekspose denial-of-service.
ü Instal program guard untuk menjaga dari membanjirnya e-mail yang tidak dikehendaki. Pada hakekatnya cara ini dapat mengurangi serangan denial of service.
ü Buang beberapa servis jaringan yang tidak diperlukan atau tak terpakai. Hal ini dapat membatasi kemampuan penyerang untuk mengambil keuntungan dari semua servis itu guna melaksanakan suatu serangan denial-of-service.
ü Buatlah sistem kuota pada sistem operasi jika layanan tersebut tersedia. Sebagai contoh, jika sistem operasi mendukung kuota penyimpanan, memungkinkan untuk mengijinkan pemakaian jaringan, khususnya account yang diijiinkan mengoperasikan jaringan. Sebagai tambahan, jika sistem operasi mendukung partisi atau volume ( yaitu., sistem file secara terpisah dengan atribut mandiri) dapat dipertimbangkan mempartisi sistem file supaya dipisahkan antara fungsi yang peka dari aktivitas lainnya.
ü Amati terus kegiatan sistem dan tetapkan batas-batas untuk aktivitas biasa. Gunakan batasan untuk mengukur tingkatan aktivitas disk yang tidak lazim, pemakaian CPU, atau lalu lintas jaringan.
ü Secara rutin menguji keamanan fisik komputer berkenaan dengan kebutuhan saat ini. Pertimbangkan server, router, terminal tanpa kendali, jaringan acces point, wire closet, sistem lingkungan seperti udara dan power, dan komponen lain dari sistem.
ü Gunakan Tripwire atau suatu alat serupa untuk mendeteksi perubahan konfigurasi informasi atau file lainnya. Untuk informasi lebih lanjut , lihat pd web berikut atau Lampiran 7
ü Menyiapkan modal untuk penggantian perangkat dan pemeliharaan mesin yang dapat dioperasikan sewaktu-waktu bila ada komputer yang mengalami serangan.
ü Secara reguler ditetapkan jadual pemeliharaan dan backup data terutama informasi-informasi yang penting.
ü Tentukan kebijakan pembaharuan kata sandi yang sesuai dan memperbaiki sandi secara reguler terutama bagi account yang khusus seperti administrator.
Pada sistem operasi Linux banyak target yang bisa digunakan untuk tujuan mematikan service pada sistem atau sistem secara keseluruhan. Berikut adalah target yang dapat digunakan sasaran serangan.
Ruang swap pada sistem operasi Linux biasanya digunakan sebagai Ivirtual memory. Ruang ini akan menyimpan file-file sementara yang biasa digunakan pada saat suatu program dijalankan.
Dengan cara menghabiskan ruang kosong pada swap akan ada program-program yang tidak dapat dijalankan karena tidak adanya ruang untuk menampung file-file sementara dari aplikasi tersebut.
Selain hal tersebut gangguan yang lain adalah matinya service-service yang ada pada sistemdan tidak dapat dipenuhinya request dari user karena penuhnya ruang swap ini.
d.2 Bandwidth
Target lain dari serangan DoS adalah dengan cara memenuhi bandwidth yang tersedia hingga komunikasi pada jaringan menjadi berat atau mati.
d.3 Tabel Kernel
Alokasi memory pada kernel merupakan salah satu target yang dapat digunakan sasaran serangn. Kernel mempunyai batas pada kernel map, jika sistem telah mencapai batasnya dan tidak bisa memakai memori kernel lagi maka yang harus dilakukan adalah me-reboot sistem. Memori kernel tidak hanya digunakan oleh RAM dan CPU saja , tapi juga digunakan oleh proses biasa. Sehingga dengan pemakaian proses yang terlalu banyak akan menyebabkan sistem harus di reboot.
d.4 RAM (Random Access Memory)
Penggunaan sejumlah besar RAM akan menyebabkan masalah pada sistem. Penggunaan RAM yang berlebihan pada sistem tentnya akan menyebabkan sistem bekerja berat dan untuk menguranginya, sistem dengan sendirinya akan mematikan layanan atau aplikasi yang tidakdiprioritaskan.
d.5 Inetd
Inetd adalah daemon pada sistem operasi Linux yang gunanya untuk menghidupkan service-service lain seperti telnetd, ftp atau service untuk mail server. Dengan mematikan inetd tentunya akan banyak service yang akan mati.
Untuk menghindari sistem dari keadaan di atas yang bisa dilakukan adalah sebagai berikut.
Ø Melakukan aturan quota pada user-user yang ada pada sistem seningga ada pembatasan jumlah file dan besar ruang yang dimiliki oleh user-user tersebut.
Ø Melakukan pembatasan banyaknya proses yang bisa dibuat oleh uses sehingga file-file temporry (sementara) yang dibuat oleh proses tersebut akan terbatas juga.
IV. PENUTUP
Data/Informasi sangat penting artinya bagi suatu organisasi dewasa ini. Kadang kala Informasi merupakan aset yang sangat fital, sehingga kerusakan, kehilangan dan kebocoran suatu informasi merupakan malapetaka bagi suatu organisasi.
Mengingat data/informasi berlalu lalang di jaringan komputer, maka sangat dimungkinkan informasi tersebut disadap, didengar bahkan dicuri orang-orang yang tidak bertanggung jawab. Kadang-kadang tanpa sengaja informasi menjadi hilang atau bahkan diberikan kepada orang yang tidak berhak.
Dari tahun ke tahun pemakaian jaringan komputer semakin meningkat, sehingga semakin banyak serangan terhadap jaringan komputer. Hal demikian mengakibatkan keamanan jaringan merupakan salah satu perhatian yang tidak dapat dihindari lagi.
Terdapat berbagai macam serangan terhadap jaringan komputer, diantaranya adalah Buffer Overflow dan Denial of Service.
Buffer overflow memiliki arti suatu keadaan di mana data yang diisikan ke suatu buffer mempunyai ukuran yang lebih besar dari dibandingkan ukuran buffer itu sendiri. Buffer overflow merupakan penyebab dari 50% semua bug keamanan yang dilaporkan dan dijadikan advisori oleh CERT/CC. Buffer overflow merupakan sebuah kelemahan yang mudah untuk ditemukan dan dimanfaatkan oleh penyerang dalam sebuah sistem.
Denial of Service Attack lebih dikenal dengan istilah DoS attack, merupakan serangan ini dilakukan untuk tujuan mematikan salah satu atau semua layanan yang ada pada suatu sistem tanpa permisi dari penguasa sistem. Sistem yang diserang dapat berakibat fatal yaitu menurunnya kinerja sebuah web, sehingga server korban akan kuwalahan melayani request yang datang berulang-ulang, yang berakhir dengan terhentinya server tersebut.
Beberapa langkah mengatasi serangan buffer overflow adalah sebagai berikut.
v Memvalidasi Data.
v Buffer Non-Executable.
v Array Bounds Checking.
v Code Pointer Integrity Checking.
v Memeriksa Index.
Adapun cara pencegahan dari serangan Denial Of Service adalah sebagai berikut.
Ø Melakukan aturan quota pada user-user yang ada pada sistem seningga ada pembatasan jumlah file dan besar ruang yang dimiliki oleh user-user tersebut.
Ø Melakukan pembatasan banyaknya proses yang bisa dibuat oleh uses sehingga file-file temporry (sementara) yang dibuat oleh proses tersebut akan terbatas juga
Tidak ada komentar:
Posting Komentar