Skip to content
KitploitKITPLOIT
工具博客
Log in
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
BlackLotus-Z2A-Challenge — BlackLotus-Z2A-Challenge,目前这里没什么可看的,请继续前进。 | Kitploit
工具/GitHubGitHub/spiralbl0ck/blacklotus-z2a-challenge
静态分析逆向工程恶意软件分析CTF学习与教育
GitHubspiralbl0ck/blacklotus-z2a-challenge

BlackLotus-Z2A-Challenge

BlackLotus-Z2A-Challenge,目前这里没什么可看的,请继续前进。

查看仓库
32573年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

BlackLotus-Z2A-Challenge

BlackLotus-Z2A-Challenge,暂时没什么可看的,请继续往前走

首先,先看这个

Capture23

纯粹为了美观,我会厚着脸皮借用(偷):)) @darthmaulware(Ryan “DM” Smith) 解决方案中的 yara 检测规则,只是为了让它看起来更专业。去看看他的推特,他是个超酷的人!Ps. Ryan 请别因为我偷了那个而生气 :))) 谢谢你在 discord 上的支持 :)

也请看看他的作品 :)

https://gitlab.com/malre-rcs/zero2automated/-/blob/main/solutions/bi_weekly_challenge/BlackLotus_20230321/BlackLotus_HTTP_Downloader.ipynb``` rule Blacklotus_HTTP_Downloader { meta: description = "Rule to detect Blacklotus HTTP Downloader" author = "Darth Maulware" sha256 = "d68f668b4240f9518e4f80499d93d8c5a1eddece0771658c33ae916cc54f5a66"

    strings:
        $opcode1 = {48 89 4C 24 08 48 89 54 24 10 4C}
        $opcode2 = {89 44 24 18 4C 89 4C 24 20 48 83}
        $opcode3 = {EC 28 B9 31 62 D7 2E 90 90 E8 ??}
        $opcode4 = {?? ?? ?? 48 83 C4 28 48 8B 4C 24}
        $opcode5 = {08 48 8B 54 24 10 4C 8B 44 24 18}
        $opcode6 = {4C 8B 4C 24 20 4C 8B D1 90 90}

    condition:
        (uint16(0) == 0x5a4d and filesize < 500KB and all of them)

}

另外,出于美学原因,我也会偷用这个,因为它看起来很酷 :) 再次抱歉 ryan,请不要生我的气 :)```
        C:\\Users\\REM\\Desktop>capa.exe -f pe -r capa-rules-5.0.0 d68f668b4240f9518e4f80499d93d8c5a1eddece0771658c33ae916cc54f5a66.exe
        matching: 100%|████████| 124/124 [00:02<00:00, 46.96 functions/s, skipped 1 library functions (0%)]

        +------------------------+------------------------------------------------------------------------------------+
        | ATT&CK Tactic          | ATT&CK Technique                                                                   |
        |------------------------+------------------------------------------------------------------------------------|
        | DEFENSE EVASION        | Obfuscated Files or Information T1027                                              |
        | DISCOVERY              | Process Discovery T1057                                                            |
        | EXECUTION              | Shared Modules T1129                                                               |
        +------------------------+------------------------------------------------------------------------------------+

        +-----------------------------+-------------------------------------------------------------------------------+
        | MBC Objective               | MBC Behavior                                                                  |
        |-----------------------------+-------------------------------------------------------------------------------|
        | ANTI-BEHAVIORAL ANALYSIS    | Debugger Detection::Process Environment Block BeingDebugged [B0001.035]       |
        |                             | Debugger Detection::Process Environment Block NtGlobalFlag [B0001.036]        |
        | CRYPTOGRAPHY                | Encrypt Data::RC4 [C0027.009]                                                 |
        |                             | Generate Pseudo-random Sequence::RC4 PRGA [C0021.004]                         |
        | DATA                        | Encode Data::XOR [C0026.002]                                                  |
        | DEFENSE EVASION             | Obfuscated Files or Information::Encoding-Standard Algorithm [E1027.m02]      |
        +-----------------------------+-------------------------------------------------------------------------------+

        +------------------------------------------------------+------------------------------------------------------+
        | CAPABILITY                                           | NAMESPACE                                            |
        |------------------------------------------------------+------------------------------------------------------|
        | execute syscall instruction (35 matches)             | anti-analysis                                        |
        | check for PEB BeingDebugged flag (2 matches)         | anti-analysis/anti-debugging/debugger-detection      |
        | check for PEB NtGlobalFlag flag                      | anti-analysis/anti-debugging/debugger-detection      |
        | encode data using XOR (2 matches)                    | data-manipulation/encoding/xor                       |
        | encrypt data using RC4 PRGA (2 matches)              | data-manipulation/encryption/rc4                     |
        | get process heap flags                               | host-interaction/process                             |
        | get ntdll base address (3 matches)                   | linking/runtime-linking                              |
        | parse PE header (2 matches)                          | load-code/pe                                         |
        | resolve function by parsing PE exports (2 matches)   | load-code/pe                                         |
        +------------------------------------------------------+------------------------------------------------------+

说实话,如果我是你,我不会100%相信capa(至少在这个特定情况下),因为这里它说样本使用了RC4,而实际上样本使用的是AES,但无所谓,如前所述,这纯粹是为了美观 :)

在我们开始之前,你会在这份报告中遇到很多

1

请忽略这个,因为IDA无法正确反汇编它,在汇编中这是

1

而这会让调试器崩溃?为什么?

因为它试图在地址0处写入,这在黑客圈子里被称为写入空指针地址,这曾经被广泛利用来获取CE(代码执行),而这显然已经被缓解了。

因此,在当前的缓解措施下,如果你试图在0地址写入,它会使该进程崩溃——在我们的案例中就是恶意软件——并进而使调试器崩溃。

现在如果我们在IDA中打开这个

1

我重新命名了每个函数以表明其逻辑,让我们从第一个函数 do_syscall() 开始

Capture23

我们立即注意到它使用了系统调用,这是一种已知的方法,目的是在进行动态分析时让分析师的日子更难过。

对于那些不熟悉Windows中系统调用的人,这里有一个由oalabs制作的酷炫视频(https://www.youtube.com/watch?v=Uba3SQH2jNE)。请观看它,因为我也看了,它帮助我理解了这个函数中发生的事情。

如果我们检查IDA解析出的“伪代码”,我们会看到它看起来像这样

Capture4

如果我们静态检查 solve_hash,它看起来像这样

1

2

从伪代码的角度来看,它看起来像这样

4

请参考 solve_hash.py 查看我对这个函数的“模拟”,如果你想看一段自动化代码,并想知道系统调用是如何通过哈希查找算法解析的。但无论如何,这是名为SysWhispers2的项目的一部分,或者至少我推测恶意软件的作者是以此为灵感的。不管怎样,为了更好地理解,请参考上面oalabs的视频。

无论如何,anti_debug 函数很容易被绕过,而且是众所周知的(https://anti-debug.checkpoint.com/techniques/debug-flags.html#manual-checks-ntglobalflag)。绕过它的方法是安装scyllahide并勾选NtGlobalFlag(如果你使用x86dbg,默认应该是开启的)。不管怎样,这是你应该检查的

4

这就是 anti-debug “伪函数”的样子

4

如果你问我的话,这相当简单

接下来是 check_inmemory_ldr 函数,它看起来像这样

1

2

现在为了函数分析的目的,如果我们足够客气地问x86dbg,我们可以看到如果我们运行到syscall指令,x86dbg会好心地返回它将要执行的系统调用。在我们的案例中

下载工具