Minggu, 11 April 2010

[BDVM] - Bermain-main Dengan Virus Macro

Note from Tri Amperiyanto
[Ini adalah "versi web" dari buku Bermain-main dengan Virus Macro.  Diambill dari naskah aslinya.  Buku ini telah diterbitkan oleh PT. Elexmedia Komputindo. Dan sudah tidak diterbitkan lagi. Semoga bagi Anda yang belum mempunyai kesempatan membaca buku ini, dapat membacanya via blog ini.  Semoga bermanfaat.]





Kata pengantar

Sebagai pemakai komputer, program virus sungguh sudah tidak dapat dipisahkan lagi dari kehidupan kita. Mau tidak mau, suka tidak suka, rela atau terpaksa, kita harus hidup dengannya tanpa kompromi.  Jikalau sistem komputer itu sayur, virus adalah garamnya! Yang cukup mencemaskan, ternyata beberapa jenis program virus tersebut ternyata cukup gampang untuk dibuat. Misalnya :virus Macro!


Buku ini akan mencermati, menelaah dan membimbing pemakai komputer yang menggunakan sistem operasi Windows, khususnya mereka yang sering memakai program pengolah kata Microsoft Word, untuk mengenal,  membuat, sekaligus  memberantas virus macro.
Model virus macro yang dijabarkan dirancang untuk pengolah kata Microsoft Word 97,  dan dibentuk dari “kompilasi“ beberapa program virus macro yang sudah ada. 

Mungkin Anda berpikir model virus macro yang ada pada buku ini seharusnya tidak diekspose dengan detail.  Harap dicatat bahwa listing program tersebut dibuat untuk membuka wawasan dan kesadaran Anda bahwa memang program virus itu gampang untuk dibuat !
Memang, sisi negatif, orang yang berpikir destruktif akan tahu bagaimana membuat virus tersebut menjadi lebih canggih,  tapi disisi lain, jika kita tidak tahu bagaimana sesungguhnya suatu virus dibuat, sungguh sulit untuk melindungi diri dari serangan mereka. Bagaimanapun, kejujuran ilmiah dan kebaikan moral Anda sangat saya harapkan!!!

Untuk isteriku Rini Dwi Haryanti dan anak-anakku Kinanti Anggi Sasmita dan Damar Jati Pranandaru, terima kasih untuk kesabaran, semangat dan cinta yang diberikan.  Juga, kepada seluruh pihak terkait sehingga buku ini dapat terrealisasi. 



Salam,

Tri Amperiyanto



Pendahuluan

Selamat datang di dunia bawah tanah!

Ya! Saya ingat sekarang! Lebih kurang 13 tahun lalu, saat saya mulai belajar mengenal komputer, materi dan teknologi tentang virus komputer banyak menyita perhatian saya. Tapi apa daya,  dengan otak yang kurang encer, pergaulan terbatas dan modal pas-pasan  (he.. he.. he… :)) terpaksa saya hanya dapat berharap !  Berharap bahwa suatu saat saya dapat membuat suatu virus komputer.    Jujur saja, motivasi utama saat itu, adalah untuk sekedar unjuk gigi dan pamer,  maklumlah darah muda ! He.. he…he..:)
Sungguh !  Jika mau jujur, sebagian besar pemakai  (baca : maniak) komputer amat mendambakan untuk dapat membuat program virus.  Mungkin terdengar tidak enak ya?  Alasannya bervariasi.  Yang utama adalah untuk pamer dan sok jago!  Tanpa kita sadari, secara naluri kita senang jika orang lain susah.  Senang jika orang lain (terutama yang tidak kita sukai) mengalami musibah? 
Juga, rasanya puas saat membuat orang lain merasa dikalahkan.  Coba tanya pada diri sendiri, jujur dan biarkan lubuk hati terdalam bicara.  Tentu kita akan membenarkannya.  (Lho… ini buku komputer atau perbaikan moral ya…? :))
Setelah cukup lama bergelut mempertahankan keamanan data dan sistem komputer, ternyata saya jadi cukup mengenal beberapa jenis program yang dikenal oleh pemakai komputer dengan sebutan program virus.  Untuk dapat “bersenang-senang” dengannya, mau tidak mau, saya terpaksa harus mempelajarinya.  Ternyata banyak yang menarik dari program virus ini.  Teknik penyusupan, melarikan diri, perusakan, manipulasinya cukup menyita perhatian.  Hingga akhirnya, (mungkin) sampai titik jenuh saya mempertahankan sistem.  Saya tak kuasa lagi membendung keliaran hati saya untuk mengungkap “dendam lama” ini ke suatu model virus.  Barangkali kita dapat berbagi rasa gelisah ini.  Meskipun demikian, kejujuran ilmiah dan kebaikan moral Anda sangat saya harapkan. Menutup basa-basi ini, tolong perhatikan, cuplikan kasus sedih berikut ini. 

Saya pernah menjumpai kasus yang menyedihkan,  seorang teman mengeluh bahwa data-data yang ada di kantornya tiba-tiba rusak dan hancur semua.   Data-data tidak hilang namun menjadi kacau.  Ketika saya periksa sistem operasi dan hardware-nya semuanya sehat-sehat saja.  Berpuluh-puluh program antivirus saya jejalkan ke sistem komputer tersebut.  Ternyata komputer memang tidak terkena virus yang biasa saya temui.  Dengan heran saya katakan padanya bahwa semua sistem berjalan dengan baik.  Ia ngotot bahwa pasti ada virus yang menyerang.  Saya bertanya kepadanya tentang program atau aktifitas terakhir apa yang dilakukan pada sistem komputer sebelum data-data menjadi kacau. Ia menjawab, program akunting. 
Dengan penasaran saya periksa program akunting.   Setelah melalui perjuangan dan doa (he… he…:)), akhirnya saya mulai mendapat titik terang.   Ternyata program akunting inilah biangnya!  Program akunting yang dipakai oleh teman saya kebetulan adalah program khusus buatan atau pesanan dari seorang programmer yang baru-baru saja keluar dari kantor teman saya tersebut. Sialan!!! Ternyata program tersebut disisipi dengan suatu rutin pemicu “bom waktu perusakan data” oleh sang programmer.  Meskipun sederhana, rutin tersebut ternyata memang termasuk kategori program virus   Saya hanya dapat tersenyum kecut, teringat bahwa hal itu dulu sering pula saya lakukan.  Membuat suatu rutin bunuh diri untuk program yang saya buat, sehingga dengan kriteria tertentu dapat aktif dan melakukan “harakiri”.  Maksudnya untuk menjaga program dari penyalahgunaan yang tidak saya inginkan.   Ternyata prinsip :

Saya datang, program lahir... 
Saya ada dan diperlukan, program tenang…
Saya pergi, program bunuh diri …!!!

Memang masih banyak dilakukan oleh banyak orang pinter namun sontoloyo !    
Seandainya teman saya waktu itu, ikut memeriksa source code program yang dibuat oleh sang programmer tersebut sebelum program resmi dipakai, tentu kesedihan ini tidak perlu terjadi.
Kesimpulannya ternyata :  virus yang paling berbahaya dan wajib diwaspadai adalah teman dekat kita sendiri atau …… orang yang kita percayai !




Daftar isi

Bab .1 Virus : suatu omong kosong !
Virus komputer?
Bagaimana virus menyebar?
•    Perangkat lunak bajakan
•    Situs www
•    File-file network dan lingkungan network
•    Download file
•    File tambahan pada e-mail
•    Pertukaran disk
•    Software demo
•    Lab  komputer

File-file berbahaya
•    Exe
•    Com
•    Doc
•    Xls
•    Mdb
•    Zip
•    Arj
•    Ovl
•    Bin
•    Drv
•    Sys
•    Xla dan xlt
•    scr

Jenis-jenis virus
•    Virus boot sector
•    Virus file
•    Virus direct action
•    Multi partitie virus
•    Polymorphic virus
•    Stealth virus
•    Macro virus

Mengapa virus macro ?
•    Gampang dibuat
•    Platform independent
•    Microsoft Word umum dipakai

Program virus atau bukan?
•    Kemampuan mendapatkan informasi
•    Kemampuan memeriksa program atau file
•    Kemampuan mengandakan diri
•    Kemampuan untuk manipulasi
•    Kemampuan  menyembunyikan data


BAB 2 Struktur virus macro
Struktur virus macro
•    Rutin penanda virus
•    Rutin penggandaan diri sendiri
•    Rutin pertahanan dan penjebolan
•    Rutin pemicu
•    Rutin manipulasi

Penanda virus
•    Apa itu penanda virus ?
•    Membuat penanda virus dengan nama obyek

Bab 3.  Penggandaan diri
•    Tahapan infeksi dokumen
•    Tahapan infeksi Global template

Bab 4. Benteng pertahanan
1. Menembus benteng pertahanan
Bagaimana mengubah kebiasaan perintah word?
Jebakan Tool options
2. Mematikan fasilitas macro
3. Mematikan pemakaian editor Visual Basic
4. Mematikan akses ke template
5. Memasangkan password saat akses macro


Bab 5. Pemicu virus
Saat file dibuka secara manual
Saat keluar dari program Word
Saat membuka file yang sudah ada secara otomatis
Saat menutup suatu dokumen
Saat menyimpan file
Saat program Word dibuka / diaktifkan

Bab 6 manipulasi teks
1. Mengganti huruf
Level 1.  mengganti 1 huruf
Level 2 : Mengganti lebih dari satu huruf
Level 3 : Mengganti huruf menjadi kata atau kalimat
Level 4 : Mengganti beberapa huruf dengan kalimat
Level 5 : mengganti suatu huruf secara berulang

2. Manipulasi Autocorrect
Level 1: memasukkan satu “cindera mata” pengenal virus pada suatu kata
Level 2:  mengisi beberapa data AutoCorrect baru
Level 3 : AutoCorrect cerdas

3. Animasi teks
1. Animasi teks level 1
2. Animasi teks level 2

BAB 7. Manipulasi Pesan Sponsor
1.    Pesan sponsor pada pilihan Help About word
2.    Menampilkan pesan pribadi
3.    Memasang pengenal pada user name di program word
4.    Memasangkan  user name pada instalasi sembarang program
5.    Pesan sponsor saat windows dimulai
Tentang PrivateProfileString


Bab 8. Manipulasi dengan file REG
1.    Menghilangkan pilihan RUN dari menu Start
2.    Menghilangkan pilihan Find
3.    Menghilangkan pilihan Shutdown
4.    Menghilangkan pilihan taskbar
5.    Menghilangkan pilihan control panel dan printer
6.    Melumpuhkan file EXE

BAB 9. Selamat datang di neraka !!!
1. Saat file disimpan
2. Saat file dibuka  
3. Saat file Word diaktifkan dengan explorer
4. Saat file ditutup
5.  Saat keluar dari Word

MegatRuh : Suatu Model virus
•    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
•    Listing Model Virus
•    Mengintip kerja virus : suatu pendekatan visual


Bab 10. AntiDot : Si Pembantai Virus Macro
•    Listing Antidot Virus
1. Sub prosedur Antidot
2. Sub prosedur Autoexit
3. Sub prosedur FileOpen dan AutoOpen
4. Sub prosedur AutoClose, FileClose,Autoexit
5. Sub prosedur AutoExec
6. Sub prosedur PTB
•    Membuat Menu Antidot dan memasukkan kode macro
•    Membuat Tab About
•    Membuat tombol perintah
•    Bagaimana memakai program Antidot?
•    Memakai menu program Antidot
•    Memakai program Antidot tanpa menu

Suhu…. Ijinkan murid berguru!






Organisasi Buku

Buku ini dibagi menjadi 10 bab. Dari 10 bab tersebut akan dikelompokkan  menjadi 3 bagian utama.  Bagian pertama lebih kurang adalah pengenalan tentang virus komputer secara global dan khusus.  Terdiri dari 2 bab, yaitu bab 1 dan bab 2.  Bagian kedua adalah implementasi program virus macro sesungguhnya.  Terdiri dari 6 bab,  yaitu bab 3, 4, 5, 6, 7, 8, dan 9.  Bagian ketiga adalah bagaimana melumpuhkan virus macro secara umum.  Terdiri dari 1 bab saja, yaitu bab 10.  Detail dari masing-masing bagian adalah sebagai berikut :

Awal perkenalan  pemakai dengan virus komputer, akan dibahas pada  Bab 1 dengan judul Virus : suatu omong kosong !  Pada bagian ini pembaca akan diajak mengenal tentang virus komputer secara global.  Akan diulas tentang  bagaimana cara virus komputer menyebar. File-file yang berbahaya bagi sistem komputer yang mungkin disisipi virus akan ditunjukkan..  Juga, akan disinggung beberapa jenis virus yang umum ada.  Akan dikemukakan pula alasan pemilihan model virus macro.  Selain itu, untuk menggenapi pengenalan akan virus, akan diulas ciri-ciri file/dokumen data yang dapat dikategorikan termasuk suatu program virus ataukah tidak.

Memasuki, BAB 2. Struktur virus macro , pemakai akan diajak untuk mencermati struktur virus secara lebih khusus.  Khususnya adalah struktur virus macro.  Struktur virus macro yang diulas mencakup : rutin penanda virus, rutin penggandaan diri sendiri, rutin pertahanan dan penjebolan, rutin pemicu, dan rutin manipulasi. Pada bagian ini, akan diulas tentang penanda virus (virus marker) secara lebih lanjut. Selain itu pembaca akan ditunjukkan bagaimana membuat penanda virus dengan memakai penanda Obyek.

Pada Bab 3,  dengan judul Penggandaan diri, akan membahas bagaimana caranya virus macro menggandakan dirinya sendiri.  Dimulai dari bab ini dan selanjutnya pembaca akan dibimbing untuk menelaah program virus yang sesungguhnya!  Listing program yang dibuat dengan bahasa pemrograman built-in  milik Microsoft Word (Visual Basic for Application), yang berupa petikan dari sub prosedur virus macro akan diuraikan dengan cukup gamblang sesuai dengan tujuannya.   Sehingga pembaca dapat langsung melihat sub prosedur program untuk dianalisa dan dipahami.  Bila perlu langsung dapat dipraktekkan untuk diuji coba.
Pada bagian ini akan ditunjukkan teknik penginfeksian yang dilakukan oleh virus macro secara gamblang.  Dua tahapan infeksi dalam rangka penggandaan diri akan diperlihatkan, yaitu tahapan infeksi pada dokumen dan tahapan infeksi pada Global template/normal template. 

Lebih lanjut, Bab 4. Benteng pertahanan,  pembaca akan ditunjukkan bagaimana caranya virus macro menembus benteng pertahanan program aplikasi Microsoft Word.  Selain itu,  akan disinggung bagaimana caranya mengubah kebiasaan perintah Microsoft Word sehingga dapat diperalat oleh virus macro.   Akan ditunjukkan pula bagaimana memasang Jebakan Tool options, mematikan fasilitas macro, mematikan pemakaian editor Visual Basic, mematikan akses ke template dan memasangkan password saat akses macro.  Dengan pematian fasilitas-fasilitas tersebut maka virus akan lebih aman dalam beraksi dan menjaga eksistensinya.  Seperti halnya pada bab terdahulu, pembaca akan dibimbing dengan ditunjukkannya listing program sub prosedur yang dipakai untuk melaksanakan aktivitas tersebut. 

Bab 5. dengan judul Pemicu virus, merupakan bagian yang membahas situasi yang dapat menyebabkan virus macro menjadi aktif,  Akan diuraikan situasi-situasi yang memungkinkan, seperti  : Saat file dibuka secara manual, saat keluar dari program Microsoft Word, saat membuka file yang sudah ada secara otomatis, saat menutup suatu dokumen, saat menyimpan file, dan saat program Microsoft Word dibuka / diaktifkan  Dengan pemicu virus maka suatu virus akan dapat menjalankan aksinya, sesuai dengan keinginan pemrogramnya. Jika dianalogkan dengan sebuah bom, maka bagian ini adalah detenatornya.  Tentu saja, pembahasan akan langsung ditunjukkan dengan listing program sub prosedur yang berhubungan dengannya.

Pada Bab 6 yang berjudul Manipulasi teks,  pembaca akan ditunjukkan manipulasi-manipulasi virus yang dapat dipakai untuk menyerang dokumen.  Tepatnya memanipulasi teks yang ada pada dokumen. Akan diperliihatkan beberapa level manipulasi penggantian huruf.  Seperti mengganti satu huruf, mengganti lebih dari satu huruf, mengganti huruf menjadi kata atau kalimat, mengganti beberapa huruf dengan kalimat, mengganti suatu huruf secara berulang.   Selain itu, manipulasi dengan  Autocorrect dengan beberapa level, akan diperlihatkan  Misalnya : memasukkan pengenal virus pada suatu kata, mengisi beberapa data AutoCorrect baru, dan AutoCorrect cerdas
Pada bagian  ini Animasi teks pun akan dibahas.  Animasi teks level 1 akan berkisar tentang animasi teks Microsoft Word .  Sedangkan Animasi teks level 2, lebih banyak berkisar pada setting font.  Contoh manipulasi-manipulasi ini,  akan langsung ditunjukkan dengan listing program yang berisi sub prosedur yang melakukannya.  Sehingga pembaca dapat langsung membuktikannya bila diinginkan.

Memasuki BAB 7. dengan judul Manipulasi Pesan Sponsor, akan ditunjukkan bagaimana memanipulasi program Microsoft Word dengan pesan-pesan yang kita kehendaki.  Beberapa manipulasi pesan tersebut seperti : pesan sponsor pada pilihan Help About word, menampilkan pesan pribadi, memasang pengenal pada user name di program word, memasangkan  user name pada instalasi sembarang program, dan pesan sponsor saat windows dimulai.  Perintah PrivateProfileString akan sedikit disinggung.
Seperti pada bagian lainnya sub prosedur yang mewakili manipulasi akan ditunjukkan dan dibahas dengan cukup rinci, sehingga pembaca akan paham dengan cara kerjanya.

Melengkapi aksi manipulasi, pada Bab 8. Manipulasi dengan file REG,  pembaca akan dibimbing untuk melakukan manipulasi secara lebih serius, yaitu memanipulasi sistem komputer dengan memakai registry.  Manipulasi yang dilakukan adalah: menghilangkan pilihan RUN dari menu Start, menghilangkan pilihan Find, menghilangkan pilihan Shutdown, menghilangkan pilihan taskbar, menghilangkan pilihan control panel dan printer dan melumpuhkan file EXE  meskipun manipulasi pada registry yang ditunjukkan cukup sederhana, dengan memahaminya maka pembaca dapat mengembangkannya sesuai kebutuhan.  Pembahasan akan langsung dengan diuraikan listing sub prosedur yang mewakili manipulasi-manipulasi tersebut.

Memasuki BAB 9. dengan judul Selamat datang di neraka !!!  masih akan dibahas soal manipulasi. Pada bagian ini akan ditunjukkan saat-saat yang tepat, untuk mengaktifkan manipulasi virus.  Seperti : saat file disimpan, saat file dibuka, saat file Word diaktifkan dengan explorer, saat file ditutup, dan saat keluar dari Microsoft Word.  Pada bagian inilah, rangkaian dari sub prosedur-sub prosedur yang telah dijabarkan secara panjang lebar pada bab-bab di depan akan dirangkum dan disatukan, sehingga membentuk suatu listing program virus macro yang sesungguhnya dan siap untuk dipakai.  Pada bagian ini akan terdapat bahasan masalah kriteria pengaktifan virus macro, yang dipakai untuk menggenapi kelengkapan model virus macro yang dirancang. 
Selain itu, pembaca juga akan dibimbing bagaimana mengetikkan program tersebut, membuat penanda virus sampai akhirnya program virus siap dijalankan. Untuk menambah pemahaman, pembaca akan diajak mengintip kerja virus secara visual.

Bagian terakhir, yaitu Bab 10. dengan judul AntiDot : Si Pembantai Virus Macro, pembaca langsung dihadapkan dengan Listing Antidot Virus.   Program ini berguna untuk melumpuhkan dan membasmi virus macro. Akan dibahas listing program anti virus  macro tersebut baris demi baris.  Dengan adanya bagian ini, maka virus macro yang kita rancang akan dapat dibasmi.   Selain itu, pembaca juga akan diajak untuk membuat Menu Antidot dan memasukkan kode macro. Terakhir kali akan ditunjukkan bagaimana memfungsikan program antidot tersebut.



Asumsi-asumsi

•    Bila ditemui kata Word, itu berarti program Microsoft Word versi 97.  Saya takut diantara pembaca adalah programmer kelas berat… sehingga begitu mendengar kata Word, otaknya akan segera berasumsi itu adalah salah satu jenis satuan ukuran dalam perhitungan sistem komputer.  Itu lho… saudara sepupu dari bit dan byte. He… he…   oleh karena itu saya harus meluruskannya. 
•    Klik.  Berarti menekan tombol mouse sebelah kiri satu kali
•    Klik ganda. Berarti menekan tombol mouse sebelah kiri dua kali berturut-turut secara cepat
•    Seret.  Berarti menekan tombol mouse sebelah kiri secara terus menerus, sambil menggerakkan mouse.
•    Klik kanan.  Berarti menekan tombol mouse sebelah kanan.

•    Icon wiku/resi/kyai/guru..  Dengan gambar seorang pendekar duduk bersila dengan pedang menancap disampingnya, (sebetulnya gambar pedang akan saya ganti dengan keyboard, tapi tidak jadi karena takut dicap berlebihan…masak keyboard kok ditancapkan ditanah ! :)). Icon ini menunjukkan beberapa pembicaraan, tip, atau ide yang mungkin berguna.


•    Icon listing program.   Diwakili dengan gambar kutu.  (Bukan ! Anak saya protes, ia bilang kutu ini namanya Kepik Emas. Saya jawab, kok tidak kepik platina? Ia tidak menjawab, melengos dan mendiamkan saya selama beberapa hari. Sialan! He… he… :))  Apapun itu hewan…pokoknya menunjukkan bahwa tulisan atau listing program tersebut merupakan bagian program  virus yang sesungguhnya.   Jadi bila diketikkan dan dijalankan tentu saja akan berfungsi.  Jadi hati-hati ya….

•    Icon Emoticon. Icon dengan gambar orang tersenyum atau cemberut, menunjukkan bahwa bagian tersebut sekedar bercanda, agar buku tidak membosankan untuk dibaca.  Jadi…. jangan dianggap serius, apalagi dimasukkan ke hati. 



Tidak ada komentar:

Posting Komentar