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
DBShield — Datenbank-Firewall geschrieben in Go | Kitploit
Tools/GitHubGitHub/nim4/dbshield
DefensivwerkzeugeWebsicherheitDatenbanksicherheitAnomalieerkennung
GitHubnim4/dbshield

DBShield

Datenbank-Firewall geschrieben in Go

Repository anzeigenWebseite
684161vor 8 JahrenVon 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

Linux Windows Go Report Card codecov Dev chat GoDoc MIT licensed

DBShield

Schützt Ihre Daten, indem es eingehende Abfragen von Ihrem Anwendungsserver überprüft und abnormale ablehnt.


Wie es funktioniert?

So interagiert beispielsweise ein Webserver normalerweise mit einem Datenbankserver:

Beispiel Webserver und Datenbank

Durch das Platzieren von DBShield vor dem Datenbankserver kann dieser vor abnormalen Abfragen geschützt werden. Um abnormale Abfragen zu erkennen, führen wir DBShield zunächst im Lernmodus aus. Der Lernmodus lässt alle Abfragen passieren, zeichnet jedoch Informationen über sie (Muster, Benutzername, Zeit und Quelle) in der internen Datenbank auf.

Lernmodus

Nachdem genügend Muster gesammelt wurden, können wir DBShield im Schutzmodus ausführen. Der Schutzmodus kann abnormale Abfragemuster, Benutzer und Quellen unterscheiden und basierend auf den Konfigurationen Maßnahmen ergreifen.

Schutzmodus


Demo

Für die Demo verwenden wir sqlmap (automatisches SQL-Injection- und Datenbankübernahme-Tool), um die SQL-Injection-Sicherheitslücke in user.php auszunutzen.

Im ersten Szenario nutzt sqlmap die SQL-Injection erfolgreich aus, wenn die Webanwendung direkt mit der Datenbank (MySQL) verbunden ist. Im zweiten Szenario modifizieren wir die user.php, sodass DBShield zwischen Webanwendung und Datenbank tritt, was den Injektionsversuch abbricht und sqlmap scheitern lässt.

Demo

Beispielausgaben

CLI

root@kitploit:~
$ go run main.go
2016/10/15 16:25:31 [INFO]  Config file: /etc/dbshield.yml
2016/10/15 16:25:31 [INFO]  Internal DB: /tmp/model/10.0.0.21_postgres.db
2016/10/15 16:25:31 [INFO]  Listening: 0.0.0.0:5000
2016/10/15 16:25:31 [INFO]  Backend: postgres (10.0.0.21:5432)
2016/10/15 16:25:31 [INFO]  Protect: true
2016/10/15 16:25:31 [INFO]  Web interface on https://127.0.0.1:8070/
2016/10/15 16:25:33 [INFO]  Connected from: 10.0.0.20:35910
2016/10/15 16:25:33 [INFO]  Connected to: 10.0.0.21:5432
2016/10/15 16:25:33 [INFO]  SSL connection
2016/10/15 16:25:34 [DEBUG] Client handshake done
2016/10/15 16:25:34 [DEBUG] Server handshake done
2016/10/15 16:25:34 [INFO]  User: postgres
2016/10/15 16:25:34 [INFO]  Database: test
2016/10/15 16:25:34 [INFO]  Query: SELECT * FROM stocks where id=-1 or 1=1
2016/10/15 16:25:34 [WARN]  Pattern not found: [53 55 51 52 55 52 50 53 55 51 53 49 115 116 111 99 107 115 53 55 51 53 50 105 100 54 49 52 53 53 55 51 55 57 53 55 52 48 52 53 55 51 55 57 54 49 53 55 51 55 57] (SELECT * FROM stocks where id=-1 or 1=1)
2016/10/15 16:25:34 [WARN]  Dropping connection

Web-Oberfläche

Web UI


Installation

Holen Sie es:

root@kitploit:~
$ go get -u github.com/nim4/DBShield

Dann können Sie die Hilfe mit dem Argument "-h" anzeigen:

root@kitploit:~
$ $GOPATH/bin/DBShield -h
DBShield 1.0.0-beta3
Usage of DBShield:
  -a	get list of abnormal queries
  -c file
      config file (default "/etc/dbshield.yml")
  -h	show help
  -k	show parsed config and exit
  -l	get list of captured patterns
  -version
      show version

und führen Sie es mit Ihrer Konfiguration aus, z.B.:

root@kitploit:~
$ $GOPATH/bin/DBShield -c config.yml

siehe Beispielkonfigurationsdatei

⚠️ WARNUNG: Verwenden Sie keine Standardzertifikate in Produktionsumgebungen!


Unterstützt:


Noch zu erledigen

(Nach Priorität sortiert)

  • Dokumentation verbessern
  • Microsoft SQL Server hinzufügen
  • Mehr Befehlszeilenargumente hinzufügen
  • 90% Testabdeckung erreichen
  • Oracle SSL unterstützen
Tool herunterladen
DatenbankSchutzSSL
DB2YesNo
MariaDBYesYes
MySQLYesYes
OracleYesNo
PostgresYesYes