7

【Root-Me】 PE DotNet - 0 protection

 2 years ago
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.
neoserver,ios ssh client

【Root-Me】 PE DotNet


开启挑战后,下载了一个 ch22.exe 文件,运行后是一个 UI 程序。

随意输入一个 password ,点击 Valider 按钮后,提示密码错误。

01.png

使用 IDA 打开这个文件,尝试反汇编(注意使用 Microsoft.NET. assembly 方式打开):

02.png

从左侧 Function name 可以找到 UI 程序每个组件模块的代码。

由于校验密码的行为是在我们点击按钮后触发的,因此可以猜测真正的密码被硬编码到这个点击行为的代码里面。

因此现在的目标应该是找到 Valider 按钮点击的事件代码。

而在 Function name 只有一个模块名为 CrackMe.Form1__Button1_Click,双击查看这个模块代码,可以发现这个模块调用了一个 compare 函数,而根据 compare 的结果,代码会流向两个分支,一个是验证密码失败,一个是验证密码成功,说明这就是目标代码。

不难注意到在 compare 函数前面有一个常量 DotNetOP ,很容易就会猜到这是硬编码到代码里面的真正密码。

03.png

尝试使用这个密码验证,挑战成功。

04.png

flag 下载后的 flagzip 的文件需要手动更改后缀为 *.zip,然后解压即可(为了避免直接刷答案)


Recommend

  • 112
    • 微信 mp.weixin.qq.com 6 years ago
    • Cache

    IIS中的 Asp.Net Core 和 dotnet watch

    IIS中的 Asp.Net Core 和 dotnet watch 李念辉...

  • 71

    闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了。 并开始整理IOS的代码(包括当时一开始设计的开发框架)。 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及前后端所有涉及的技术系列。 同时还准备...

  • 94
    • 微信 mp.weixin.qq.com 6 years ago
    • Cache

    dotNET跨平台

  • 71
    • www.cnblogs.com 6 years ago
    • Cache

    DotNet进阶篇 - Yaopengfei(姚鹏飞)

  • 63
    • www.tuicool.com 6 years ago
    • Cache

    dotnet-outdated

    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
    • www.tuicool.com 6 years ago
    • Cache

    Running C++ code from C# Dotnet Core

    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
    • exp-blog.com 2 years ago
    • Cache

    【Root-Me】 ELF C++ - 0 protection

    【Root-Me】 ELF C++ 不太水的水题,需要懂得反汇编工具的使用,以及一些汇编原理。 开始挑战后下载了一个 ch25.bin...

  • 9
    • exp-blog.com 2 years ago
    • Cache

    【Root-Me】 ELF - 0 protection

    【Root-Me】 ELF 水题,需要知道的是 ELF 是 Linux 下的一种可执行的二进制文件(类比 Windows 的 exe)。 开始挑战后下载了一个

  • 5
    • exp-blog.com 2 years ago
    • Cache

    【Root-Me】 CSRF - 0 protection

    【Root-Me】 CSRF 已经很直白提示是 CSRF 题型。 点击 Register 随意注册一个账号,如 exp,密码 123456 。 然后点击 Login 登录,登录...

  • 7
    • exp-blog.com 2 years ago
    • Cache

    【Root-Me】 PE - 0 protection

    【Root-Me】 PE 不太水的水题,需要懂得反汇编工具的使用。 开始挑战后下载了一个 ch15.exe

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK