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
libc-database — Erstelle eine Datenbank mit libc-Offsets, um die Ausnutzung zu vereinfachen. | Kitploit
Tools/GitHubGitHub/niklasb/libc-database
SchwachstellenanalyseExploitationInformationsbeschaffungCTFBinary-Exploitation
GitHubniklasb/libc-database

libc-database

Erstelle eine Datenbank mit libc-Offsets, um die Ausnutzung zu vereinfachen.

Repository anzeigen
1.9k199vor 11 TagenVon Kitploit 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

Webschnittstelle

libc-database hat jetzt einen Webdienst und ein Frontend. Besuchen Sie https://libc.rip/ um es auszuprobieren! Lesen Sie https://github.com/niklasb/libc-database/tree/master/searchengine wenn Sie an der API interessiert sind.

Erstellen einer libc-Offset-Datenbank

Wenn Sie Fehler erhalten, überprüfen Sie bitte den Abschnitt "Anforderungen" weiter unten.

Rufen Sie die gewünschten libc-Kategorien ab und extrahieren Sie die Symbol-Offsets. Es wird nichts zweimal heruntergeladen, sodass Sie es auch zum Aktualisieren Ihrer Datenbank verwenden können:

root@kitploit:~
$ ./get  # List categories
$ ./get ubuntu debian  # Download Ubuntu's and Debian's libc, old default behavior
$ ./get all  # Download all categories. Can take a while!

Sie können auch eine benutzerdefinierte libc zu Ihrer Datenbank hinzufügen.

root@kitploit:~
$ ./add /usr/lib/libc-2.21.so

Finden Sie alle libcs in der Datenbank, die die angegebenen Namen an den angegebenen Adressen haben. Es werden nur die letzten 12 Bits überprüft, da die Randomisierung normalerweise auf Seitenebene arbeitet.

root@kitploit:~
$ ./find printf 260 puts f30
archive-glibc (libc6_2.19-10ubuntu2_i386)

Finden Sie eine libc anhand der geleakten Rückkehradresse in __libc_start_main.

root@kitploit:~
$ ./find __libc_start_main_ret a83
ubuntu-trusty-i386-libc6 (libc6_2.19-0ubuntu6.6_i386)
archive-eglibc (libc6_2.19-0ubuntu6_i386)
ubuntu-utopic-i386-libc6 (libc6_2.19-10ubuntu2.3_i386)
archive-glibc (libc6_2.19-10ubuntu2_i386)
archive-glibc (libc6_2.19-15ubuntu2_i386)

Geben Sie einige nützliche Offsets aus, gegeben eine libc-ID. Sie können auch eigene Namen zum Ausgeben angeben.

root@kitploit:~
$ ./dump libc6_2.19-0ubuntu6.6_i386
offset___libc_start_main_ret = 0x19a83
offset_system = 0x00040190
offset_dup2 = 0x000db590
offset_recv = 0x000ed2d0
offset_str_bin_sh = 0x160a24

Überprüfen Sie, ob eine Bibliothek bereits in der Datenbank vorhanden ist.

root@kitploit:~
$ ./identify /usr/lib/libc.so.6
local-f706181f06104ef6c7008c066290ea47aa4a82c5

Oder finden Sie eine libc mittels eines Hash (derzeit sind BuildID, MD5, SHA1 und SHA256 implementiert):

root@kitploit:~
$ ./identify bid=ebeabf5f7039f53748e996fc976b4da2d486a626
libc6_2.17-93ubuntu4_i386
$ ./identify md5=af7c40da33c685d67cdb166bd6ab7ac0
libc6_2.17-93ubuntu4_i386
$ ./identify sha1=9054f5cb7969056b6816b1e2572f2506370940c4
libc6_2.17-93ubuntu4_i386
$ ./identify sha256=8dc102c06c50512d1e5142ce93a6faf4ec8b6f5d9e33d2e1b45311aef683d9b2
libc6_2.17-93ubuntu4_i386

Laden Sie die gesamten libs herunter, die einer libc-ID entsprechen.

root@kitploit:~
$ ./download libc6_2.23-0ubuntu10_amd64
Getting libc6_2.23-0ubuntu10_amd64
    -> Location: http://security.ubuntu.com/ubuntu/pool/main/g/glibc/libc6_2.23-0ubuntu10_amd64.deb
    -> Downloading package
    -> Extracting package
    -> Package saved to libs/libc6_2.23-0ubuntu10_amd64
$ ls libs/libc6_2.23-0ubuntu10_amd64
ld-2.23.so ... libc.so.6 ... libpthread.so.0 ...

Anforderungen

Allgemein

Um diese Skripte auszuführen, benötigen Sie folgende Befehle in Ihrem PATH:

  • readelf
  • objdump
  • strings
  • perl
  • find
  • grep
  • md5sum
  • sha1sum
  • sha256sum
  • file

Debian-basiert (Ubuntu, Debian, Kali Linux, ParrotSec)

  • mktemp
  • perl
  • wget
  • ar
  • tar
  • grep
  • zstd

RPM-basiert (Kategorie 'rpm')

  • mktemp
  • perl
  • wget
  • rpm2cpio
  • cpio
  • grep

CentOS-basiert

Zusätzlich zu den RPM-basierten Anforderungen benötigen Sie:

  • wget
  • gzip
  • grep

Pacman-basiert

  • mktemp
  • perl
  • grep
  • sed
  • cat
  • wget
  • zstd
  • xz-utils
  • tar

APK-basiert

  • mktemp
  • perl
  • wget
  • tar
  • gzip
  • grep

Launchpad-basiert

Zusätzlich zu den Debian-basierten Anforderungen benötigen Sie:

  • jq

Alles installieren

Um alles auf Debian 10 zu installieren, führen Sie diese Befehle aus:

root@kitploit:~
apt-get update
apt-get install -y \
  binutils file \
  wget \
  rpm2cpio cpio \
  zstd jq
Tool herunterladen