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

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

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

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

工具目录

分类

查看所有分类
Loading categories
HeartbleedAttack — 这是我为高级网络攻击课程所做的 Heratbleed 漏洞(CVE-2014-0160)文档。 | Kitploit
工具/GitHubGitHub/shayhha/heartbleedattack
漏洞分析漏洞利用网络安全密码学渗透测试学习与教育
GitHubshayhha/heartbleedattack

HeartbleedAttack

这是我为高级网络攻击课程所做的 Heratbleed 漏洞(CVE-2014-0160)文档。

查看仓库
19个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Heartbleed 攻击:基于 Java 的攻击演示

概述

本仓库包含 Heartbleed.java,这是一个基于 Java 的自定义漏洞利用程序,旨在通过从运行 Apache(端口 443)和 Postfix(端口 465)的易受攻击服务器(IP:192.168.1.132)中提取敏感数据,来演示 Heartbleed 漏洞(CVE-2014-0160)。该漏洞利用程序发送畸形的 TLS 心跳请求,利用未修补的 OpenSSL 版本(1.0.1 至 1.0.1f)中的漏洞,每次请求最多可泄漏 64KB 内存。配套的 Bash 脚本(apache_memload.sh 和 postfix_memload.sh)会用敏感数据(如用户凭据、邮件服务器密码和 SSL 证书)灌充服务的内存,随后由 Java 漏洞利用程序提取这些数据。

本项目是全面安全演示的一部分,相关细节记录在一份详细的 Word 文档中,该文档概述了攻击方法、结果以及对 Apache 和 Postfix 服务的影响。工作内容包括编写脚本灌充内存、从 Windows 客户端(IP:192.168.1.99)执行漏洞利用程序,以及分析泄漏的数据,以突出该漏洞的影响。

关于 Heartbleed 漏洞利用程序

Heartbleed.java 是此演示的核心,实现了一个精简的攻击流程:

  • 与目标服务器建立连接并完成 TLS 握手。
  • 通过 sendHeartbeats 方法发送畸形的心跳请求,这是漏洞利用的关键。
  • 捕获并显示服务器的响应,以 ASCII 格式揭示敏感数据。

sendHeartbeats 方法作为关键组件,通过反复向服务器发送精心构造的心跳消息来编排攻击,利用 Heartbleed 漏洞提取内存内容。该方法的作用在随附的 Word 文档中有详细说明,并附有其实施的截图。

项目范围与文档

这项工作的完整范围包括:

  • 内存灌充:开发了 apache_memload.sh,通过 50 个 curl 请求灌充 Apache 的内存,并借助 PHP 脚本(memload.php)嵌入 SHA-512 密码哈希等敏感数据。类似地,postfix_memload.sh 向 Postfix 发送 50 个 SMTP 载荷,嵌入电子邮件凭据和密码。
  • 漏洞利用执行:从 Windows 客户端(IP:192.168.1.99)运行 Heartbleed.java,以 Apache(端口 443)和 Postfix(端口 465)为目标,成功泄漏了用户凭据、密码和证书等数据。
  • 文档记录:编写了一份详细的 Word 文档,记录攻击设置、执行过程和结果。文档包括服务验证(Apache 和 Postfix)、攻击描述、脚本输出和泄漏数据的截图、对 sendHeartbeats 方法的解释,以及包含未来缓解策略的结论。

前置条件

  • 服务器:
    • Ubuntu Linux 服务器(IP:192.168.1.132),具备:
      • 端口 443 上的 Apache2(存在漏洞的 OpenSSL 1.0.1c)。
      • 端口 465 上的 Postfix(存在漏洞的 OpenSSL 1.0.1c)。
      • memload.php,位于 https://localhost/phpmyadmin/memload.php。
  • 客户端:
    • Windows 客户端(IP:192.168.1.99)。
    • Java 开发工具包(JDK):sudo apt install openjdk-11-jdk。
  • 网络:
    • 客户端必须能够通过端口 443 和 465 访问服务器。

安装

  1. 克隆仓库:

    root@kitploit:~
    git clone https://github.com/Shayhha/HeartbleedAttack
    
  2. 编译漏洞利用程序:

    root@kitploit:~
    javac -d bin Heartbleed.java
    

使用方法

  1. 灌充服务器内存(在 192.168.1.132 上):
  • Apache:
root@kitploit:~
~/Desktop/apache_memload.sh
  • Postfix:
root@kitploit:~
~/Desktop/postfix_memload.sh
  1. 运行漏洞利用程序(在 192.168.1.99 上):
  • 对于 Apache(端口 443),编辑 Heartbleed.java,设置 SERVER_PORT = APACHE_PORT,重新编译,然后:
root@kitploit:~
javac -d bin Heartbleed.java
java -cp bin Heartbleed
  • 对于 Postfix(端口 465),编辑 Heartbleed.java,设置 SERVER_PORT = POSTFIX_PORT,重新编译,然后:
root@kitploit:~
javac -d bin Heartbleed.java
java -cp bin Heartbleed

结果

  • Apache:泄漏了用户凭据、邮件服务器密码、SHA-512 密码哈希和 SSL 证书。
  • Postfix:提取了电子邮件头、shell 命令、凭据、密码和 SSL 证书。

道德使用

此漏洞利用程序仅用于教育目的。未经明确许可,请勿使用它损害系统。确保遵守法律和道德标准。

许可证

MIT 许可证——详见 LICENSE。

下载工具