Sebuah proses dapat diidentifikasi sebagai proses virus dengan melihat icon proses, alamat proses, serta ukuran virus. Icon virus biasanya berbentuk folder,
beralamat di directory sistem dan berukuran kecil.
4.6 Database Virus
Database virus berguna untuk menyimpan semua signature virus yang akan di scan. Database ini disimpan dalam bentuk teks dengan format penulisan “nilai CRC32 virus
= nama virus”. Contoh format penulisan: D1B5028F = vir1. Pada saat program antivirus dijalankan maka proses pertama yang dilakukan oleh antivirus adalah
memeriksa apakah ditemukan database atau tidak, jika tidak ditemukan maka program akan otomatis berhenti. Kode program pada proses pemeriksaan database virus adalah
sebagai berikut:
If IsFileExist addBackSlashApp.Path “dbVirus.txt” = False Then
MsgBox “Database Virus Tidak Ditemukan. Program selesai”, vbCritical, “Error”
End End If
Untuk menampilkan proses virus yang sedang berjalan dalam bentuk tabel, kode program yang diperlukan adalah sebagai berikut:
With lProcess.ColumnHeaders .Add , , , 350
.Add , , “PID”,800 .Add , , “Nama Virus”,1600
.Add , , “Nama Proses”,1600 .Add , , “Alamat Proses”,4000
.Add , , “Ukuran”,1800 End With
Me.Caption = CRCFromStringNow
Universitas Sumatera Utara
Peng-update-an antivirus dapat dilakukan dengan menambahkan nilai CRC32 dari virus-virus baru kedalam database antivirus dalam format text. Seperti yang
ditunjukkan oleh gambar berikut:
Gambar 4.4 Tampilan database virus 4.7 Search Engine Virus
Search engine merupakan suatu fitur yang harus ada dalam sebuah program antivirus. Karena search engine akan mencari hasil penggandaan virus yang ada
di harddisk. Search engine bekerja berdasarkan database yang dipakai oleh antivirus. Search engine yang akan dibangun tidak terpengaruh pada ekstensi file
virus, dan dapat melakukan scanning terhadap folder yang dishare oleh komputer dalam sebuah jaringan.
Kontrol utama yang diperlukan untuk membuat search engine virus adalah
1 buah listview 2 buah imagelist
2 buah picturebox 1 buah listbox
1 buah label
Universitas Sumatera Utara
1 buah textbox 1 buah checkbox
3 buah command button.
Property masing-masing kontrol adalah sebagai berikut:
Property Value
A Name LFound
FullRowSelect TRUE
GridLines TRUE
LabelEdit 1 - lvwManual
MultiSelect TRUE
View 3 - lvwReport
Checkboxes TRUE
B Name ImgLarge
ImageHeight 32
ImageWidth 32
Visible FALSE
C Name ImgSmall
ImageHeight 16
ImageWidth 16
Visible FALSE
D Name PicIcon32
Height 480
Width 480
Background Color H00FFFFFF
Visible FALSE
E Name PicIcon16
Height 240
Width 240
Background Color H00FFFFFF
Visible FALSE
F Name LstTemp
Visible FALSE
G Name LblStatus
Caption Silahkan lakukan pencarian
H Name TxtPath
Text {kosong}
I Name
ChkSubFolder Caption
Termasuk Sub Folder J Name
CmdBrowse Caption
Browse K Name
CmdScan Caption
Lakukan scan terhadap folder terpilih L Name
CmdDelVirus Caption
Hapus Virus yang terdeteksi
Tabel 4.4 Property dan Value Pada Kontrol Search Engine Virus
Universitas Sumatera Utara
Fungsi dari masing-masing kontrol adalah sebagai berikut:
a. lFound Berfungsi untuk menampilkan list virus yang berhasil di scan oleh search engine.
List view ini akan menampilkan informasi tentang virus, yaitu: 1. Icon Virus
2. Nama Virus 3. Nama File Virus
4. Alamat Virus 5. Ukuran Proses
b. ImgLarge Jika program dieksekusi maka kontrol ini tidak akan ditampilkan. Kontrol ini
berfungsi sebagai tempat penyimpanan icon virus 32px X 32px yang terdeteksi.
c. ImgSmall Jika program dieksekusi maka kontrol ini tidak akan ditampilkan. Kontrol ini
berfungsi sebagai tempat penyimpanan icon virus 16px X 16px yang terdeteksi.
d. picIcon32 Jika program dieksekusi maka kontrol ini tidak akan ditampilkan. Kontrol ini
berfungsi sebagai tempat pemrosesan ekstract icon virus yang terdeteksi 32px X 32px
e. picIcon16 Jika program dieksekusi maka kontrol ini tidak akan ditampilkan. Kontrol ini
berfungsi sebagai tempat pemrosesan ekstract icon virus yang terdeteksi 16px X 16px
f. lstTemp Berfungsi untuk menampung hasil pencarian oleh search engine. Setiap perubahan
pada lstTemp akan langsung ditampilkan pada lFound
Universitas Sumatera Utara
g. lblStatus Berfungsi untuk menampilkan status aktivitas dari search engine
h. txtPath Sebagai tempat menuliskan alamat folder atau drive yang akan discan.
i. chkSubFolder Sebagai nilai indikator apakah search engine akan melakukan scan pada sub folder
atau tidak. Jika statusnya terpilih maka search engine akan melakukan scanning pada subfolder
j. cmdBrowse Berfungsi untuk memanggil prosedur BrowseForFolder , yang akan
menampilkan form untuk melakukan browsing pada folder.
k. cmdScan Berfungsi untuk menampilkan prosedur FindFilesAPI yang akan melakukan
pencarian terhadap folder yang telah dipilih.
l. cmdDelVirus Tombol ini berfungsi untuk menghapus semua file virus yang berhasil discan dan
di list di lFound.
Prosedur-prosedur yang digunakan adalah sebagai berikut: a.
Dim delCancel As Boolean Prosedur ini berfungsi sebagai status untuk menghentikan proses pencarian
pada search engine b.
Form_Load Private Sub Form_Load0
If IsFileExist addBackSlash App.Path “dbVirus.txt” = False Then
MsgBox “Database Virus Tidak Ditemukan”, vbCritical, “Error”
Universitas Sumatera Utara
End End If
With lFound.ColumnHeaders .Add , , , 640
.Add , , ”Nama Virus”, 1100 .Add , , ”Nama File Virus”, 1700
.Add , , ”Alamat proses”, 4000 .Add , , “Ukuran”, 1800
End With Me.Caption = CRCFromStringNow
End Sub
Form_Load memastikan apakah file database virus yaitu dbVirus.txt ada. Selain itu prosedur ini juga berfungsi untuk membuat kolom-kolom pada lFound
untuk menempatkan informasi virus yang terdeteksi.
c. cmdBrowse_Click
Private Sub cmdBrowse_Click t = BrowseForFolder, “Silahkan Pilih Folder”, , ,
txtPath,True If t “” Then
TxtPath = t End If
End Sub
d. cmdScan_Click
Private Sub cmdScan_Click If cmdScan.Caption = Lakukan Scan Terhadap
Folder Terpilih Then lstTemp.Clear
lFound.ListItems.Clear StartFind
cmdScan.Caption = Hentikan pencarian...
Universitas Sumatera Utara
FindFilesAPI txtPath, ., False, lstTemp, , Not CBoolchkSubFolder.Value
cmdScan.Caption = Lakukan Scan Terhadap Folder Terpilih
lblStatus.Caption = lFound.ListItems.Count virus terdeteksi dari GetFileCount file
di dalam GetDirCount folder ClearCount
Else CancelFind
cmdScan.Caption = Lakukan Scan Terhadap Folder Terpilih
lblStatus.Caption = Silahkan lakukan Pencarian.....
End If End Sub
e. lstTemp_Click
Prosedur ini akan memonitor perubahan yang terjadi pada prosedur lstTemp. Jika ada perubahan, maka prosedur ini akan melakukan pemeriksaan terhadap
file yang didapat dari list lstTemp yang baru saja masuk. Jika terdeteksi sebagai virus maka akan dimasukkan kedalam lFound beserta icon dan
informasi-informasi virus.
f. DeleteAction
Prosedur ini berfungsi untuk melakukan penghapusan terhadap file virus yang terdeteksi. Selain itu, sebelum melakukan penghapusan terhadap file apakah
akan dihapus langsung atau hanya dipindahkan ke recycle bin.
g. cmdDelVirus_Click
Prosedur ini berfungsi untuk memanggil prosedur DeleteAction.
Universitas Sumatera Utara
4.8 Pengujian Program