在上一篇文章中,我们讨论了胖客户端的实验室设置:DVTA
您可以通过访问这里简单地演练: – 胖客户端Pentest实验室设置:DVTA
在本文中,我们将讨论如何配置DVTA应用程序以连接到服务器 为此,我将在整个设置中使用一个窗口10个实例。这意味着DVTA客户端和SQL Server都将在同一台计算机上运行。 您可以在Different Window 10实例上配置DVTA客户端和SQL Server。
表中的内容
- 先决条件
- 下载链接& Credentials
- 下载并安装DVTA应用程序
- 撤消和修改原始DVTA应用程序
- 配置&登录到修改后的DVTA应用程序
先决条件
- 精通C#(C Sharp)编程知识。
- 一点逆向工程知识。
下载链接& Credentials
DVTA应用程序:– //mega.nz/file/rPJQ0LTL#CuhQ9HBeEIKHa67jbITFQbt49FZalugWlRe5A33O6y4
DnSpy应用程序:– //github.com/dnSpy/dnSpy/releases
数据库用户和密码:–
证书:
1 2 3 |
维杰:维杰 拉吉:拉吉 管理员:管理员123 |
下载并安装DVTA应用程序
您可以使用此链接直接下载DVTA应用程序
1 |
https://mega.nz/file/rPJQ0LTL#CuhQ9HBeEIKHa67jbITFQbt49FZalugWlRe5A33O6y4 |
下载完成后,将其解压缩到新文件夹中,如下图所示。
好了,这是我们为测试而获得的发布文件。如果您看到Release文件夹中有几个文件,并且这里的主应用程序是带有红色图标的文件 “ DVTA.exe”
因此,我们双击DVTA.exe并运行它。
完成后,您应该会看到一个类似这样的提示窗口。如果您注意到提示窗口的底部,我们可以在这里配置服务器。
原始DVTA应用程序没有此功能,并且IP地址是硬编码的。这样做的问题是我们需要有一台具有与应用程序中硬编码完全相同的IP的服务器。为此,我们需要编译源代码以某种方式修改应用程序,以便它指向或重定向到我们的服务器。
现在,在配置服务器之前,我们的主要任务是启用 “配置服务器” 按钮,以便它可以与我们的服务器对话。
这需要一点逆转知识……。这会很有趣.
撤消和修改原始DVTA应用程序
现在,让我们看看如何启用 “配置服务器按钮”.
在启用此按钮之前,让我们先思考一下在进行渗透测试时,现实世界中客户端应用程序中遇到这种禁用按钮的情况。在某些情况下,用户登录后会禁用某些菜单。例如,他是制造商,并且他没有检查器菜单,因此某些开发人员在客户端中禁用了这些菜单,假定用户无法启用它们,并且可以在C sharp.net应用程序中轻松启用这些禁用的菜单。
现在,让我们看看如何做到这一点。首先,如果我们做错了什么或弄乱了代码,只需简单地提取DVTA Release文件夹的副本,这样,我们就可以从头开始,而无需再次下载。要启用“配置服务器”按钮,我们将使用一个名为dnSpy的工具。您可以通过以下链接直接下载:– //github.com/dnSpy/dnSpy/releases
从发行版部分下载最新版本。
下载完成后,将其解压缩到新文件夹中。
提取完成后,您应该看到dnSpy的两个版本,一个是32位,另一个是64位。我们将使用32位版本,因为我们的目标应用程序是32位。
因此,如果您在下图中看到一个具有dnSpy-x86的版本是32位版本,而另一个仅表示dnSpy的版本是64位版本。
因此,不会浪费时间快速开放 “ dnSpy-x86” 通过双击它并简单地运行它
dnSpy应用程序启动时,通过导航到打开DVTA应用程序 文件> open
并转到DVTA应用程序的Release文件夹,然后选择DVTA.exe。 因此,这是我们将要修改的主要应用程序。
现在,我们的主要任务是找出已禁用按钮的确切位置,然后以将要启用的方式修补二进制文件
在左侧菜单上,单击DVTA并展开DVTA.exe。展开后,选择DVTA。现在,如果您看到了,在DVTA应用程序中似乎有几个地方。基本上,这些是源代码中的C锋利文件。如果您在打开DVTA应用程序时注意到以上内容,它将打开 DVTA登录页面 在该页面的底部有 “配置服务器” 按钮。因此,这就是我们感兴趣的。
现在,无需浪费时间,请单击登录,它将为我们自动开始反编译源代码。
现在,这看起来非常有趣,我们可以很容易地了解此应用程序在此处执行操作的全部源代码。向下滚动到源代码时,您会发现有一种情况正在寻找一种称为 “是配置的服务器” 当您单击它时,它将看到定义在哪里,当您看到定义时,它将始终返回 “假” 如果返回值True,会发生什么情况。
让我们来看看…
这将显示特定的消息 “ MessageBox.Show(“此应用程序仅在配置服务器后才可用”) 这意味着该块永远不会执行,因为它总是 “假”。所以这就是“this.configserver.Enabled = False;始终是执行的部分,如右箭头突出显示。在下图中
如果您注意到所有的源代码都在C语言中。
让我们看一下此源代码的IL版本。 IL是一种中间语言。这类似于C编程世界中的旧汇编语言。您可以通过导航到开始图标附近的下拉框,将源代码转换为IL。如果您基本上比较C尖锐代码或IL代码,它们在做相同的事情。
正如我们之前看到的,“配置服务器”是一个按钮,您可以在此处轻松找到。这是一个按钮 “类[system.windows.Forms] System.Windows.Forms.Button“ 在此特定行之后,似乎有一个呼叫“System.Windows.Forms.Control”并调用set Enabled方法,并且此Set_Enabled方法采用布尔值,该布尔值可以为true或false。如果您看到一个似乎是ldc.i4.0的值,然后将鼠标悬停在Set_Enabled(bool)上,它将整数值0作为int 32推送到评估堆栈上,这可能就是原因该按钮始终处于禁用状态,因为此值作为参数被压入堆栈,并且set enable始终设置为false。
现在,右键单击ldc.i4.0的值,然后 “编辑IL指令” 如下所示
现在,它将打开另一个提示,并右键单击值ldc.14.0,然后进一步选择ldc.i4.1而不是0,然后单击OK,如下所示
现在,通过导航到 文件> Save Module
现在,将此文件保存在原始DVTA所在的位置,以便可以替换原始DVTA.exe,如下所示
现在,我们可以转到同一目录关闭dnSpy应用程序,并打开修改后的应用程序DVTA.exe。
配置&登录到修改后的DVTA应用程序
欢呼...您可以看到“配置服务器按钮已启用
因此,我们已经准备好配置服务器。如前所述,我们将使用与数据库相同的服务器。
所以,让我们输入 “ 127.0.0.1” 作为我们的服务器,然后单击 “配置服务器”。
如您所见,我们的服务器已成功配置。
现在,为了确保一切正常,请返回到DVTA的发布文件夹目录,然后双击位于DVTA应用程序下方的DVTA.exe XML配置文件,如下所示
这基本上是一个配置文件。双击并打开配置文件。
当您看到应用程序设置时,您会看到 数据库服务器为“ 127.0.0.1/SQLExpress” 和“FTP服务器也配置为127.0.0.1”。
太棒了…现在我们对配置很满意。
现在打开修改后的DVTA应用程序并以用户身份登录 “ 维杰” 是我们之前在SQL Server安装程序上创建的。
很好,我们可以看到我们已经成功登录到该应用程序
我们还要验证另一个用户(例如admin),并检查admin具有哪些权限
太好了,我们可以看到一切正常,并且已成功以管理员身份登录。
恭喜你
现在,如果您已经做完了,那么就可以使用“该死的易受攻击的胖客户端应用程序”设置进行设置。
在下一部分中,我们将针对各种问题系统地测试该应用程序。
最重要的一件事 “您可以从此处将所有这些步骤用作您的实际胖客户端渗透测试参与的清单”。
作者– Vijay是Hacking 文章的认证道德黑客,技术作家和渗透测试人员。技术和小工具怪胎。联系 这里