SQL-Injection

SQL-Injection

SQL-Injection Datenbanken II – Forensik in Datenbankmanagementsystemen Bachelor Fernstudium IT-Forensik Inhalt Einleitung .............................................................................................................................. 4 Zusatzbemerkung .................................................................................................................. 4 1.1 Vorbereitung ................................................................................................................ 5 1.2 Herausforderungen ...................................................................................................... 5 1.3 Installation und Einrichtung der VM .............................................................................. 5 1.4 SQL-Injection ..............................................................................................................10 2. Teil 1 – Praktische Anwendung anhand der Bachelor-Thesis Beispiele ............................11 2.1 Untersuchte Datenbankmanagementsysteme .............................................................11 2.2 Datenbankversion auslesen ........................................................................................11 2.2.1 MSSQL .................................................................................................................11 2.2.2 PostgreSQL ..........................................................................................................12 2.3 Ausspähen von Daten .................................................................................................12 2.3.1 MSSQL .................................................................................................................12 2.3.2 PostgreSQL ..........................................................................................................14 2.4 Verändern von Daten ..................................................................................................16 2.4.1 MSSQL .................................................................................................................16 2.4.2 PostgreSQL ..........................................................................................................20 2.5 Datenbankserver verändern ........................................................................................21 2.5.1 MSSQL .................................................................................................................21 2.5.2 PostgreSQL ..........................................................................................................23 2.6 Zugriff auf das Filesystem ...........................................................................................25 2.6.1 MSSQL .................................................................................................................25 2.6.2 PostgreSQL ..........................................................................................................26 2.7 Einschleusen von beliebigem Code ............................................................................27 2.7.1 MSSQL .................................................................................................................27 2.7.2 PostgreSQL ..........................................................................................................27 3. Teil 2 – Erkennen von Angriffen durch SQL-Injection .......................................................29 3.1 Untersuchte Datenbankmanagementsysteme .............................................................29 3.2 Datenbank einpflegen .................................................................................................29 3.2.1 MySQL .................................................................................................................29 3.2.2 Oracle ...................................................................................................................30 3.3 Frontend anpassen .....................................................................................................32 3.3.1 MySQL .................................................................................................................33 3.3.2 Oracle ...................................................................................................................35 3.4 Datenbankversion auslesen ........................................................................................36 3.4.1 MySQL .................................................................................................................36 3.4.2 Oracle ...................................................................................................................36 2 3.5 Ausspähen von Daten .................................................................................................37 3.5.1 MySQL .................................................................................................................37 3.5.2 Oracle ...................................................................................................................38 3.6 Verändern von Daten ..................................................................................................40 3.6.1 MySQL .................................................................................................................40 3.6.2 Oracle ...................................................................................................................41 3.7 Datenbankserver verändern ........................................................................................42 3.7.1 MySQL .................................................................................................................42 3.7.2 Oracle ...................................................................................................................43 3.8 Zugriff auf das Filesystem ...........................................................................................43 3.8.1 MySQL .................................................................................................................43 3.8.2 Oracle ...................................................................................................................43 3.9 Einschleusen beliebigen Codes ..................................................................................44 3.9.1 MySQL .................................................................................................................44 3.9.2 Oracle ...................................................................................................................44 4. Erkennen und Nachvollziehen von SQL-Injection .............................................................45 4.1 Webserverprotokolle ...................................................................................................45 4.2 Datenbankausführungspläne ......................................................................................45 4.2.1 MySQL .................................................................................................................45 4.2.2 Oracle ...................................................................................................................47 4.3 Transkationsprotokolle ................................................................................................50 4.3.1 MySQL .................................................................................................................50 4.3.2 Oracle ...................................................................................................................54 5. Zusammenfassung ...........................................................................................................54 6. Wiki-Eintrag ......................................................................................................................54 Payload .............................................................................................................................54 Quellen .................................................................................................................................55 3 Einleitung Diese Ausarbeitung befasst sich mit der praktischen Anwendung von SQL-Injections in unterschiedlichen Datenbankmanagementsystemen (DBMS). Das Vorgehen wird dokumentiert, wenn nötig erläutert und mit Screenshots gestützt. Die Ausarbeitung fokussiert sich lediglich auf die Dokumentation der Vorgehensweise wie SQL-Injections durchgeführt werden können. Basiswissen zu DBMS und Webentwicklung sind somit vorausgesetzt. Grundlage für die Ausarbeitung, bzw. Dokumentation ist die Bachelor-Thesis von Herrn Christian Hense aus August 2019. Im ersten Teil werden vorab zwei Datenbanksysteme gewählt, anhand derer die von Herrn Hense dargelegten Beispiele für SQL-Injection in Datenbanksystemen praktisch durchgeführt und entsprechend dokumentiert werden. Im zweiten Teil werden wieder zwei Datenbanksysteme (DBMS) gewählt und dort jeweils eine eigene Datenbank eingepflegt. Hieran sollen wiederum Beispiele für SQL-Injections durchgeführt und anschließend anhand der verschiedenen Artefakte nachvollzogen werden. Der gesamte Vorgang wird ebenfalls dokumentiert. Zusatzbemerkung Die Ausarbeitung orientiert sich nicht an der Vorgabe zur Verfassung wissenschaftlicher Arbeiten und ist demnach nicht als solche zu werten. Dennoch wurde nicht darauf verzichtet, neben den Screenshots Eingangs einen Satz zur Erläuterung anzugeben und/oder einige Fachbegriffe kurz zu erläutern. 4 1.1 Vorbereitung Um sich mit der Materie

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    55 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us