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

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

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

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

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/lem0nsec/cve-2010-5301
漏洞分析漏洞利用Shellcode渗透测试Payload 开发二进制利用
GitHublem0nsec/cve-2010-5301

CVE-2010-5301

一个利用任意DLL注入的SEH溢出概念验证

查看仓库
124年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2010-5301

一个带有任意DLL注入的SEH溢出的概念验证

描述

Kolibrì HTTP Server 2.0 受 基于栈的缓冲区溢出 影响。在发现时,该漏洞仅仅通过用 JMP ESP 指令覆盖指令指针来利用,其中 ESP 指向放置在栈上的 shellcode。随后发现,如果发送更大的有效载荷,SEH 链可以被覆盖。然而,该应用程序没有有效的 POP - POP - RET 指令来使 SE 处理程序指向下一个 SEH 记录。这是因为所有相关的内存地址都以 null 字节开头。

nullbytes_seh


利用方法

此利用方法提出通过 DLL 注入实现 SEH 溢出的代码执行。将任意 DLL 注入 Kolibrì 进程为用来自该 DLL 的不含 null 字节的地址覆盖 SE 处理程序提供了机会,该地址指向 POP - POP - RET 指令。显然,此方法仅可用于开发概念验证,如果利用是为了本地提升系统权限,则不能依赖于此。这是因为如果你想将 DLL 注入到目标进程中,你需要拥有与其相同的权限。除此之外,该利用方法是有效的!

poc


更新

当我最初上传此利用方法时,它只支持非常短的自定义 shellcode,并使用了硬编码的 WinExec 和 ExitProcess 地址。这是因为覆盖 SEH 后缓冲区空间很小。现在我刚刚更新了利用代码,在 SEH 之后部署了一个 egghunter shellcode,并将 egg + shellcode 放在 Web 服务器的 User-Agent 头中。因此,执行流将从被覆盖的 SEH 重定向到 egghunter,然后 egghunter 将搜索标记有 egg 'w00t' 的 shellcode。


参考文献

此方法的功劳归于该原始仓库的 FULLSHADE。

https://github.com/FULLSHADE/POPPOPRET-nullbyte-bypass

我所做的只是将这个想法应用于这个特定的 CVE。

下载工具