Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
HeartbleedAttack — 이것은 제가 Advenced Cyber Attacks 과정에서 작성한 Heratbleed 버그(CVE-2014-0160) 문서입니다. | Kitploit
도구/GitHubGitHub/shayhha/heartbleedattack
Vulnerability AnalysisExploitationNetwork SecurityCryptographyPenetration TestingLearning & Education
GitHubshayhha/heartbleedattack

HeartbleedAttack

이것은 제가 Advenced Cyber Attacks 과정에서 작성한 Heratbleed 버그(CVE-2014-0160) 문서입니다.

저장소 보기
19개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Heartbleed 공격: Java 기반 공격 데모

개요

이 저장소는 취약한 서버(IP: 192.168.1.132)에서 Apache(포트 443) 및 Postfix(포트 465)를 실행 중인 서버로부터 민감한 데이터를 추출하여 Heartbleed 취약점(CVE-2014-0160)을 시연하도록 설계된 사용자 지정 Java 기반 익스플로잇인 Heartbleed.java를 포함합니다. 이 익스플로잇은 잘못된 형식의 TLS 하트비트 요청을 전송하여 패치되지 않은 OpenSSL 버전(1.0.1 ~ 1.0.1f)의 취약점을 활용해 요청당 최대 64KB의 메모리를 유출합니다. 지원 Bash 스크립트(apache_memload.sh 및 postfix_memload.sh)는 사용자 자격 증명, 메일 서버 비밀번호, SSL 인증서와 같은 민감한 데이터로 서비스 메모리를 채우며, Java 익스플로잇이 이를 추출합니다.

이 프로젝트는 공격 방법론, 결과 및 Apache와 Postfix 서비스 모두에 대한 영향을 설명하는 상세한 Word 문서에 기록된 포괄적인 보안 데모의 일부입니다. 이 작업에는 메모리를 로드하는 스크립트 제작, Windows 클라이언트(IP: 192.168.1.99)에서 익스플로잇 실행, 유출된 데이터를 분석하여 취약점의 영향을 강조하는 과정이 포함되었습니다.

Heartbleed 익스플로잇 정보

Heartbleed.java는 이 데모의 핵심으로, 간소화된 공격 프로세스를 구현합니다:

  • 대상 서버에 연결을 설정하고 TLS 핸드셰이크를 완료합니다.
  • 익스플로잇의 핵심인 sendHeartbeats 메서드를 통해 잘못된 형식의 하트비트 요청을 전송합니다.
  • 서버의 응답을 캡처하여 ASCII 형식의 민감한 데이터를 표시합니다.

핵심 구성 요소인 메서드는 Heartbleed 취약점을 악용하여 메모리 내용을 추출하도록 서버에 조작된 하트비트 메시지를 반복적으로 전송하여 공격을 조율합니다. 이 메서드의 역할은 구현 스크린샷과 함께 첨부된 Word 문서에 자세히 설명되어 있습니다.

sendHeartbeats

프로젝트 범위 및 문서

이 작업의 전체 범위는 다음과 같습니다:

  • 메모리 플러딩: PHP 스크립트(memload.php)를 통해 SHA-512 비밀번호 해시와 같은 민감한 데이터를 포함하는 50개의 curl 요청으로 Apache 메모리를 채우는 apache_memload.sh를 개발했습니다. 마찬가지로 postfix_memload.sh는 이메일 자격 증명과 비밀번호를 포함하는 50개의 SMTP 페이로드를 Postfix에 전송합니다.
  • 익스플로잇 실행: 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).
      • https://localhost/phpmyadmin/memload.php의 memload.php.
  • 클라이언트:
    • Windows 클라이언트(IP: 192.168.1.99).
    • JDK(Java Development Kit): 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: 이메일 헤더, 셸 명령, 자격 증명, 비밀번호 및 SSL 인증서가 추출되었습니다.

윤리적 사용

이 익스플로잇은 교육 목적으로만 제공됩니다. 명시적 허가 없이 시스템에 피해를 주는 데 사용하지 마십시오. 법적 및 윤리적 기준을 준수해야 합니다.

라이선스

MIT 라이선스 — 자세한 내용은 LICENSE를 참조하세요.

도구 다운로드