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-tarmageddon — CVE-2025-62518: TARmageddon | Kitploit
Tools/GitHubGitHub/edera-dev/cve-tarmageddon
Vulnerability AnalysisExploitationFuzzingBinary AnalysisSupply Chain SecurityLearning & Education
GitHubedera-dev/cve-tarmageddon

cve-tarmageddon

CVE-2025-62518: TARmageddon

Repository anzeigen
194vor 10 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
Webseite

Ivy Astronaut

CVE-2025-62518: TARmageddon

Dieses Repository demonstriert einen kritischen Fehler in tokio-tar und verwandten asynchronen Rust-Tar-Bibliotheken, bei dem PAX-Erweiterungskopfzeilen-size-Überschreibungen nicht angewendet werden, bevor die nächste Header-Position berechnet wird.

Fehlerzusammenfassung

Grundursache: Bei der Verarbeitung von Tar-Dateien mit PAX-Erweiterungskopfzeilen, die die Dateigröße überschreiben, verwendet die Bibliothek das oktale Größenfeld (oft null) anstelle der PAX-Überschreibung für Positionsberechnungen.

Auswirkungen: Dies führt dazu, dass der Parser in Dateiinhalte springt und diese für Tar-Header hält, was zur Extraktion falscher Dateien führt.

Bekannte betroffene Bibliotheken:

  • async-tar https://github.com/dignifiedquire/async-tar
  • tokio-tar https://github.com/vorot93/tokio-tar
  • krata-tokio-tar https://github.com/edera-dev/tokio-tar
  • astral-tokio-tar https://github.com/astral-sh/tokio-tar

Schnellstart

root@kitploit:~
# Requirements: CMake, Rust/Cargo, C++ compiler, system tar command

cmake -S . -B build
cmake --build build --target generate_report

Dies wird:

  1. Alle C++- und Rust-Tools erstellen
  2. Eine Reproduktions-Tar-Datei generieren
  3. Vergleiche ausführen, die den Fehler zeigen
  4. Detaillierte Berichte in build/output/ generieren

Projektstruktur

root@kitploit:~
├── disclosure/               # Dokumentationsbaum zur Sicherheitsoffenlegung
│   └── blast_radius/         # Aufzeichnung von Projekten, die von tokio-tar-Varianten abhängen
├── repro_generator/          # C++-Tool zum Generieren einer Reproduktions-Tar-Datei
├── tar-bug-detector/         # Rust-Tool zum Vergleichen von Tar-Bibliotheken  
├── tarwalk/                  # Korrekter C++-Tar-Parser
│   ├── tarwalk.cpp           # Behandelt PAX korrekt
│   └── tarwalk_bad.cpp       # Reproduziert denselben Fehler
├── CMakeLists.txt            # Build-System
├── generate_report.cmake     # Berichtsgenerierung
└── README.md                 # Diese Datei

Der Fehler im Detail

Normale TAR-Verarbeitung

root@kitploit:~
Header -> Inhalt (Größe aus oktalem Feld) -> Nächster Header

PAX-Erweiterte TAR-Verarbeitung (Korrekt)

root@kitploit:~
PAX-Header (Größe=1024) -> Datei-Header (oktale Größe=0) -> Inhalt (1024 Bytes) -> Nächster Header

PAX-Erweiterte TAR-Verarbeitung (Fehlerhaft)

root@kitploit:~
PAX-Header (Größe=1024) -> Datei-Header (oktale Größe=0) -> Inhalt (0 Bytes) -> FALSCHE POSITION
                                                                              ↓
                                                                    Inhalt als Header lesen!

Realwelt-Auslöser

Docker save erstellt Tar-Dateien mit:

  • Großen Schichten (>8 GB), die PAX-Erweiterungen erfordern
  • Schichtinhalten, die mit Dateisystem-Tar-Headern beginnen (etc/, usr/)
  • Wenn der Fehler ausgelöst wird, extrahieren Parser Dateisysteminhalte anstelle von Image-Manifesten

Generierte Reproduktionsdateien

  • pax_bug_compact.tar - Minimaler Reproduktionsfall

Erwartete Ergebnisse

Korrekte Bibliotheken (GNU tar, synchrone tar-Crate):

root@kitploit:~
normal.txt -> blob.bin -> marker.txt

Fehlerhafte Bibliotheken (tokio-tar):

root@kitploit:~
normal.txt -> blob.bin -> INNER_FILE -> marker.txt

Das Auftreten von INNER_FILE deutet auf den Fehler hin – die Bibliothek sprang in den Inhalt von blob.bin und hielt einen gefälschten Tar-Header für einen echten Eintrag.

Technische Details

Die Korrektur erfordert die Anwendung von PAX-Überschreibungen vor den Positionsberechnungen:

root@kitploit:~
// Read header
let mut file_size = header.size();

// Apply PAX overrides BEFORE calculating next position
if let Some(pax_size) = pending_pax.get("size") {
    file_size = pax_size.parse().unwrap();
}

// Now calculate next header position using effective size
let next_pos = current_pos + 512 + pad_to_512(file_size);

Lizenz

Dieser Reproduktionscode wird für Sicherheitsforschung und verantwortungsvolle Offenlegung bereitgestellt.

Siehe COPYING für die Lizenz des ursprünglichen Quellcodes.

Tool herunterladen