Sebagian besar usaha untuk meningkatkan sekuriti sistem banyak difokuskan pada server, padahal banyak insiden disebabkan oleh kesalahan pengguna akibat sistem desktop yang kurang menjamin keamanan aktivitas penggunanya. Insiden ”klikbca.com” virus, trojan, dan penyadapan nomor kartu kredit oleh keystroke-broadcast program menunjukkan bahwa sisi user adalah mata rantai terlemah keamanan suatu sistem. Begitu juga adanya virus komputer yang sering mengakibatkan sistem tak dapat bekerja semestinya, atau bahkan sebuah virus komputer dapat bekerja sebagai penyadap tanda tangan digital ataupun penyadap data lainnya yang penting. Virus computer atau malware lainnya banyak menyerang desktop pengguna. Sehingga seaman-amannya system server, maka menjadi tidak berarti ketika desktop yang digunakan tidak memiliki keamanan dan integritas yang baik. Secure desktop merupakan suatu lingkungan kerja di mana user dapat bekerja dan melakukan aktivitas dengan dukungan sekuriti yang memadai. Secure desktop diharapkan akan mampu menangani dan mendukung keamanan aktivitas user yang memerlukan tingkat keamanan yang tinggi seperti melakukan entri data melalui Internet. Hal ini dibutuhkan misal untuk desktop di aplikasi perbankan, atau untuk Pemilihan Umum (PEMILU). Sayangnya seringkali sistme operasi dan sistem desktop tidak begitu dipertimbangkan dalam merancang sistem yang aman tersebut. Untuk memenuhi konsep secure desktop maka beberapa hal perlu dipertimbangkan :
- Perangkat peripheral yang terkontrol (tanpa CDROM, tanpa disket, serial dan USB), sehingga sulit bagi pengguna untuk secara bebas memasukkan program tanpa kontrol yang pasti.
- Ruang alamat yang terproteksi sehingga aplikasi yang tak memiliki hak akses tinggi tak bisa melanggar batasan tersebut.
- API yang aman.
- Struktur berkas (filesystem) yang aman, misal dilengkapi dengan sistem berkas terenkripsi.
Dengan menggunakan sistem yang terkoordinasi dengan baik maka pengguna dapat diatur sehingga :
- Pengguna hanya dapat menggunakan aplikasi yang diizinkan. Dengan kata lain pengguna ataupun virus yang memanfaatkan hak akses pengguna tak dapat menginstal aplikasi baru.
- Pengguna hanya dapat menggunakan ruang berkas yang diizinkan.
- Pengguna tak dapat menginstal atau memodifikasi program yang ada.
- Aksi pengguna tak dapat merusak integritas sistem, misal keberadaan virus tak akan mengganggu sistem atau pengguna yang lainnya.
Bahasa yang digunakan oleh program untuk berinteraksi dengan user juga merupakan hal yang sangat penting karena langkah-langkah pengamanan yang seharusnya dimengerti secara jelas dan gamblang oleh user, seperti pada kotak dialog SSL yang dimunculkan oleh browser web, seringkali diabaikan oleh user akibat kendala bahasa. Hal-hal di atas sudah cukup menjadikan dasar bahwa perlu dikembangkan sebuah sistem desktop yang mendukung keamanan aktivitas usernya. Pertimbangan keamanan desktop yang aman tidak saja dari sisi teknis tetapi juga dari sisi pengguna dan organisasi.
Secara umum Inti dari prosedur keamanan jaringan dalam suatu perusahaan itu diperlukan tanggung jawab dari se-seorang atau tim, yang benar-benar memperhatikan keseluruhan jalannya networking. Tim inilah yang harus benar-benar memahami, tentang Prosedur keamanan tersebut. Keamanan jaringan komputer sendiri sering dipandang sebagai hasil dari beberapa faktor. Faktor
ini bervariasi tergantung pada bahan dasar, tetapi secara normal setidaknya beberapa hal dibawah ini
diikutsertakan :
• Confidentiality (kerahasiaan).
• Integrity (integritas).
• Availability (ketersediaan).
Keamanan klasik penting ini tidak cukup untuk mencakup semua aspek dari keamanan jaringan
komputer pada masa sekarang [1]. Hal-hal tersebut dapat dikombinasikan lagi oleh beberapa hal
penting lainnya yang dapat membuat keamanan jaringan komputer dapat ditingkatkan lagi dengan
mengikut sertakan hal dibawah ini:
• Nonrepudiation.
• Authenticity.
• Possession.
• Utility.
Availability (ketersediaan).
Ketersediaan data atau layanan dapat dengan mudah dipantau oleh pengguna dari sebuah
layanan. Yang dimana ketidaktersediaan dari sebuah layanan (service) dapat menjadi sebuah halangan
untuk maju bagi sebuah perusahaan dan bahkan dapat berdampak lebih buruk lagi, yaitu penghentian
proses produksi [1]. Sehingga untuk semua aktifitas jaringan, ketersediaan data sangat penting untuk
sebuah system agar dapat terus berjalan dengan benar.
Confidentiality (kerahasiaan).
Ada beberapa jenis informasi yang tersedia didalam sebuah jaringan komputer. Setiap data yang
berbeda pasti mempunyai grup pengguna yang berbeda pula dan data dapat dikelompokkan sehingga
beberapa pembatasan kepada pengunaan data harus ditentukan. Pada umumnya data yang terdapat
didalam suatu perusahaan bersifat rahasia dan tidak boleh diketahui oleh pihak ketiga yang bertujuan
untuk menjaga rahasia perusahaan dan strategi perusahaan [2]. Backdoor, sebagai contoh, melanggar
kebijakan perusahaan dikarenakan menyediakan akses yang tidak diinginkan kedalam jaringan
komputer perusahaan.
Kerahasiaan dapat ditingkatkan dan didalam beberapa kasus pengengkripsian data atau
menggunakan VPN [22][2]. Topik ini tidak akan, tetapi bagaimanapun juga, akan disertakan dalam
tulisan ini. Kontrol akses adalah cara yang lazim digunakan untuk membatasi akses kedalam sebuah
jaringan komputer. Sebuah cara yang mudah tetapi mampu untuk membatasi akses adalah dengan
menggunakan kombinasi dari username-dan-password untuk proses otentifikasi pengguna dan
memberikan akses kepada pengguna (user) yang telah dikenali [2]. Didalam beberapa lingkungan kerja
keamanan jaringan komputer, ini dibahas dan dipisahkan dalam konteks otentifikasi [3].
Integrity (integritas).
Jaringan komputer yang dapat diandalkan juga berdasar pada fakta bahwa data yang tersedia
apa yang sudah seharusnya. Jaringan komputer mau tidak mau harus terlindungi dari serangan
(attacks) yang dapat merubah dataselama dalam proses persinggahan (transmit) [4]. Man-in-the-
Middle merupakan jenis serangan yang dapat merubah integritas dari sebuah data yang mana
penyerang (attacker) dapat membajak "session" atau memanipulasi data yang terkirim [5].
Didalam jaringan komputer yang aman, partisipan dari sebuah "transaksi" data harus yakin
bahwa orang yang terlibat dalam komunikasi data dapat diandalkan dan dapat dipercaya. Keamanan
dari sebuah komunikasi data sangat diperlukan pada sebuah tingkatan yang dipastikan data tidak
berubah selama proses pengiriman dan penerimaan pada saat komunikasi data. Ini tidak harus selalu
berarti bahwa "traffic" perlu di enkripsi, tapi juga tidak tertutup kemungkinan serangan "Man-in-the-
Middle" dapat terjadi.
Nonrepudiation.
Setiap tindakan yang dilakukan dalam sebuah system yang aman telah diawasi (logged), ini dapat
berarti penggunaan alat (tool) untuk melakukan pengecekan system berfungsi sebagaimana
seharusnya. "Log" juga tidak dapat dipisahkan dari bagian keamanan "system" yang dimana bila terjadi
sebuah penyusupan atau serangan lain akan sangat membantu proses investigasi [17]. "Log" dan
catatan waktu, sebagai contoh, bagian penting dari bukti di pengadilan jika cracker tertangkap dan
diadili. Untuk alasan ini maka "nonrepudiation" dianggap sebagai sebuah faktor penting didalam
keamanan
jaringan komputer yang berkompeten.
ITU-T telah mendefinisikan "nonrepudition" sebagai berikut :
1. Kemampuan untuk mencegah seorang pengirim untuk menyangkal kemudian bahwa dia
telah mengirim pesan atau melakukan sebuah tindakan.
2. Proteksi dari penyangkalan oleh satu satu dari entitas yang terlibat didalam sebuah komunikasi
yang turut serta secara keseluruhan atau sebagian dari komunikasi yang terjadi [7].
Jaringan komputer dan system data yang lain dibangun dari beberapa komponen yang berbeda
yang dimana masing-masing mempunyai karakteristik spesial untuk keamanan. Sebuah jaringan
komputer yang aman perlu masalah keamanan yang harus diperhatikan disemua sektor, yang mana
rantai keamanan yang komplit sangat lemah, selemah titik terlemahnya [8]. Pengguna (user)
merupakan bagian penting dari sebuah rantai. "Social engineering" merupakan cara yang efisien untuk
mencari celah (vulnerabilities) pada suatu system [21] dan kebanyakan orang menggunakan
"password" yang mudah ditebak. Ini juga berarti meninggalkan "workstation" tidak dalam keadaan
terkunci pada saat makan siang atau yang lainnya.
Sistem operasi (operating system : Windows, Unix, Linux, MacOS) terdapat dimana-mana,
komputer mempunyai sistem operasi yang berbeda-beda antara satu dengan yang lainnya (tergantung
selera), dan bahkan router juga dijalankan oleh oleh sistem operasi. Setiap sistem operasi mempunyai
gaya dan karakteristik sendiri yang membedakannya dengan sistem operasi yang lainnya, dan
beberapa bahkan digunakan untuk kepentingan "server". Beberapa sistem operasi juga mempunyai
masalah yang dapat digunakan sehingga menyebabkan sistem operasi tersebut berhenti merespon
pengguna.
Layanan pada "server" memainkan peranan penting dalam keamanan. Developer perangkat lunak
mengumumkan celah keamanan pada perangkat lunak dengan cepat. Alasan yang digunakan adalah
celah ini kemungkinan akan digunakan oleh pihak yang tidak bertanggung jawab untuk menyusupi
sebuah system ataupun setiap pengguna komputer. Pengelola atau pengguna server dan workstation
harus melakukan pengecekan untuk "update" masalah keamanan secara regular.
Perangkat keras mungkin sedikit susah dipahami sebagai sesuatu yang mempunyai potensi untuk
mempunyai masalah keamanan. Yang sesungguhnya adalah sangat berbeda dengan apa yang kita
pikirkan, apabila perangkat keras terletak di sebuah lokasi yang tidak aman maka terdapat resiko untuk
pemasangan perangkat keras yang tidak diinginkan kedalam jaringan komputer dan ini dapat membuat
penyusupan menjadi mudah. Juga, bila sebuah perangkat keras jaringan computer dirubah setting-nya
ke konfigurasi default oleh orang luar.
Pemilihan jenis metode transmisi juga mempunyai peranan penting didalam masalah keamanan.
Setiap informasi rahasia tidak boleh di transmisikan secara wireless, setidaknya tidak tanpa
menggunakan enkripsi yang bagus, sehingga setiap orang dapat menyadap komunikasi "wireless" yang
terkirim. Sangat dianjurkan untuk menggunakan firewall untuk membatasi akses kedalam jaringan
komputer ke tingkat yang dibutuhkan. Firewall juga dapat menjadi titik terlemah[9], yang mana dapat
membuat perasaan aman [10]. Firewall harus mengizinkan arus data kedalam sebuah jaringan
komputer jika terdapat juga arus data keluar dari jaringan komputer tersebut melalui firewall dan ini
dapat menjadi titik terlemah. Fakta penting lainnya bahwa tidak semua serangan
dilancarkan melalui firewall [10].
Mengamankan Jaringan Komputer
Mengamankan jaringan komputer membutuhkan tiga tingkatan proses. Untuk mengamankan
jaringan komputer kita harus dapat melakukan pemetaan terhadap ancaman yang mungkin terjadi.
Prevention (pencegahan).
Kebanyakan dari ancaman akan dapat ditepis dengan mudah, walaupun keadaan yang benarbenar
100% aman belum tentu dapat dicapai. Akses yang tidak diinginkan kedalam jaringan komputer
dapat dicegah dengan memilih dan melakukan konfigurasi layanan (services) yang berjalan dengan
hati-hati.
Observation (observasi).
Ketika sebuah jaringan komputer sedang berjalan, dan sebuah akses yang tidak diinginkan
dicegah, maka proses perawatan dilakukan. Perawatan jaringan komputer harus termasuk melihat isi
log yang tidak normal yang dapat merujuk ke masalah keamanan yang tidak terpantau. System IDS
dapat digunakan sebagai bagian dari proses observasi tetapi menggunakan IDS seharusnya tidak
merujuk kepada ketidak-pedulian pada informasi log yang disediakan.
Response (respon).
Bila sesuatu yang tidak diinginkan terjadi dan keamanan suatu system telah berhasil disusupi,
maka personil perawatan harus segera mengambil tindakan. Tergantung pada proses produktifitas dan
masalah yang menyangkut dengan keamanan maka tindakan yang tepat harus segera dilaksanakan.
Bila sebuah proses sangat vital pengaruhnya kepada fungsi system dan apabila di-shutdown akan
menyebabkan lebih banyak kerugian daripada membiarkan system yang telah berhasil disusupi tetap
dibiarkan berjalan, maka harus dipertimbangkan untuk direncakan perawatan pada saat yang tepat [1].
Ini merupakan masalah yang sulit dikarenakan tidak seorangpun akan segera tahu apa yang menjadi
celah begitu system telah berhasil disusupi dari luar.
Victims/statistic (korban/statistik).
Keamanan jaringan komputer meliputi beberapa hal yang berbeda yang mempengaruhi
keamanan secara keseluruhan. Serangan keamanan jaringan komputer dan penggunaan yang salah
dan sebegai contoh adalah virus, serangan dari dalam jaringan komputer itu sendiri, pencurian
perangkat keras (hardware), penetrasi kedalam system, serangan "Denial of Service" (DoS), sabotase,
serangan "wireless" terhadap jaringan komputer, penggantian halaman depan situs (website
defacement), dan penggunaan yang salah terhadap aplikasi web. Statistik menunjukkan jumlah
penyusupan didalam area ini sudah cukup banyak berkurang dari tahun 2003 [24], tipe variasi dari
serangan, bagaimanapun juga, menyebabkan hampir setiap orang adalah sasaran yang menarik.
Masalah keamanan
Jaringan komputer moderen adalah entitas dari banyak komponen kecil. Disini akan dijelaskan
beberapa titik lemah dari komponen yang berbeda.
Weak protocols (protokol yang lemah).
Komunikasi jaringan komputer menggunakan protokol antara client dan server. Kebanyakan dari
protokol yang digunakan saat ini merupakan protocol yang telah digunakan beberapa dasawarsa
belakangan. Protokol lama ini, seperti File Transmission Protocol (FTP), TFTP ataupun telnet [11], tidak
didesain untuk menjadi benar-benar aman. Malahan faktanya kebanyakan dari protocol ini sudah
seharusnya digantikan dengan protokol yang jauh lebih aman, dikarenakan banyak titik rawan yang
dapat menyebabkan pengguna (user) yang tidak bertanggung jawab dapat melakukan eksploitasi.
Sebagai contoh, seseorang dengan mudah dapat mengawasi "traffic" dari telnet dan dapat mencari
tahu nama user dan password.
Software issue (masalah perangkat lunak).
Menjadi sesuatu yang mudah untuk melakukan eksploitasi celah pada perangkat lunak. Celah ini
biasanya tidak secara sengaja dibuat tapi kebanyakan semua orang mengalami kerugian dari
kelemahan seperti ini. Celah ini biasanya dibakukan bahwa apapun yang dijalankan oleh "root" pasti
mempunyai akses "root", yaitu kemampuan untuk melakukan segalanya didalam system tersebut.
Eksploitasi yang sebenarnya mengambil keuntungan dari lemahnya penanganan data yang tidak diduga
oleh pengguna, sebagai contoh, buffer overflow dari celah keamanan "format string" merupakan hal
yang biasa saat ini.
Eksploitasi terhadap celah tersebut akan menuju kepada situasi dimana hak akses pengguna akan
dapat dinaikkan ke tingkat akses yang lebih tinggi. Ini disebut juga dengan "rooting" sebuah "host"
dikarenakan penyerang biasanya membidik untuk mendapatkan hak akses "root" [2].
Buffer overflow.
"Buffer overflow" mempunyai arti sama dengan istilahnya. Programmer telah mengalokasikan
sekian besar memory untuk beberapa variabel spesifik. Bagaimanapun juga, dengan celah keamanan
ini, maka variabel ini dapat dipaksa menuliskan kedalam "stack" tanpa harus melakukan pengecekan
kembali bila panjang variabel tersebut diizinkan. Jika data yang berada didalam buffer ternyata lebih
panjang daripada yang diharapkan, maka kemungkinan akan melakukan penulisan kembali stack frame
dari "return address" sehingga alamat dari proses eksekusi program dapat dirubah.
Penulis "malicious code" biasanya akan akan melakukan eksploitasi terhadap penulisan kembali
"return address" dengan merubah "return address" kepada "shellcode" pilihan mereka sendiri untuk
melakukan pembatalan akses "shell" dengan menggunakan hak akses dari "user-id" dari program yang
tereksploitasi tersebut [12]. "Shellcode" ini tidak harus disertakan dalam program yang tereksploitasi,
tetapi biasanya dituliskan ke dalam bagian celah dari "buffer". Ini merupakan trik yang biasa digunakan
pada variabel
"environment" seperti ini.
"Buffer overflow" adalah masalah fundamental berdasarkan dari arsitektur komputasi modern.
Ruang untuk variabel dan kode itu sendiri tidak dapat dipisahkan kedalam blok yang berbeda didalam
"memory". Sebuah perubahan didalam arsitektur dapat dengan mudah menyelesaikan masalah ini, tapi
perubahan bukan sesuatu yang mudah untuk dilakukan dikarenakan arsitektur yang digunakan saat ini
sudah sangat banyak digunakan.
Format string.
Metode penyerangan "format string" merupakan sebuah metode penyerangan baru, ini
diumumkan kepada publik diakhir tahun 2000. Metode ini ditemukan oleh hacker 6 bulan sebelum
diumumkan kepada masyarakat luas. Secara fundamental celah ini mengingatkan kita akan miripnya
dengan celah "buffer overflow" [13].
Kecuali celah tersebut tercipta dikarenakan kemalasan (laziness), ketidakpedulian (ignorance),
atau programmer yang mempunyai skill pas-pasan. Celah "format string" biasanya disebabkan oleh
kurangnya "format string" seperti "%s" di beberapa bagian dari program yang menciptakan output,
sebagai contoh fungsi printf() di C/C++. Bila input diberikan dengan melewatkan "format string"
seperti "%d" dan "%s"kepada program maka dengan mudah melihat "stack dump" atau penggunaan
teknik seperti pada "buffer overflow".
Celah ini berdasarkan pada "truncated format string" dari "input". Ini merujuk kepada situasi
dimana secara external, data yang disuplai yang diinterpretasikan sebagai bagian dari "format string
argument" [13]. Dengan secara spesial membuat suatu input dapat menyebabkan program yang
bermasalah menunjukkan isi memory dan juga kontrol kepada eksekusi program dengan menuliskan
apa saja kepada lokasi pilihan sama seperti pada eksploitasi "overflow".
Hardware issue (masalah perangkat keras).
Biasanya perangkat keras tidak mempunyai masalah pada penyerangan yang terjadi. Perangkat
lunak yang dijalankan oleh perangkat keras dan kemungkinan kurangnya dokumentasi spesifikasi teknis
merupakan suatu titik lemah. Berikut ini merupakan contoh bagaimana perangkat keras mempunyai
masalah dengan keamanan.
contoh 1: Cisco
Sudah lazim router cisco dianggap mempunyai masalah sistematis didalam perangkat lunak IOS
(Interwork operating system) yang digunakan oleh mereka sebagai sistem operasi pada tahun 2003.
Celah dalam perangkat lunak dapat menuju kepada "denial of service" (Dos) dari semua perangkat
router. Masalah keamanan ini terdapat dalam cara IOS menangani protokol 53(SWIPE), 55(IP Mobility)
dan 77(Sun ND) dengan nilai TTL (Time to live) 0 atau 1 [23].
Biasanya, Protocol Independent Multicast (PIM) dengan semua nilai untuk hidup, dapat
menyebabkan router menandai input permintaan yang penuh terhadap "interface" yang dikirimkan.
Sebagai permintaan bila penuh, maka router tidak akan melakukan proses "traffic" apapun terhadap
"interface" yang dipertanyakan [3]. Cisco juga mempunyai beberapa celah keamanan yang
terdokumentasi dan "patch" yang diperlukan telah tersedia untuk waktu yang cukup lama.
contoh 2: Linksys
Perangkat linksys mempunyai harga yang cukup murah sehingga banyak digunakan oleh orang.
Beberapa perangkat linksys mempunyai masalah dengan celah keamanan yang dapat menuju kepada
serangan "denial of service" (DoS). Celah keamanan yang memprihatinkan terdapat pada penanganan
parameter "URL Embedded" yang dikirimkan kepada perangkat.
Misconfiguration (konfigurasi yang salah).
Kesalahan konfigurasi pada server dan perangkat keras (hardware) sangat sering membuat para
penyusup dapat masuk kedalam suatu system dengan mudah. Sebagai contoh, penggantian halaman
depan suatu situs dikarenakan kesalahan konfigurasi pada perangkat lunak "www-server" atapun
modulnya. Konfigurasi yang tidak hati-hati dapat menyebabkan usaha penyusupan menjadi jauh lebih
mudah terlebih jika ada pilihan lain yang dapat diambil oleh para penyusup.
Sebagai contoh, sebuah server yang menjalankan beberapa layanan SSH dapat dengan mudah
disusupi apabila mengijinkan penggunaan protokol versi 1 atau "remote root login" (RLOGIN) diizinkan.
Kesalahan konfigurasi yang jelas ini menyebabkan terbukanya celah keamanan dengan penggunaan
protokol versi 1, seperti "buffer overflow" yang dapat menyebabkan penyusup dapat mengambil hak
akses "root" ataupun juga dengan menggunakan metode "brute-force password" untuk dapat menebak
password "root".
DoS, DDoS.
Serangan Denial of Service adalah serangan yang mengakibatkan setiap korbannya akan berhenti
merespon [5] atau "bertingkah" tidak lazim. Contoh serangan klasik "DoS" adalah "Ping of Death" dan
"Syn Flood" yang untungnya sudah hampir tidak dapat dijumpai pada saat sekarang. Biasanya
serangan DoS menyerang celah yang terdapat pada layanan system atau pada protokol jaringan kerja
untuk menyebabkan layanan tidak dapat digunakan. Tehnik yang lainnya adalah menyebabkan system
korban "tersedak" dikarenakan banyaknya paket yang diterima yang harus diproses melebihi
kemampuan dari system itu sendiri atau menyebabkan terjadinya "bottleneck" pada bandwidth yang
dipakai oleh system.
Serangan "Distributed Denial of Service" (DDoS) merupakan tipe serangan yang lebih
terorganisasi. Jenis serangan ini biasanya membutuhkan persiapan dan juga taktik untuk dapat
menjatuhkan korbannya dengan cepat dan sebelumnya biasanya para penyerang akan mencari system
kecil yang dapat dikuasai dan setelah mendapat banyak system kecil maka penyerang akan menyerang
system yang besar dengan menjalankan ribuan bahkan puluhan ribu system kecil secara bersamaan
untuk menjatuhkan sebuah system yang besar [5].
Worm "MyDoom" yang terkenal itu dibuat untuk melancarkan serangan besar-besaran dari
puluhan ribu system yang terinfeksi untuk menyerang situs www.sco.com. Serangan itu sukses besar
yang menyebabkan www.sco.com harus dipindahkan dari DNS untuk dapat menjalankan kembali
layanan [20].
Viruses (virus).
Salah satu definisi dari program virus adalah menyisipkan dirinya kepada objek lain seperti file
executable dan beberapa jenis dokumen yang banyak dipakai orang. Selain kemampuan untuk
mereplikasi dirinya sendiri, virus dapat menyimpan dan menjalankan sebuah tugas spesifik. Tugas
tersebut bisa bersifat menghancurkan atau sekedar menampilkan sesuatu ke layar monitor korban dan
bisa saja bertugas untuk mencari suatu jenis file untuk dikirimkan secara acak ke internet bahkan dapat
melakukan format pada hard disk korban [18].
Virus yang tersebar di internet yang belum dikenali tidak akan dapat ditangkap oleh program
antivirus ataupun semacamnya yang meskipun korban telah terjangkiti tetapi tidak mengetahuinya.
Perangkat lunak antivirus biasanya mengenali virus atau calon virus melalui tanda yang spesifik yang
terdapat pada bagian inti virus itu sendiri. Beberapa virus menggunakan tehnik polymorphic agar luput
terdeteksi oleh antivirus.
Kebiasaan virus polymorphic adalah merubah dirinya pada setiap infeksi yang terjadi yang
menyebabkan pendeteksian menjadi jauh lebih sulit [18]. Praktisnya setiap platform komputer
mempunyai virus masing-masing dan ada beberapa virus yang mempunyai kemampuan menjangkiti
beberapa platform yang berbeda (multi-platform). Virus multi-platform biasanya menyerang executable
ataupun dokumen pada Windows dikarenakan kepopuleran oleh system operasi Microsoft Windows dan
Microsoft Office sehingga banyak ditemukan virus yang bertujuan untuk menghancurkan "kerajaan"
Microsoft Corp [4].
Worms.
Sebuah "worm" komputer merupakan program yang menyebar sendiri dengan cara mengirimkan
dirinya sendiri ke system yang lainnya. Worm tidak akan menyisipkan dirinya kepada objek lain [18].
Pada saat sekarang banyak terjadi penyebaran worm dikarenakan para pengguna komputer tidak
melakukan update pada perangkat lunak yang mereka gunakan, yang dimana ini berarti, sebagai
contoh, Outlook Express mempunyai fungsi yang dapat mengizinkan eksekusi pada file sisipan
(attachment) e-mail tanpa campur tangan dari pengguna komputer itu sendiri.
Trojan horse.
Trojan horse adalah program yang berpura-pura tidak berbahaya tetapi sebenarnya mereka
sesuatu yang lain [18]. Salah fungsi yang biasa terdapat pada "trojan horse" adalah melakukan
instalasi "backdoor" sehingga si pembuat program dapat menyusup kedalam komputer atau system
korban.
junk mail (surat sampah).
"junk mail" sesungguhnya bukan suatu ancaman keamanan yang serius, tetapi dengan
penyebaran virus dan worm melalui e-mail, maka jumlah junk mail juga ikut bertambah. Ancaman
keamanan sesungguhnya bukan dari e-mail sampah itu sendiri melainkan file sisipannya (attachment)
yang patut diwaspadai dikarenakan penyebaran virus dan worm menggunakan metode ini.
Time bomb (bom waktu).
"Time bomb" adalah program yang mempunyai tugas tetapi dengan waktu tertentu baru akan
menjalankan tugasnya. Beberapa jenis virus dan worm juga mempunyai kesamaan fungsi dengan
aplikasi ini. Time bomb berbeda dengan virus ataupun worm dikarenakan dia tidak melakukan replikasi
terhadap dirinya tetapi melakukan instalasi sendiri kedalam system