| Hacks & Crackmes Tests, Fragen oder Hilfestellungen. Crackmes und Hackits werden hier diskutiert. |
Diskussion: Kleines Crackme [sehr einfach] im Forum Hacks & Crackmes, in der Kategorie Software Home; Hallo, Hab auch mal probiert ein kleiner Crackme zu schreiben Dürfte für euch recht einfach zu lösen sein. Es ist ...
![]() |
| | #1 (permalink) |
| Kleines Crackme [sehr einfach] Hallo, Hab auch mal probiert ein kleiner Crackme zu schreiben Dürfte für euch recht einfach zu lösen sein. Es ist Gelöst wenn ihr dir Ausgabe "crackme ist geschafft" erhaltet patchen ist verboten! gruß virus | |
| | |
| | #2 (permalink) |
| Registriert seit: 08.03.02 ![]() Likes: 0 | Hi, eigentlich ganz leicht ![]() PW wird (und ist es auch) wohl nicht länger als 9 Zeichen sein MfG fbisa |
| | |
| HaBOT | |
| |
| | #3 (permalink) |
| Registriert seit: 28.05.08 ![]() Likes: 0 | Hallo Virus, das Passwort ist the_uxreal ![]() Editiert von CDW -> Spoilertags |
| | |
| | #4 (permalink) |
| Registriert seit: 07.03.08 ![]() Likes: 0 | hatte ich gestern schon raus, nur wollte er das pw nie fressen... hatte nicht gesehen dass es keine Null sondern ein O war :/ olly disasm Code: Address Hex dump Command Comments 00401430 |. E8 ABBD0000 CALL 0040D1E0 ; Allocates EAX bytes on stack 00401435 |. E8 E6B90000 CALL 0040CE20 ; [crackme.0040CE20 0040143A |. C74424 04 080 MOV DWORD PTR SS:[ESP+4],OFFSET crackme. ; ASCII "Hallo bitte gib das Passwort ein" 00401442 |. C70424 E03344 MOV DWORD PTR SS:[ESP],OFFSET crackme.00 00401449 |. E8 7AAD0300 CALL 0043C1C8 ; [crackme.0043C1C8 0040144E |. C74424 04 98A MOV DWORD PTR SS:[ESP+4],crackme.0043AF9 00401456 |. 890424 MOV DWORD PTR SS:[ESP],EAX 00401459 |. E8 C28C0200 CALL 0042A120 0040145E |. C74424 04 1C3 MOV DWORD PTR SS:[ESP+4],OFFSET crackme. 00401466 |. C70424 E03344 MOV DWORD PTR SS:[ESP],OFFSET crackme.00 0040146D |. E8 56AD0300 CALL 0043C1C8 ; [crackme.0043C1C8 00401472 |. C74424 04 98A MOV DWORD PTR SS:[ESP+4],crackme.0043AF9 0040147A |. 890424 MOV DWORD PTR SS:[ESP],EAX 0040147D |. E8 9E8C0200 CALL 0042A120 00401482 |> C74424 08 0A0 /MOV DWORD PTR SS:[ESP+8],0A 0040148A |. 8D45 E8 |LEA EAX,[LOCAL.7] 0040148D |. 894424 04 |MOV DWORD PTR SS:[ESP+4],EAX 00401491 |. C70424 803444 |MOV DWORD PTR SS:[ESP],OFFSET crackme.0 00401498 |. E8 B3580200 |CALL 00426D50 0040149D |. 8D45 E8 |LEA EAX,[LOCAL.7] 004014A0 |. 890424 |MOV DWORD PTR SS:[ESP],EAX 004014A3 |. E8 E8FEFFFF |CALL 00401390 004014A8 |. A3 14304400 |MOV DWORD PTR DS:[443014],EAX 004014AD |. 833D 14304400 |CMP DWORD PTR DS:[443014],1 004014B4 |. 75 16 |JNE SHORT 004014CC 004014B6 |. C74424 04 290 |MOV DWORD PTR SS:[ESP+4],OFFSET crackme ; ASCII "crackme " 004014BE |. C70424 E03344 |MOV DWORD PTR SS:[ESP],OFFSET crackme.0 004014C5 |. E8 FEAC0300 |CALL 0043C1C8 ; [crackme.0043C1C8 004014CA |. EB 24 |JMP SHORT 004014F0 004014CC |> C74424 04 320 |MOV DWORD PTR SS:[ESP+4],OFFSET crackme ; ASCII "passwort falsch!" 004014D4 |. C70424 E03344 |MOV DWORD PTR SS:[ESP],OFFSET crackme.0 004014DB |. E8 E8AC0300 |CALL 0043C1C8 ; [crackme.0043C1C8 004014E0 |. C74424 04 98A |MOV DWORD PTR SS:[ESP+4],crackme.0043AF 004014E8 |. 890424 |MOV DWORD PTR SS:[ESP],EAX 004014EB |. E8 308C0200 |CALL 0042A120 004014F0 |> 833D 10304400 |CMP DWORD PTR DS:[443010],1 004014F7 |. 74 02 |JE SHORT 004014FB 004014F9 |.^ EB 87 \JMP SHORT 00401482 004014FB |> 833D 10304400 CMP DWORD PTR DS:[443010],1 00401502 |. 75 24 JNE SHORT 00401528 00401504 |. C74424 04 430 MOV DWORD PTR SS:[ESP+4],OFFSET crackme. ; ASCII "ist geschaft!" 0040150C |. C70424 E03344 MOV DWORD PTR SS:[ESP],OFFSET crackme.00 00401513 |. E8 B0AC0300 CALL 0043C1C8 ; [crackme.0043C1C8 00401518 |. C74424 04 98A MOV DWORD PTR SS:[ESP+4],crackme.0043AF9 00401520 |. 890424 MOV DWORD PTR SS:[ESP],EAX 00401523 |. E8 F88B0200 CALL 0042A120 00401528 |> C70424 510044 MOV DWORD PTR SS:[ESP],OFFSET crackme.00 ; ASCII "pause" 0040152F |. E8 9CF20000 CALL <JMP.&msvcrt.system> ; Jump to msvcrt.system 00401534 |. B8 00000000 MOV EAX,0 00401539 |. C9 LEAVE 0040153A \. C3 RETN |
| | |
| | #5 (permalink) |
| Themenstarter | Servus, Hier ist noch der Quelltext für die die es intressiert (Wundert Euch nicht über die Programmierweise ich hab gedacht wenn ich unsinnige Funktionen etc schreibe verwirrt das euch und ich kommt so schnell nicht ans passwort... War wohl ein Fehlschluss) Code: #include <cstdlib>
#include <iostream>
#include <cstring>
using namespace std;
int solved = 0;
int a = 0;
int r = 0;
char passwort[10];
int test(char eingabe[10]);
int test( char eingabe[10] ) {
if (!( r == 1)) {
strncpy(passwort, "gZf3O6", 6 );
r = 1;
}
for (int i=1; i<6 ;i++) {
if (!(passwort[i] == eingabe[i])) {
return 0;
}
}
solved = 1;
return 1;
}
int main(int argc, char *argv[])
{
char pw[10];
cout << "Hallo bitte gib das Passwort ein" << endl;
cout << passwort << endl;
do {
cin.getline( pw, sizeof(pw));
a = test( pw );
if ( a == 1 ) {
cout << "crackme ";
}
else {
cout << "passwort falsch!" << endl;
}
} while ( !(solved == 1) );
if (solved == 1 ) {
cout << "ist geschaft!" << endl;
}
system("pause");
return EXIT_SUCCESS;
} |
| | |
| | #6 (permalink) |
| Registriert seit: 07.03.08 ![]() Likes: 0 | Hallo Virus, Das 08/15 Konstrukt Code: If (sUsereingabe == "1234-serial-1234"){
cont << "crackme geschafft"
}else{
cont << "serial falsch"
} Anstatt einen 1 zu 1 Vergleich zu machen, solltest du die Serial durch ein paar routinen Schicken die die Userserial auf ein paar Dinge testen - und so entscheiden ob die Serial gültig ist oder nicht. |
| | |
| | #7 (permalink) |
| Themenstarter | yop, danke für die tipps, ich dachte wenn ich dem string erst später seinen wert (per strncpy ) zuweise würde das etwas brignen... ![]() gruß virus |
| | |
| | #8 (permalink) |
| Registriert seit: 31.01.08 ![]() Likes: 0 | juhuuuu mein allererstes Crackme geschafft ^^ Habe beim PW auch das das O mit einer 0(Null) Verwechselt^^ |
| | |
| | #9 (permalink) |
| Hallöle! Ich weiß, dass dieser Thread mittlerweile schon etwas veraltet ist, aber dennoch würde ich gern was loswerden: Wie genau lest ihr denn das PW aus dem Register?? Oder noch besser: Wo genau??^^ Ich komme nicht mal bei der Analyse weiter...Wenn ich das Programm mit OllyDbg öffne, und Schritt für Schritt mit dem Pfeilbutton (oben) durchlaufen lasse, so stoppt er bei der Eingabe des Passwortes...aber was dann?? Dann kann ich mit meiner Analyse ja nur noch im Kopf weitermachen...aber wie kann ich dann irgendetwas aus nem Register auslesen, und wie genau mache ich das überhaupt?? Viele Grüße Gapa | |
| | |
| | #10 (permalink) |
| Registriert seit: 08.03.07 ![]() Likes: 1 | Zuerst setzt du einen Breakpoint auf die Stelle, an der die Eingebe eingelesen wird. Nach dem Einlesen der Eingabe, wird eine Funktion aufgerufen, die das Passwort prüft: olly Hier kannst du das pw ganz leicht ablesen. Solltest du nicht wissen, wie man Olly bedient -> google Bevor du anfängst zu versuchen crackmes durch sinnloses rumklicken in Olly zu lösen, solltest du dir die Grundlagen von Assembler ansehen. Am besten schreibst du eigene Programme bspw. in C, und versuchst deren Ablauf in Olly nachzuvollziehen. mfg, loose |
| | |
| | #11 (permalink) |
| Hallo loose, sehe ich das jetzt richtig, dass du einfach nur das PW aus der Kommentarliste abließt?? Ich dachte die ganze Zeit, man lese das PW irgendwie aus dem Register aus...?! Und aus dieser Zeile werde ich nicht ganz schlau: Code: 004013A7 |. C74424 04 0000>MOV DWORD PTR SS:[ESP+4],crackme.0044000>; |ASCII "gZf3O6" Grüße Gapa | |
| | |
| | #12 (permalink) | |||
| Registriert seit: 08.03.07 ![]() Likes: 1 | Zitat:
An der Adresse findest du dann das PW. Zitat:
Zitat:
| |||
| | |
| | #13 (permalink) |
| Registriert seit: 28.05.08 ![]() Likes: 0 | Hallo loose, deine Lösung ist völlig akzeptabel, jedoch geht das noch einfacher, aber ist jedoch umständlicher. Ich schildere kurz in Stichpunkten wie ich vorgegangen bin:
![]() the_uxreal |
| | |
![]() |
| | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Sehr einfaches CrackMe | Wotan | Hacks & Crackmes | 22 | 11.11.09 12:28 |
| Erstes crackme: ganz einfach | ]=-antr4xx-=[ | Hacks & Crackmes | 13 | 24.01.08 15:34 |
| kleines stegano von mir | ByteWolf | Cryptography & Encryption | 12 | 19.04.06 20:00 |
| PC sehr sehr langsam, CPU ? | Obmud | Die Problemzone | 5 | 19.03.06 23:13 |
| Meine erste ASM Crackme EINFACH -solved- | Xalon | Hacks & Crackmes | 5 | 13.11.05 16:41 |