Virus – pengenalan dan pencegahan


Bagian dari tugas mengenai Malware (pengenalan dan pencegahan), buka link disamping untukdownload dan baca keseluruhan review mengenai malware

Virus computer adalah program komputer yang menyalin dirinya dan menginfeksi komputer tanpa sepengatahuan pemilik. Virus original (asli) dapat mengubah isi dari virus salinannya, atau virus salinan tersebut dapat mengubah dirinya sendiri, seperti yang muncul dalam kasus virus metamorphic. Virus hanya dapa menyebar dari satu komputer ke komputer lain jika file inang-nya (host) dibawa k ekomputer yang tidak terinfeksi, misalkan dengan mengirimkan melalui jaringan atau internet, atau melalui media portable seperti CD atau USB drive. Penggun akomputer seringkali bingung membedakan antara virus dengan worm dan Trojan. Worm dapat menyebarkan dirinay sendiri tanpa harus transfer mellaui host, dan Trojan adalah file yang tampak tidak berbahaya sampai dia dieksekusi.

Beberapa virus dibuat untuk merusak aplikas, menghapus file, atau melakukan formatting pada harddisk. Beberapa yang lain tidak dibuat berbahaya, hanya menggandakan diri sendiri dan/atau melakukan aksi ‘aktualisasi diri’ dengan menampilkan pesan tect, video, atau audio. Meski virus tipe terakhir tersebut bias dibilang tidak berbahaya, tetapi dapat menimbulkan masalah. Virus tersebut mengambil memori komputer yang digunakan oleh aplikasi lain, sebagai hasilnya, virus tersebut sering menumbulkan perilaku aneh pada system dan tidak jarang berakhir menimbulkan system crash. Sebagia tambahan, banyak virus dibuat untuk exploitasi bug, dan bug-bug tersebut dapat menimbulkan crash atau hilangnya data.

Strategi penggandaan

Agar dapat menggandakan dirinya, sebuah virus harus diijinkan meng-eksekusi kode yang menulis ke memori. Untuk alasan tersebut, banyak virusmenyusupkan dirinya ke file executable yang merupakan bagian dari aplikasi terpercaya. Jika pengguna mencoba menjalankan program yangterinfeksi, kode virus dapat dieksekusi terlebih dahulu. Virus dapat dibagi menjadi 2 tipe, berdasarkan perilaku pada saat dieksekusi. Non-resident virus akan segera mencari file host lain yang dapat diinfeksi, menyusup pada target dan kemudian memindah kontrol pada aplikasi yang mereka infeksi. Resident virus tidak langsung mencari target ketika mereka dieksekusi. Tetapi, resident virus akan me-load dirinya dalam memori pada saat eksekusi dan memindahkan control pada palikasi host. Virus kemudian tetap aktif dalam memori di latar belakang dan menyusup pada host baru saat file tersebut diakses oleh aplikasi lain atau bahkan system operasi sendiri. Resident virus sendiri, terkadang dibagi lagi menjadi 2, fast infector dan slow infector. Pembagian ini berdasar kecenderungan untuk melakukan infeksi ke host baru. Pada tipe fast infection, virus akan segera melakukan infeksi pada aplikasi yang diakses oleh system, hal ini bias menjadi sangat merepotkan bagi anti-virus. Pada saat antivirus mengakses banyak file potensial, jika antivirus tidak ‘menyadari’ adanya virus ini yang aktif, maka virus dapat menunggangi antivirus dan menginfeksi tiap host potensial baru yang diakses oleh antivirus pada saat melakukan scanning menyeluruh. Tetapi metode fast infector cenderung lebih mudah dilacak, karena penggunaan resource yang tingi, system akan mengalami penurunan tingkat respon yang cukup signifikan. Beda halnay dengan slow infector, virus dengan tipe ini menginfeksi host baru dengan perlahan, hanya pada kondisi-kondisi tertentu saja. Missal pada saat melakukan penggandaan file, dan sebagainya.

Vector dan host

Virus mentarget beberapa tipe media transmisi atau host, berikut tipe file tersebut :

  • File executable binary (seperti file COM dan EXE di MS-DOS, file portable executable di MS windows, dan file ELF di Linux)
  • Volume boot record dari floppy disk dan partisi harddisk
  • Master Boot Record (MBR)
  • File script multiguna ( seperti file batch (.BAT) di MS-DOS dan windows, file VBScript, dan shell script pada platform Unix-Like)
  • File script yang spesifik pada aplikasi (missal script Telix)
  • Dokumen yang mengandung macro (seperti dokumen MS word, spreadsheet Excel, Dokumen AmiPro, database MS access)
  • Scripting pada aplikasi web

Vector yang tidak dapat diinfeksi

Source file, meski sangat sulit, tapi bukan tidak mungkin disusupi oleh virus. Virus juag dipastikan hamper tidak mungkin untuk menyusup pada file data (dengan pengecualian kelemahan Window Metafile – WMF) seperti MP3, MPEG, OGG, JPEG, GIF, PNG, MNG, PDF dan file DVI (dan tipe-tipe lainnya). Andaikan virus meninfeksi file tersebut, virus tidak akan dapat beroperasi karena tidak mungkin kode virus dapat dieksekusi. Sebagai catatan kecil, fiel PDF, seperti HTML, dapat memuat link yang dapat dimanfatkan untuk menghubungkan kode malware. Dan kemudian, eksploitasi buffer overflow pada program yang membaca file data dapat digunakan untuk memicu eksekusi kode virus, tetapi serangan semacam ini hanya terjadi pada arsitektur komputer dengan NX bit (execute disable bit).

Patut dicatat pula, beberapa pembuat virus menulis ekstensi .EXE pada akhir .PNG (sebagai contoh saja), berharap pengguna akan berhenti membaca pada jenis tipe PNG yang terpercaya dan tanpa sadar memicu aksi virus. Banyak system operasi tidak menampilkan ekstensi file secara default, sehingga file virus.PNG.EXE hanya akan tampil sebagai virus.PNG yang terlihat aman.

Metode untuk menghindari deteksi

Untuk menghindari deteksi pengguna, virus menggunakan beberapa jenis cara. Beberap avirus lama pada masa MS-DOS, memastikan tanggal “last modified” tidak berubah sehingga dapat menipu pengguna. Tetapi cara tersebut tidak akan berhasil menipu aplikasi antivirus, terutama yang melakukan pencatatan CRC (Cyclic Redudancy Check) pada perubahan file.

Beberapa virus dapat menginfeksi file tanpa menambah ukuran atau merusak file yang bersangkutan. Hal ini dapat dicapai dengan menimpa pada area yang tiak terpakai ara file executable. Virus tersebut disebut cavity virus. Sebagai contoh adalah CIH atau Chernobyl yang menginfeksi file Protable Executable. Hal ini dimungkinkan akrena file tersbeut memiliki banyak ruang kosong, virus yang hanya berukuran 1 KB tidak akan menambah ukuran file.

Beberap virus mematikan proses yang berhubungan dengan antivirus sebelum berhasil mendeteksi virus tersebut. Beberap metode lain yang umum digunakan adalah :

  • · Menghindari infeksi terhadap file umpan dan host yang merugikan

Virus menghindari untuk melakukan infeksi pada file executable antivirus, Karena pada umumnya antivirus melakukan oengecekan CRC dan perubahan pada file miliknya. Selain itu, virus berusaha menghindari infeksi pada file executable umpan yang sering diciptakan oleh antivirus. File umpan adalah file executable kecil yang sengaja dibuat untuk diinfeksi oleh virus agar dapat mengambil sampel virus untuk tujuan penelitian virus lebih lanjut. Virus berusah amengindari file executable berukuran kecil dan berisi pola perintah-perintah sampah yang umumnya menjadi cirri file umpan.
Selain itu, beberapa virus juga memiliki perilaku untuk tidak menginfeksi file yang terkadang memiliki potensi besar untuk diinfeksi, dengan tujuan mempersulit kemungkinan deteksi. Sebagai contoh, virus dapat memutuskan secara random apakah akan menginfeksi suatu file, atau melakukan infeksi pada hari tertentu.

  • · Stealth

Beberapa virus mencoba menipu aplikasi antivirus dengan menyela request (permintaan) pada sistem operasi. Virus dapat menyembunyikan diirnya sendiri dengan menyela request dari antivirus untuk mebaca file dan melemparkan request tersebut untuk ditangani oleh virus dan bukan OS. Kemudian, virus dapat memberikan balasan versi file yang tidak terinfeksi sehingga file terkesan ‘bersih’. Antivirus modern mengimplementasikan berbagai teknik untuk menghindari mekanisme stealth oleh virus. Tetapi satu-satunya cara yang paling terpercaya untuk menghindari stealth adalah melakukan boot dari media yang diketahui bersih.

  • · Self-modification

Antivirus modern mencoba mencari pola virus didalam alikasi normal dengam melakukan pendeteksian virus signature. Virus signature adalah karakteristik byte-pattern yang merupakan bagian dari virus atau keluarga varian virus tertentu. Jika virus scanner menemukan pola virus dalam file, maka pengguna kan diberikan peringatan untuk mengambil tindakan, misalkan menghapus atau (dalam beberapa kasus) membersihkan file yang terinfeksi. Beberapa virus mengimplementasikan teknik yang membuat pelacakan dnegan signatur menjadi sulit, tapi bukan tidak mungkin. Virus ini merubah kode mereka setiap kali melakukan infeksi. Sehingga tiap file yang terinfeksi memiliki varian yang berbeda dari virus.

  • · Enkripsi dengan multi-key

metode yang lebih advande adalah penggunaan enkripsi sederhana untuk mengacak kode virus. Dalam kasus ini, virus memiliki module dekripsi dan salinan kode virus yang ter-enkrip. Jika virus di enkripsi dengan key yang berbeda untuk tiap salinannya, hanya bagian modul dekripsi yang sama, yang akan ditambahkan pada bagian akhir kode virus. Dengan langkah iin, antivirus tidak dapat dengan langsung mendeteksi virus melalui signature, tetapi masih dimungkinkan melakukan deteksi tidak langsung melalui modul dekripsi.

  • · Kode polimorh

Penggunaan kode polimorfik adalah teknik pertama yang memiliki ancaman yang sangat serius terhadap pelacakan virus. Seperti virus yang ter-enkripsi biasa, virus polimorf aman menginfeksi file dan meng-enkrip salinannya, yang dapat di dekrip dengan menggunakan modul dekripsi. Akan tetapi, pada kasus virus polimorf, modul dekripsi juga dirubah setiap kali melakukan infeksi. Sebuah virus polimorfik yang ditulis dengan baik tidak akan memiliki bagian yang sama pada tiap salinan dan infeksi, membuatnya cukup sulit untuk dideteksi. Anti-virus dapat mendeteksi virus jenis ini dengan melakukan dekripsi menggunakan emulator, atau dengan analisa statistic pola dari bagian virus yang ter-enkripsi.
Untuk dapat menggunakan kode polimorfik, virus harus memiliki engine polimorfik (disebut juga engine mutasi) di dalam bagian kode-nya.

  • · Kode metamorph

Untuk menghindari terdeteksi oleh emulator, beberapa virus ‘menulis ulang secara keseluruhan’ diri mereka sendiri. Teknik ini disebut metamorfik. Untuk dapat menggunakan teknik ini, metamorphic engine mutlak diperlukan. Virus metamorfik, pada umumnya sangat besar dan kompleks. Sebagai contoh, W32/Simile memiliki lebih dari 14000 bari kode assembly, yang 90% diantaranya adalah metamorphic engine.

Kelemahan sistem operasi terhadap virus

Sama hal-nya seperti perbedaan genetic pada masyarakat menurunkan potensi sebuah penyakit meng’japus’kan seluruh populasi manusia, perbedaan system aplikasi pada jaringan dapat membatasi penebaran dan infeksi virus.

Hal ini menjadi cukup bermasalah ketika pada tahun 1990an, ketika Microsoft mencapai dominansi pada pasaran dalam bidang system operasi desktop dan aplikasi office. Pengguna aplikasi Microsoft menjadi rentan terhadap penyebaran virus. Applikasi Microsoft dijadikan target pembuat virus karena dominasi pada desktop yang mereka miliki, dan sering kali dikritik karena adanya banyak kesalahan dah lubang keamanan yang dapat dieksploitasi pembuat virus. Aplikasi terintegrasi (seperti Microsoft office) dan aplikasi dengan kemampuan scripting dan akses ke file system (seperti Visual Basic Script (VBS), dan aplikasi dengan fitur jaringan) juga cukup rentan.

Meski windows, hingga saat ini adalah sistem operasi yang paling popular untuk pembuat virus, beberapa virus juga bias ditemui pada platform lain. Semua system operasi yag mengijinkan aplikasi third party (buatan vendor lain) secara teoritis dapat menjalankan virus. Beberapa system operasi lebih aman dibandingkan yang lain. System operasi yang berbasis UNIX (dan beberapa palikasi NTFS-aware pada platform windows NT) hanya mengijinkan user untuk menjalankan executable didalam are terproteksi dan direktori pribadi.

Pada tahun 2006, terdapat bebapa eksploitasi keamanan yang mengintai Mac OS X (dengan file system dan kernel yang ebrbasis UNIX). Jumlah virus yang beredar untul OS apple ang lebih tua, dikenal dengan Mac OS Classic, bervariasi dari sumber ke sumber, Apple menyatakan hanya ada 4 virus yang diketahui, dan sumber independen menyatakan bahwa ada sekurang-kurangnya 63 virus yang mengancam platform ini. Dapat dikatakan bahwa Mac lebih jarang dijadikan target karena kecilnya pasar, sehingga virus yang spesifik menyerang Mac hanya dapat menginfeksi komputer dalam jumlah kecil, menjadikan usaha pembuatan virus dan penyebaran menjadi sia-sia. Perbedaan kerentanan virus dari Mac OS X dan Windos menjadi salah satu keuntungan publikasi yang kni digunakan apple dalah klan ‘Get a Mac’. Tapi, Mac juga memiliki beberapa isu keamanan sama seperti hal-nya Windows, meski jarang ada yang menggunakannya untuk dieksploitasi. Tapi ungkin suatu saat nanti jika Mac menjadi lebih dominan, hal itu mungkin terjadi.

Windows dan Unix memiliki kemampuan scripting yang sama, tetapi Unix secara native tidak memperbolehkan user normal memiliki akses untuk mengubah environment system operasi. Pada tahun 1997, saat virus untuk Linux dilepas di internet, dikenal dengan nama ‘Bliss’, menumbulkan pemikiran baru bagi vendor antivirus untuk mengeluarkan peringatan bahwa system dengan basis atau UNIX-like dapat menjadi korban virus sama seperti windows.

Pencegahan

Untuk mencegah penyebaran atau nfeksi virus pada system, dapat dibagi menjadi 2 langkah penting, dari sisi aplikasi dan pengaturan system, dan dari sisi pengguna.

Dari sisi system, instalasi aplikasi virus merupakan hal yang cukup mulak dilakukan. Aplikasi inlah yang dapat menjadi lapis pertama benteng pertahanan system terhadap virus. Antivirus dapat melakukan pendeteksian kode-kode virus bedasarkan signature atau secara heuristic dan selalu berjalan di latar belakang, sehingga dapat mengawasi segala akses terhadap file dan system. tapi terkadang, penggunaan antovirus bias menjadi senjata makan tuan, jika user tidak selalu tertatur melakukan update virus signature dan/atau engine antivirus ke vendor antovirus yang bersangkutan. Update iniliah yang menjadi slaah satu point penting proses pendeteksian virus2 baru. di internet, virus2 baur muncul tiap waktu, bahkan bias mencapai belasan tiap harinya. Untuk memilih aplikasi antivirus yang baik, pilihlah aplikasi dari vendor yang sering melakukan update dan menyediakan update harian (bahkan ada yang menyediakan beberapa kali sehari). Pilih pula aplikasi yang memiliki kekampuan pendeteksian secara heuristic, mellaui pengenalan pola perilaku kode virus, sehingga dapat menangkal kemungkinan virus baru yang belum terdapat dalam database. Dan jika ada, pilih vendor yang memiliki perwakilan perusahaan di Negara yang bersangkutan, agar dukungan untuk menangkal virus yang beredar secara local juga terjamin.

Selain dari segi aplikasi, sisi pengguna juga memegang peran penting. Seperti telah ditulis sebelumnya, kadang user telah merasa aman karena memiliki antivirus, jutsru menjadi senjata yang berbalik pada diri sendiri. User selain harus rajin update antivrus, juga harus berhati-hati dalam menggunakan komputer, terutama pada saat pertukaran data atau terhubung dengan internet. Jika mendapat file dari sumber yang tidak dikenal atau tidak terpercaya, seharusnya lebih berhati-hati.

Advertisements

5 comments on “Virus – pengenalan dan pencegahan

  1. Pingback: Computer Security - Malware, virus, worm, trojan, etc « SeTH’s daily rants

  2. iya, tapi nih dah lewat tengah malam.. terpaksa tutup buku… tujuan semua ga tercapai untuk sepenuhnya detail sampe malware berorientasi profit

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s