【Root-Me】 PE DotNet - 0 protection
source link: https://exp-blog.com/safe/ctf/rootme/cracking/pe-dotnet-0-protection/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
【Root-Me】 PE DotNet
开启挑战后,下载了一个 ch22.exe
文件,运行后是一个 UI 程序。
随意输入一个 password ,点击 Valider
按钮后,提示密码错误。
使用 IDA 打开这个文件,尝试反汇编(注意使用 Microsoft.NET. assembly 方式打开):
从左侧 Function name
可以找到 UI 程序每个组件模块的代码。
由于校验密码的行为是在我们点击按钮后触发的,因此可以猜测真正的密码被硬编码到这个点击行为的代码里面。
因此现在的目标应该是找到 Valider
按钮点击的事件代码。
而在 Function name
只有一个模块名为 CrackMe.Form1__Button1_Click
,双击查看这个模块代码,可以发现这个模块调用了一个 compare
函数,而根据 compare
的结果,代码会流向两个分支,一个是验证密码失败,一个是验证密码成功,说明这就是目标代码。
不难注意到在 compare
函数前面有一个常量 DotNetOP
,很容易就会猜到这是硬编码到代码里面的真正密码。
尝试使用这个密码验证,挑战成功。
flag 下载后的 flagzip 的文件需要手动更改后缀为
*.zip
,然后解压即可(为了避免直接刷答案)
Recommend
-
112
IIS中的 Asp.Net Core 和 dotnet watch 李念辉...
-
71
闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了。 并开始整理IOS的代码(包括当时一开始设计的开发框架)。 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及前后端所有涉及的技术系列。 同时还准备...
-
94
-
71
-
63
dotnet-outdated A .NET Core global tool to display outdated NuGet packages in a project Installation Download and install the .NET Core 2.1...
-
43
While you are working with compiled code, you often find yourself in the situation that every bit of performance count (just think about GPU intensive operations or even game engines). For this reason, we often turn back...
-
14
【Root-Me】 ELF C++ 不太水的水题,需要懂得反汇编工具的使用,以及一些汇编原理。 开始挑战后下载了一个 ch25.bin...
-
9
【Root-Me】 ELF 水题,需要知道的是 ELF 是 Linux 下的一种可执行的二进制文件(类比 Windows 的 exe)。 开始挑战后下载了一个
-
5
【Root-Me】 CSRF 已经很直白提示是 CSRF 题型。 点击 Register 随意注册一个账号,如 exp,密码 123456 。 然后点击 Login 登录,登录...
-
7
【Root-Me】 PE 不太水的水题,需要懂得反汇编工具的使用。 开始挑战后下载了一个 ch15.exe
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK