如何cracka.net破解逆向工程应用程序的方式;⚠️DISCLAIMER:本文是用于教育和培训方向,我们对本文提到的技术和解释和 /或使用提到的工具所述的技术和解释概不负责,我们也不承担责任。出于同一信息。请用于道德目的。

我为一个非常简单的原因做了这篇文章,在我们的办公室一个共同工作的空间)有很多公司在.NET中成立,有一天,我在午餐时评论了我们在做什么,他们什么都不了解,事实证明,他们不知道是什么解说。

他们不知道,借助您可以看到,复制或修改其开发的简单工具 – 在所有情况下,您都不应该担心 – 但对于其中的某些人来说,业务的核心是开发本身,显然它并没有做太多恩典。

我不得不说这在所有编译的语言中都会发生,但是我将重点放在.net上,这是我们掌握的。

在本文中,我将展示有关拆卸和反向工程的基本观念,如果您对更复杂的事物感兴趣,请不要犹豫地问我们!

什么是脱位

拆卸是汇编的逆转(我将为这一很好的解释提供专利)。

也就是说,汇编基本上是:

您写代码
您按下魔术编译按钮,它将变成可执行/文件/.exe/dll …(嗯,应该…您肯定会忘记一个半月或类似的东西),您还将有103个警告⚠,但是如果您不会睁开眼睛,看不到它们。

该过程将是这样的:

好吧,除算法是相反的,您有一个可执行文件,.dll,.exe …,并且使用工具(倒数器),您可以获得原始的源代码。

而且简单吗?
我会说这比编译要容易,但是让我们看看它是如何完成的。

分解.NET / .NET核心应用程序

让我们编译一个简单的应用程序:

对于此示例,我们将使用DNSpy。有几种工具,每种工具都适合特别是某些工具,但是DNSPY是分解和调试.NET应用程序的最佳方法之一。

当我们编译.NET核心应用程序时,我们将获得编译的文件,如果.NET Core为“ .exe”文件将是可执行文件,但是它将负责执行包含的“ .dll”我们应用程序的代码。

好的,让我们继续对.dll文件进行反复:

为此,我们要做的就是将其拖到DNSpy:

加载后,将显示原始的源代码,我们可以在它上进行处理,我们可以对其进行分析,修改它,调试它,等等。

一旦我们的应用程序分解,我们就可以浏览源代码,就好像它是我们自己的项目一样:

这对于了解其工作方式或在内存中获得一些值很有用。

例如,让我们在减法之前放一个断点:

然后我们将运行该应用程序:

这是一个简单的例子:

这是有时可能非常有用的功能,但也可能是危险的。

我们可以在没有任何问题的情况下修改和重新编译应用程序:

我们也可以使用IL代码来做到这一点,但是如果我们不知道它将更加复杂。

我们更改了简单的文本:

我们再次编译:

现在为了保存我们的修改应用程序,我们将提供:

我们将选择文件的名称,其路径,我们将标记以下选项:

我们将进行修改的应用程序:

好的,这些是简单且不重要的例子,我留下您的想象力💭这些简单的工具可以完成的一切。

现在,我们将看到其他类型的应用程序,因为.NET中的编译是相同的,因此是否使用C#,VB,VB,ASP,Xamarin,Blazor都无关紧要,一切都以相同的方式起作用,然后让我们看看然后使用jlazor来看看应用。

将Web应用程序与大爆炸进行分解

现在,我们已经使用了Glazor创建了一个示例Web应用程序,这是Visual Studio中的应用程序代码:

基本上,这是一个显示天气的应用程序,我们在中间添加了dotnetsafer,以便我们可以在较晚的分配应用程序中看到它,这是Web应用程序:

好的,让我们再次获取代码。

首先,我们将使用浏览器(哪一个都没关系),因为在加载.NET库以显示应用程序时,它会打电话以获取它们。

我们必须输入检查模式CTRL + Shift + C,然后转到部分网络,然后使用CTRL + F5重新加载页面。

这将是包含我们Web应用程序的代码的文件:

您还可以获取应用程序使用的所有依赖项或自己的.NET文件

好吧,我们下载它,然后用DNSpy再次打开它:

一旦有分解文件,我们就可以完成我上几点中提到的所有事情。

用Xamarin分解移动应用

我们提高了难度的水平,但是操作仍然相同。

我们已经使用Xamarin创建了一个简单的移动设备应用程序,该应用程序将具有扩展名.APK

我们要做的第一件事是解开APK,有一些工具,但是没有必要,对于如此简单的事情,我们可以使用winrar(是的,永远不会到期🆓):

我们将在文件夹中复制所有文件:

在文件夹组件内将找到所有.NET文件:

这是有趣的事情,这些文件具有LZ4压缩,如果我们尝试将其与DNSpy进行反复编译,这将使我们有一个错误:

为此,我带来了一个简单的解决方案,这是一个小型python脚本,可以帮助我们解压缩所有.net .dll文件。

是的,这听起来很复杂,看来您必须成为专家:

但这确实是非常简单的事情,我们将在不到一分钟的时间内完成。

Python -M PIP安装LZ4或简单地安装LZ4

该脚本的作者是Christian Reitter,X41 D-SEC GmbH,谢谢您在X41 D-SEC GMBH上的文章,我们将其修改为解压缩目录中的所有文件。

我们将将代码复制到称为decompress.py的文件中,并将其保存在与.dll文件相同的路径中。

我们将使用py。\ decompressor.py。\,我们将其解压缩目录中的所有.dll文件。

在这种情况下,我只对与我的应用程序相对应的两个文件感兴趣。

什么不是那么困难?

现在,我们准备好使用DNSpy打开的文件:

现在,我们可以做我前面提到的所有事情,该过程始终是相同的,只有文件被编译的方式变化。

这适用于.NET下的所有应用程序,例如与C#,虚拟现实应用程序和增强现实开发的游戏。

你喜欢这篇文章吗?

这很简单,但我认为基本水平很好,并了解了这些主题😊。

如果您发现它很有趣,请随时支持它,并在下面告诉我们👇如果您想了解其他事情,例如让我们谈谈破解,注射和其他方面。

我们可以做一些有趣的做法或您想在这里看到的任何事情。

感谢您阅读文章❤,请记住,在串联中,我们将上传有关.NET🛡的安全性文章。

感谢您的关注,希望您学到了很多东西!