网络安全实战 - HTB Red Failure

936 阅读1分钟

概述

Red Failure是来自于HTB(hackthebox.com)的一个中级数字鉴识挑战,完成该挑战所需要掌握的知识点在于Windows下的逆向分析。

题目分析

该挑战提供了一个capture.pcap文件,其中是捕捉到的网络通讯数据。

解题过程

使用Wireshark打开capture.pcap,并列出所有的HTTP对话记录。

forensics_008_HTB_Red Failure_1.png

发现总共有三次HTTP对话,分别下载4A7xH.ps1user32.dll9tVI0文件, 我们可以从对话响应中导出这三个文件。

4A7xH.ps1是一个powershell脚本文件,其代码经过混淆处理,通过代码分析可以得知其功能在于下载user32.dll,然后使用相关的入口参数调用其中DInjector.Detonator类下的Boom方法。

forensics_008_HTB_Red Failure_2.png

使用JetBrains dotPeekuser32.dll进行反编译以获得其源代码。 从Boom方法的实现中,我们可以得知其功能在于下载9tVI0文件,然后使用给定的密码对其解密, 获得的结果则是最终运行的二进制指令。

forensics_008_HTB_Red Failure_3.png

JetBrains dotPeek中导出源代码后,我们可以修改Boom方法,将解密后的二进制指令写入本地文件。

forensics_008_HTB_Red Failure_4.png

使用Visual Studio对修改过的代码进行编译得到新的user32.dll,然后修改4A7xH.ps1, 使其从本地服务器下载相关的文件。

forensics_008_HTB_Red Failure_5.png

启动本地We服务器, 然后运行4A7xH.ps1后 可以得到解密生成的二进制指令文件。

然后使用scdbg模拟器运行二进制指令文件,从其输出中就可以得到flag.

forensics_008_HTB_Red Failure_6.png