Upload:
6:54 PM 07/06/2022
Description
A CrackMe written in C, as I'm learning it. Let me know how you find it! (It's easy).
SofiaB8921 on 7:00 PM 07/23/2022: Can someone help me solve this? I found the function that generates the password from the username and figured out how it works but I don't understand it. It is adding both a character and an integer cast to a character and another character all together and setting it to one index of the password result. I don't understand how it casts it or how you can add all of them and get one value for the index of the password.
hdbg on 4:55 AM 07/24/2022: Simple one, requires extended ascii but still enjoyed
=======SPOILER==========
Username: !
Password: ‡
nassimorg on 5:59 PM 07/30/2022: how to solve this plz put a solution
timotei_ on 8:14 PM 07/31/2022: @SofiaB8921
It takes the value of a character of the username, add the value of the current position and the value 101 to it. The result will be stored as a new charakter. So for the username "timotei" the password would look like: ("t"+0+101),("i"+1+101=Ù),("m"+2+101=Ï),("o"+3+101=Ô) ... In the end the result will be: ÙÏÔ×ÝÏÔ
nassimorg on 10:10 AM 08/01/2022: @timotei_ can u teach me plz idk how to solve this one
shadow299 on 7:40 AM 08/06/2022: hey guys,
i solved this crackme by just reversing the jump.
after this every username and password is valid.
xin999 on 7:05 PM 08/16/2022: i guess you could just change the jne instruction to jmp and jump to 0x0040149D, if thats a dumb way to solve it im sorry im new to this
jin246 on 5:28 PM 10/03/2022: **********SPOILER***************
I solved it by changing the eax to 1 right before the jne 1 to it loads the solved state and not jump to the fail state
jin246 on 5:36 PM 10/03/2022: does this count at patching? (sorry, I'm new to this)
jinzi0113@163.com on 7:23 AM 10/17/2022: speculate c lang
#include
#include
int main(int argc, char *argv[])
{
char chpUser[12] = {0};
char chpPass[12] = {0};
char chpCreatePass[12] = {0};
printf("What's Your Username [Max 10 Char]\n");
scanf("%s", chpUser);
for(int i = 0;;++i)
{
int bIsOk = strlen(chpUser) i;
if((bIsOk & (strlen(chpUser) i)) == 0)
{
break;
}
chpCreatePass[i] = chpUser[i] + i + 101;
}
printf("What's The Password\n");
scanf("%s", chpPass);
if(strcmp(chpPass, chpCreatePass) == 1)
{
printf("Nice! Submit your solution on crackmes.one!\n");
}
else
{
printf("Incorrect! Try again.\n");
}
return 0;
}
Brdfe on 5:11 PM 08/31/2023: Is strcmp() == 1 intended?
You must me logged to submit a solution