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
dbslice — Extrahiere einen Ausschnitt deiner Produktionsdatenbank, um Fehler lokal zu reproduzieren. Richte dbslice auf einen Datensatz, es folgt Fremdschlüsseln und liefert dir einen vollständigen, importierbaren Teilausschnitt. | Kitploit
Tools/GitHubGitHub/nabroleonx/dbslice
Allgemeine DienstprogrammeKonfigurationsprüfungDatenwiederherstellungDevSecOpsPrivatsphäreDatenbanksicherheit
GitHubnabroleonx/dbslice

dbslice

Extrahiere einen Ausschnitt deiner Produktionsdatenbank, um Fehler lokal zu reproduzieren. Richte dbslice auf einen Datensatz, es folgt Fremdschlüsseln und liefert dir einen vollständigen, importierbaren Teilausschnitt.

Repository anzeigen
14163vor 2 MonatenVon Kitploit geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

dbslice-Logo

dbslice

PyPI version License: MIT Python 3.10+

Extrahiere minimale, referenziell intakte Datenbank-Teilmengen für lokale Entwicklung und Fehlersuche.

Das Problem

Die gesamte Produktionsdatenbank auf deinen Rechner zu kopieren ist unmöglich. Aber einen Fehler zu reproduzieren erfordert oft genau die Daten, die ihn verursacht haben. dbslice löst dies, indem nur die benötigten Datensätze extrahiert werden, wobei Fremdschlüsselbeziehungen verfolgt werden, um die referenzielle Integrität zu gewährleisten.

dbslice — von Seed zur Teilmenge

Schnellstart

root@kitploit:~
# Global installieren
uv tool install dbslice   # oder: pip install dbslice

# Eine Bestellung und alle zugehörigen Datensätze extrahieren
dbslice extract postgres://localhost/myapp --seed "orders.id=12345" > subset.sql

# In lokale Datenbank importieren
psql -d localdb < subset.sql

Funktionen

  • Null-Konfigurations-Start – Schema wird automatisch erkannt, keine Datenmodelldatei erforderlich
  • Ein einziger Befehl – Extrahiere vollständige Daten-Teilmengen mit einem CLI-Aufruf
  • Standardmäßig sicher – Erkennt und anonymisiert automatisch sensible Felder (E-Mails, Telefonnummern, SSNs usw.)
  • Compliance-Profile – Integrierte GDPR-, HIPAA-Safe-Harbor- und PCI-DSS-Profile mit zweiphasigem PII-Scan
  • Spaltenzuordnungs-UI – Lokale Browser-Oberfläche zur visuellen Zuordnung von Spalten, Anwendung von Compliance-Profilen und Export der Konfiguration
  • Mehrere Ausgabeformate – SQL, JSON und CSV
  • Streaming – Speicherschonende Extraktion für große Datensätze (100K+ Zeilen)
  • Virtuelle Fremdschlüssel – Unterstützung für Django GenericForeignKeys und implizite Beziehungen per Konfiguration
  • Konfigurationsdateien – YAML-basierte Konfiguration für wiederholbare Extraktionen
  • Validierung – Überprüft referenzielle Integrität der extrahierten Daten

Datenbank-Unterstützung

DatenbankStatus
PostgreSQLVoll unterstützt
MySQLGeplant (noch nicht implementiert)
SQLiteGeplant (noch nicht implementiert)

Installation

root@kitploit:~
# Mit uv installieren (empfohlen)
uv add dbslice

# Ohne Installation ausprobieren
uvx dbslice --help

# Oder mit pip
pip install dbslice

Verwendung

Grundlegende Extraktion

root@kitploit:~
# Nach Primärschlüssel extrahieren
dbslice extract postgres://user:pass@host:5432/db --seed "orders.id=12345"

# Mit WHERE-Klausel extrahieren
dbslice extract postgres://localhost/db --seed "orders:status='failed' AND created_at > '2024-01-01'"

# Mehrere Seeds
dbslice extract postgres://localhost/db \
  --seed "orders.id=100" \
  --seed "orders.id=101"

Traversierung steuern

root@kitploit:~
# Tiefe begrenzen (Standard: 3)
dbslice extract postgres://... --seed "orders.id=1" --depth 2

# Richtung: up (nur Eltern), down (nur Kinder), both (Standard)
dbslice extract postgres://... --seed "orders.id=1" --direction up

Anonymisierung

root@kitploit:~
# Erkannte sensible Felder automatisch anonymisieren
dbslice extract postgres://... --seed "users.id=1" --anonymize

# Zusätzliche Felder schwärzen
dbslice extract postgres://... --seed "users.id=1" --anonymize --redact "audit_logs.ip_address"

Spaltenzuordnungs-UI

Ordne Spalten visuell zu, wende Compliance-Profile an und generiere eine einsatzbereite Konfiguration – alles über eine lokale Browser-Oberfläche.

root@kitploit:~
dbslice map postgres://localhost/myapp

# Benutzerdefinierter Port
dbslice map postgres://localhost/myapp --port 8888

# Funktioniert auch mit uvx (keine Installation nötig)
uvx dbslice map postgres://localhost/myapp
Spalten Anonymisierungsregeln zuordnenKonfiguration generieren und exportieren
SpaltenzuordnungGenerierte Konfiguration

Läuft auf 127.0.0.1:9473 mit einem einmaligen Session-Token – keine Daten verlassen deinen Rechner. Wende GDPR-, HIPAA- oder PCI-DSS-Profile mit einem Klick an, überprüfe, was maskiert wird, und lade dann das YAML herunter.

Compliance-Profile

root@kitploit:~
# HIPAA Safe Harbor – maskiert automatisch alle 18 Identifikatortypen
dbslice extract postgres://... --seed "patients.id=1" --compliance hipaa --compliance-strict

# Mehrere Profile + Audit-Manifest
dbslice extract postgres://... --seed "users.id=1" --compliance gdpr --compliance pci-dss -f subset.sql
# Erzeugt subset.sql + subset.manifest.json

Ausgabeformate

root@kitploit:~
# SQL (Standard)
dbslice extract postgres://... --seed "orders.id=1" --output sql

# JSON-Fixtures
dbslice extract postgres://... --seed "orders.id=1" --output json --out-file fixtures/

# CSV
dbslice extract postgres://... --seed "orders.id=1" --output csv --out-file data/

Virtuelle Fremdschlüssel

Für Beziehungen, die nicht im Datenbankschema definiert sind (Django GenericForeignKeys, implizite Beziehungen):

root@kitploit:~
# dbslice.yaml
database:
  url: postgres://localhost:5432/myapp

virtual_foreign_keys:
  - source_table: notifications
    source_columns: [object_id]
    target_table: orders
    description: "Generischer FK zu Bestellungen via ContentType"

  - source_table: audit_log
    source_columns: [user_id]
    target_table: users
    description: "Impliziter FK ohne DB-Constraint"
root@kitploit:~
dbslice extract --config dbslice.yaml --seed "users.id=1"

Schema inspizieren

root@kitploit:~
dbslice inspect postgres://localhost/myapp

Konfigurationsdatei

root@kitploit:~
# Konfiguration aus Datenbank generieren
dbslice init postgres://localhost/myapp --out-file dbslice.yaml

# Konfiguration verwenden
dbslice extract --config dbslice.yaml --seed "orders.id=12345"

So funktioniert es

  1. Schema lesen – Liest das Datenbankschema aus, um Tabellen und Fremdschlüsselbeziehungen zu entdecken
  2. Traversieren – Startet von den Seed-Datensätzen und folgt den FK-Beziehungen per BFS
  3. Extrahieren – Ruft alle identifizierten Datensätze ab
  4. Sortieren – Sortiert Tabellen topologisch für korrekte INSERT-Reihenfolge
  5. Ausgeben – Erzeugt SQL/JSON/CSV mit korrektem Escaping

Vergleich

FeaturedbsliceJailerGreenmaskslice-db
SprachePythonJavaGoRuby
KonfigurationNull-KonfigurationErfordert ModelldateiKonfiguration erforderlichManuelles YAML
EinrichtungszeitSekundenStundenMittelMittel
AnonymisierungIntegriert (Faker)Plugin-basiertFortgeschrittene TransformatorenNicht verfügbar
Compliance-ProfileGDPR, HIPAA, PCI-DSSKeineKeineKeine
Spaltenzuordnungs-UIIntegriert (lokal)KeineKeineKeine
PII-Wert-ScanZweiphasig (vor/nach Maskierung)KeineKeineKeine
Teilmengen-BildungFK-TraversierungFK-TraversierungEingeschränktFK-Traversierung
AusgabeformateSQL, JSON, CSVSQL, XML, CSVSQLNur SQL
ZyklenbehandlungAutomatischManuelle KonfigurationNicht zutreffendManuell
StreamingIntegriertKonfigurierbarIntegriertNicht verfügbar
WartungAktivAktivAktivNicht gewartet

dbslice ist die leichte, null-Konfigurations-Python-Option: Installation und Extraktion in unter einer Minute.

Entwicklung

root@kitploit:~
git clone https://github.com/nabroleonx/dbslice.git
cd dbslice
uv sync --dev
uv run pytest

Lizenz

MIT

Tool herunterladen