<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Crackme on Siddharth Mishra</title><link>http://brightprogrammer.in/tags/crackme/</link><description>Recent content in Crackme on Siddharth Mishra</description><generator>Hugo</generator><language>en</language><lastBuildDate>Fri, 01 May 2026 20:09:23 -0700</lastBuildDate><atom:link href="http://brightprogrammer.in/tags/crackme/index.xml" rel="self" type="application/rss+xml"/><item><title>One Instruction Set Computer Challenge from TetCTF - NOR VM (Elvis's Magic Box)</title><link>http://brightprogrammer.in/posts/one-instruction-set-computer-challenge-from-tetctf-nor-vm-elviss-magic-box/</link><pubDate>Fri, 10 Feb 2023 07:07:01 +0000</pubDate><guid>http://brightprogrammer.in/posts/one-instruction-set-computer-challenge-from-tetctf-nor-vm-elviss-magic-box/</guid><description>&lt;h1 id="elvis-magic-box">Elvis Magic Box&lt;/h1>
&lt;p>After completing the &lt;a href="http://brightprogrammer.in/posts/a-self-debugging-software-protection-challenge/">previous&lt;/a> CrackMe based on a very good Anti-Debug technique (which can be further improved as I pointed out in that post by reading a research paper), Elvis, the author of previous challenge gave me another challenge. He already gave me a major hint about the challenge which you usually don’t get in real world scenarios. This challenge is another VM challenge and is an &lt;code>OISC&lt;/code> (&lt;strong>One Instruction Set Computer&lt;/strong>)&lt;/p></description></item><item><title>Elvis Protected CrackMe</title><link>http://brightprogrammer.in/posts/a-self-debugging-software-protection-challenge/</link><pubDate>Sat, 28 Jan 2023 05:48:16 +0000</pubDate><guid>http://brightprogrammer.in/posts/a-self-debugging-software-protection-challenge/</guid><description>&lt;h1 id="elvis-protected-crackme">Elvis Protected CrackMe&lt;/h1>
&lt;figure class="image-block">
 &lt;a href="images/Untitled.png">
 &lt;img src="images/Untitled.png" alt="" loading="lazy" />
 &lt;/a>
&lt;/figure>

&lt;p>If the named mutex &lt;code>MATESCTF_2019&lt;/code> is not present then the control flows into second function. I debugged the process and it enters into the second one by default as it should (as expected because from the beginning, there are no mutices created automatically). There are interesting things coming… Wait for it!&lt;/p>
&lt;p>The decompiled code looks like this. Pretty neat and clean (as expected for windows programs).&lt;/p></description></item><item><title>Solving Rubik's Cube For A Crackme - s01den's cube</title><link>http://brightprogrammer.in/posts/solving-rubiks-cube-for-a-crackme-s01dens-cube/</link><pubDate>Sun, 04 Dec 2022 13:09:08 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-rubiks-cube-for-a-crackme-s01dens-cube/</guid><description>&lt;p>This crackme is less about actual reverse engineering and more on the programming side. You must have some decent knowledge of computer science and algorithms to solve this. Figuring out what the crackme is actually asking was a lot easier than convincing myself to actually solve it after that! I spent almost three days to solve this one. I figured out what I have to do on the second day of starting but I&amp;rsquo;m kinda lazy so I spent the rest of day looking for easier solutions (this crackme has kinda different solution).&lt;/p></description></item><item><title>Bruteverse Solution - A Simple Bruteforce Attack</title><link>http://brightprogrammer.in/posts/bruteverse-solution-a-simple-bruteforce-attack/</link><pubDate>Fri, 02 Dec 2022 15:35:35 +0000</pubDate><guid>http://brightprogrammer.in/posts/bruteverse-solution-a-simple-bruteforce-attack/</guid><description>&lt;p>T﻿his is also another easy crackme. I don&amp;rsquo;t know why is it rated 4.0 in difficulty. It should be like 2 or less than that. All you have to do is read the assembly of the program or decompiled code (if available) and everything will be clear. When I opened this in IDA first I saw that this only had one simple function. I was confused that a 4.0 rated challenge and only this function? Maybe something advanced was going on. So I objdumped it and found nothing more than what was already shown in IDA.&lt;/p></description></item><item><title>Solving A Keygen Like CrackMe</title><link>http://brightprogrammer.in/posts/solving-a-keygen-like-crackme/</link><pubDate>Fri, 02 Dec 2022 06:50:35 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-a-keygen-like-crackme/</guid><description>&lt;p>Y﻿ou can download the challenge binary from &lt;a href="https://crackmes.one/crackme/63710e2433c5d43ab4eceac6">here&lt;/a>. This is a keygen like crackme. Program asks you for a key that isn&amp;rsquo;t directly stored inside the program. You have to reverse the key checking algorithm to genreate key. Basically this is what a keygen is! There are a few tricks in this program as the author tried to make it little bit fun.&lt;/p>
&lt;p>R﻿un the binary and you&amp;rsquo;ll see this :&lt;/p>
&lt;figure class="image-block">
 &lt;a href="screenshot-from-2022-12-02-12-26-58.png">
 &lt;img src="screenshot-from-2022-12-02-12-26-58.png" alt="" loading="lazy" />
 &lt;/a>
&lt;/figure>

&lt;p>O﻿n checking your &lt;code>pwd&lt;/code> you&amp;rsquo;ll notice that there&amp;rsquo;s a new file created. Opening that file reaveals nothing useful. So we jump to IDA to see it&amp;rsquo;s decompilation.&lt;/p></description></item><item><title>Solving The Easiest Crackme Of All Time</title><link>http://brightprogrammer.in/posts/solving-the-easiest-crackme-of-all-time/</link><pubDate>Fri, 02 Dec 2022 04:42:29 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-the-easiest-crackme-of-all-time/</guid><description>&lt;p>H﻿i folks! My exams ended recently and I started working on my skills again. I&amp;rsquo;ve been learning cryptography and binary exploitation for past few days but my reversing skills havent improved much since past year. So I plan to solve atleast one crackme per day and write about it on my blog. This gives me motivation to keep on going (but I never actually go on)&lt;/p>
&lt;h2 id="most-easiest-crackme-of-all-time">M﻿ost Easiest Crackme Of All Time&lt;/h2>
&lt;p>P﻿robably one of the main reasons I&amp;rsquo;m writing about this is because this binary failed to load when loaded in IDA due to some bad sections. You can download the binary from &lt;a href="https://crackmes.one/crackme/637c66b633c5d43ab4ecec2a">here&lt;/a>.&lt;/p></description></item><item><title>Solving a VM CrackMe</title><link>http://brightprogrammer.in/posts/solving-a-vm-crackme/</link><pubDate>Sat, 25 Dec 2021 18:06:24 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-a-vm-crackme/</guid><description>&lt;p>I&amp;rsquo;m always having problems solving a VM obfucscation challenge in any CTF. This time I plan to end this by solving a VM CrackMe. I got this from a team-mate ( &lt;a href="https://twitter.com/h4x5p4c3">h4x5p4c3&lt;/a> ), another helpful team-mate.&lt;/p>
&lt;p>Here are a few resources before we begin :&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://youtu.be/b6udPT79itk">Analysis Of Virtualization-based Obfuscation&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://drive.google.com/file/d/1Yc54_ogPcVUpFICXVPOnFLsGvS8Xq668/view?usp=sharing">The challenge&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>As I mentioned earlier, I am not good with VM crackmes but when I started following that video (first), just 40 minutes into the video and I&amp;rsquo;m able to detect the dispatcher function. I highly recommend anyone who really wants to learn. I&amp;rsquo;ll be solving a few VM crackmes to improve my skills. I have basic reversing skills but I have a bad habit of getting stuck in useless functions or parts of code like we did with XVM. Our goal was to solve the crackme and I started to reconstruct the whole code. I won&amp;rsquo;t be doing such things in this one. Although we might go into detail.&lt;/p></description></item><item><title>Solving X3eRo0's CrackMe The Hard Way</title><link>http://brightprogrammer.in/posts/solving-x3ero0s-crackme-the-hard-way/</link><pubDate>Fri, 03 Sep 2021 17:50:32 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-x3ero0s-crackme-the-hard-way/</guid><description>&lt;hr>
&lt;blockquote>
&lt;p>“Arguing that you don&amp;rsquo;t care about the right to privacy because you have nothing to hide is no different than saying you don&amp;rsquo;t care about free speech because you have nothing to say.”
― Edward Snowden&lt;/p>&lt;/blockquote>
&lt;hr>
&lt;p>In this post, I will make an attempt to solve &lt;a href="https://crackmes.one/user/X3eRo0">X3eRo0&lt;/a>&amp;rsquo;s crackme named &lt;a href="https://crackmes.one/crackme/60be2a6033c5d410b8842c91">Pyaz&lt;/a>. Below is the information provided on crackme&amp;rsquo;s page&lt;/p>
&lt;pre tabindex="0">&lt;code>;------------------;----------------;------------;
| Platform | Difficulty: | Quality: |
| Unix/linux etc. | 4.0 | 4.0 |
;------------------;----------------;------------;

;-------------;
| Description |
;-------------;-------------------------------------------------------------------;
| x86_64 linux binary (tested on ubuntu, should run on any distro). Takes input |
| through stdin and outputs &amp;#34;Correct Password&amp;#34; if it&amp;#39;s correct, &amp;#34;Wrong Password&amp;#34; |
| if it&amp;#39;s not. |
| Written in C |
| Don&amp;#39;t patch the binary, of course - find the correct input. |
;---------------------------------------------------------------------------------;
| SHA256: 2078795d5f56c25c09301d345f07a93df915693f9976633040d9093d1a303e98 ./xvm |
| 29bea5fdd57949fb349e7e06c40ad4578aca6b8af6787bf39a9474857db01649 ./pyaz.xvm |
;---------------------------------------------------------------------------------;
&lt;/code>&lt;/pre>&lt;hr>
&lt;p>We will reverse this one by looking at the disassembly only (unlike last time we used Ghidra). This is because, unlike last crackme, this is a complex one and &lt;em>&lt;strong>I like to feel like GOD after solving a difficult crackme by looking at the disassembly!&lt;/strong>&lt;/em> (obviously many can do the same but that&amp;rsquo;s just how I feel!)&lt;/p></description></item><item><title>Solving My First CrackMe</title><link>http://brightprogrammer.in/posts/solving-my-first-crackme/</link><pubDate>Sat, 14 Aug 2021 16:38:10 +0000</pubDate><guid>http://brightprogrammer.in/posts/solving-my-first-crackme/</guid><description>&lt;p>In this post, I will write about how I solved my very first crackme.&lt;/p>
&lt;p>Tools you will need are :&lt;/p>
&lt;ul>
&lt;li>A Linux terminal&lt;/li>
&lt;li>&lt;a href="crackmes.one/crackme/60f31f1d33c5d42814fb3381">This&lt;/a> crackme&lt;/li>
&lt;li>&lt;a href="https://ghidra-sre.org/">Ghidra&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>If you are on Windows you can use cygwin or some other emulator. If you can understand what is being done in Linux, and you can translate that in Windows then you are good to go ;-).&lt;/p>
&lt;p>We begin by downloading the crackme. Before opening any crackme, I recommend you to scan the file for viruses on &lt;a href="https://www.virustotal.com/gui/home/upload">Virus Total&lt;/a>. Even though all crackmes are checked for malwares before being accepted, it never hurts to stay cautious. Sometimes Virus Total gives false positives too, so make sure to check whether the executable is packed or not before executing it because sometimes packed executables are detected as malwares by some AV softwares. I&amp;rsquo;m telling you this &lt;em>&lt;strong>becuase this happened with me&lt;/strong>&lt;/em>, while I was solving my third crackme!&lt;/p></description></item></channel></rss>