Posts

Showing posts with the label crackme

crackme: Bobx's Very hard antidebug +10 antisystem

Image
Download here:  https://crackmes.one/crackme/690cdb672d267f28f69b7bbf MD5: df7d6763f43a35b50065b558348f6e65 SHA1: 9e9faabd7bd09a04cf620fde52f6f8a77890053e SHA256: 2d192e5dd555176eb43868d5117fa98885f102f0ac9c8a1964a6c35f63080464 This is listed as a C/C++ x64 executable with a difficulty rating of 3.0. The author is Bobx and the executable is written for Windows. The authors description:  Good Luck and Have A Lot Of Fun ;) When you load the executable in Ghidra, you can very clearly see what is going on.    Let's take a look at the ValidatePassword function. A buffer is passed to the GetPassword function and then our input is compared against it. If they match, the function returns true, otherwise it returns false.   Let's see what the GetPassword function looks like. Hmm, it looks like mistakes were made. We can essentially ignore everything except the last 5 lines of code. The correct password buffer is very clearly getting loaded with a hardcoded string. This...

Crackme: FentCat's Assembler Crackme

Image
Download here:  https://crackmes.one/crackme/68fce1922d267f28f69b783a MD5: d984f4a4bbb82a815f0c16f55335db9a SHA1: 01b8463234e66e91c96052414eaff8dd7053cd99 SHA256: 104f850cf4e7d3f6bc09d286fcbe651795c632a79ebbc2242ea8be08cd8b8e41 This is listed as an x86 Assembler executable with a difficulty rating of 3.0. The author is FentCat and the executable is written for Windows. The authors description:  Hello, this is my first ever upload. Please give me feedback. Was made in Assembler using nasm. have a great day Loading this executable in Detect it Easy, it appears to be extremely complex but after loading it into Ghidra, you realize that you have a plethora of information available to you. Below is the output and the only variable I named was the return result of validate_password and the g_ variables.   At first I thought maybe the author was trying to fool me into not checking those fake function calls but they are legit fake calls. As you can see below, the call just sets a...

Crackme: antilagvip's medium crackme

Image
Download here: https://crackmes.one/crackme/68e6377b2d267f28f69b7447 MD5: 406af7cd43808f1de221d36d8c7d12d6 SHA1:  736c3fee49a93c60731a2f137545b75311646f9f SHA256: 588211672f26f28731da0d30f2691f23542ea7a825f553a5edc9087dbf52b86e This is listed as a C/C++ x64 executable with a difficulty rating of 3.0. The author is antilagvip and the executable is written for Windows.   The authors description: the right key get the code.. sounds simple right?   This was a fun challenge. I went through the motions. I loaded this in Detect it Easy. It isn't packed. It's a console application. Strings aren't encoded/encrypted. I also loaded it into PE Bear and just looked around. Nothing interesting jumped out at me.   I've talked about how to find the main function in previous posts so I'm just going jump in and say that it is located at 0x140001180. Pretty basic stuff, it prompts you for a key and waits for input. It calls a function that validates whether your key is valid and ...

Crackme: git's simple crackme medium-hard

Image
Download here: https://crackmes.one/crackme/68e2b4652d267f28f69b738e MD5: 49c66031be227cc5982daadfd7368e9d SHA1: 0f01dfd5c1775dd7b605c992903d67bbafa3051f SHA256: 67b06c9c003f0c26c319d82b1fc6436207eaf0e3ed31f438312be8349225272f This is listed as a C/C++ x64 executable with a difficulty rating of 2.5. The author is git and the executable is written for Windows. The authors description: medium-hard crackme with antidebug checks obfuscated strings and key With this crack me, I'm going to take a bit of a different approach. I'm not going to use a decompiler. Taking a look at the strings, I can see some base64 encoded strings. Other than that, Detect it Easy believes this was compiled using Visual Studio 2022 as a console application. It does not appear to be packed. IDA shows us a long series of various debugger checks. At this point, I will manually step through the code and navigate the executable to the good boy. The base64 decode function takes the encoded string and a buffer a...

Patchme: genass3's Patch protect

Image
Download:  https://crackmes.one/crackme/68b2c2768fac2855fe6fb9be MD5: 12b79adcbcc2b6aac0e6d84adbf0f6e7 SHA1: 716dbe22f9b6c55102e72e2dfef220819b0eff97 SHA256: 4f8cb7e39950c2571b1151d5da5a64b9ed4f91e425bc6d5b29a5d8513ac6bdce This is listed as a C/C++ x64 executable with a difficulty rating of 2.0. The author is genass3 and the executable is written for Windows. The authors description: Try to patch, should be not so hard, also you can find password very easily, if you have eyes :) Ur main goal is patch. Also feel free to give a feed back about the protection, i would like to read and improve. The source code of the protection - https://github.com/generin0/PatchGuard The source code of the crackme - https://github.com/generin0/crackme1 I think we should normalize including the source code to crackme challenges. For one, it would make it easier to know whether they're malicious or not. Two, it makes for a great learning aid. The old adage to learning reverse engineering was "wr...

Crackme: atherusti's First C program

Image
Download here: https://crackmes.one/crackme/68c96889224c0ec5dcedc063 MD5: fdb187c953ae9e0e98e18b1fc0683ef1 SHA1: e1f4f4a1e0629ba38cfa567c45cbee6092aabf0a SHA256: 03832f7e8e8fdfd6ee87ef4efb3eab52252edbfe246c9d2bfdd39166a27c9e30 This is listed as a C/C++ x64 executable with a difficulty rating of 2.0. The author is atherusti and the executable is written for Windows. The authors description: never coded before making this crackme, get the password That's a really interesting first programming project but I'm all for it. Let's tear this bad boy apart and see how they did. The first thing that immediately jumps out to me is seeing that it is actually an x86 executable. No big deal but its something to keep in mind. Our calling conventions are going to change. I also don't expect to see a shadow stack. One final note, this is a console application. Taking a look at the string entries doesn't really reveal anything. I find that a little strange. They must be encoded/encry...

Crackme: LAG's crack me test

Image
Download here: https://crackmes.one/crackme/68c8f641224c0ec5dcedc044 MD5: c73e472c7762fce291af0aec40bc67be Sha1: 22adcf120b680d8cb916de201b272c12c4aef6fa Sha256: d7e62af3e23649224c6d9481deab9bef13de041eafb243098f41e1a008335376 This is listed as C/C++ x64 executable with a difficulty rating of 2.2. The author is LAG and the executable is written for Windows. The authors description: this is a file I've worked on for a couple of hours i'm just wanting to see how well my security is I couldn't crack it myself so if you guys can good job and I've probably done a really bad job but just wonder if anybody could do it it should be pretty hard but I could be wrong it's just a simple password thing you have to put the password in and if you get it right it sounds good If you fire up Detect it Easy and analyze the executable, everything checks out. Note that this is a console application. Taking a look at the strings, we can begin to make some assumptions. We can assume that ...

Crackme: Meist's Passfind Crackme

Image
  Today we're going to be solving "meist's passfind" crackme. It is described as the most easy crackme that the author could come up with. One simply needs to find the password and enter it. Great! Available here: https://crackmes.one/crackme/68be3593224c0ec5dcedbe2d MD5: f7215afaac27af81c31362fe09b0e17d SHA1: f4fbe3a9d2afad8cf4b31aac2b5fe308d0d1e3f8 SHA256:  752ed87f3783e8ba14f1585152a6abf4f8e174ca3635b705a7a9c0f88b6405e5 Running Detect it Easy, we can see that the executable is compiled as an x64 PE console application but we're unable to determine what compiler was used or what language it was written in. Taking a look at the strings, it's possible that this was compiled using the mingw compiler and possibly written in assembly. That would explain why DIE had so little information on the binary.   Dropping the executable in Ghidra and running all the defaults, we're greeted with this:   Let's take this step by step. I took a look inside of the __mai...