AppITSec


Hat jmd zu Übungsblatt 7 mitgeschrieben bzw. eine Musterlösung und könnte sie mir zuschicken?

Danke :slight_smile:


Wo wir bei Passwörtern waren^^

https://www.youtube.com/watch?v=opRMrEfAIiI
:smiley:

1 „Gefällt mir“

Hat hier irgendjemand Interesse daran, mal eine Lösung zu dem Fragenkatalog zu besprechen? Finde einige Fragen schon diskutierbar.

XSS
Wurde eigentlich dieses Semester XSS besprochen?

Ich meine mich zu erinnern, dass er das durchgenommen hat, aber gerade habe ich mir die Aufzeichnung angeschaut und da wurde das Kapitel uebersprungen. Eine Uebung gab es ja auch nicht dazu. Oder vielleicht etwas, das nicht aufgezeichnet wurde?


Klar gabs ne Übung dazu, nämlich Nummer 6.


Danke, die hab ich glatt uebersehen. Obwohl sie doch ganz oben steht …


Ja, ich hätte Interesse daran die durchzusprechen!
Bin mir bei ein paar auch nicht so ganz sicher was die ideale Antwort ist…


Ich würde einfach mal anfangen mit ein paar Fragen, bei denen ich mir nicht sicher bin mit meinen Gedanken jeweils dazu. Werde das Dokument, in dem ich versucht habe alle Fragen zu beantworten, im Anschluss zur Altklausur-Sammlung hinzufügen.

Kapitel 2: Kryptographie

  1. Wozu ist ein Schlüsselverteilungsdienst nützlich? Hilft der auch bei der Verwendung von symmetrischer Kryptographie?
    • Teilnehmer können dort ihre Schlüssel hinterlegen und andere bei Bedarf den Schlüssel abfragen
    • Zertifizieren, dass Schlüssel von der richtigen Person kommt
    • Asymmetrisch: public Key wird hinterlegt
    • Symmetrisch: Schlüssel setzt sich auch mehreren Teilen zusammen. Einzelner Dienst kennt nicht den ganzen Schlüssel, kann nicht entschlüsseln → ja, hilft etwas?

  2. Der Empfänger Ihrer Nachricht möchte sicherstellen, dass diese auf dem Weg zu ihm nicht manipuliert wurde. Welche Kenntnisse benötigen Sender und Empfänger, und wie können sie vorgehen?
    ?Über fortlaufende “Nummerierung”, die gehasht ist??

  3. Kann ich nicht einfach die XOR-Funktion benutzen, um einen MAC über alle meine Daten zu erstellen?
    Vermutlich nicht, aber nicht sicher wieso…

Kapitel 3:
2. Was ist der Unterschied zwischen Vertraulichkeit und Anonymität?
• Vertraulichkeit: Information gelangt nur an intendierte Adressaten, kein anderer hat Zugriff auf die Daten
• Anonymität: Benutzung einer Ressource ist bekannt, aber nicht von wem

  1. Welche Analogien bestehen zwischen DC-Netzen und der Vernam-Chiffre (one-time-pad)?
    • Beide informationstheoretisch sicher, da hinter jeder Ausgabe immer mind. 2 Sender mit gleicher Wahrscheinlichkeit stecken
    • Benutzen Verschlüsselung immer nur 1 mal
    Weitere?
  2. Wie erkennt Sie ein Webseitenbetreiber wieder, ohne dass sie sich erneut manuell über Benutzername und Passwort authentifizieren müssen?
    • Webbrowser Fingerprint, Cookies
    weitere?

Kapitel 4:
2. Was könnte man mit einem perfekten Authentifikationsmechanismus alles erreichen?
• Wann immer eine Aktivität mit der Kennung X durchgeführt wird, dann wurde diese Aktivität durch den Benutzer mit der dazugehörigen Kennung initiiert
• Sicherstellen welche Person welche Aktivität durchführt. Benutzerkennung zu Identität zuordnen

  1. Wie kann man einen Referenzmonitor umgehen? Geben Sie ein Beispiel.
    • Beispiel: Betriebssystemmodi (User - Anwendung, System – Kernel)
    • Auszuhebeln bei physischem Zugriff auf die Hardware (Cold Boot, Self Encrypting Drive)
    ist das korrekt?

  2. Worauf muss ich achten, wenn ich das Passwort für meine verschlüsselte Festplatte am Rechner eingebe?
    • Sicheres Booten : TPM → BIOS-> basic Kernel → Kernelmodule → Applikation
    • Betriebssystem „weiß“ , dass es in definiertem Zustand ist
    • Vertrauenswürdigen Rechner
    Das bezieht sich vermutlich auch auf das Evil Maid bzw im Ende auf Copy, Sniff & Revert, was mir da jedoch nicht ganz klar ist:
    Wenn ein TPM auf der Hardware installiert ist, dann müsste die doch eigentlich auch das Bootkit entdecken und ein Laden sperren, oder?

  3. Warum kann ein ausführbares Programm auch dann Fehler enthalten, wenn sein Quellcode keinerlei Fehler enthält?
    • Wenn der Compiler manipuliert ist, dann fügt er an einer Stelle fehlerhaften Code ein/Backdoor ein
    Wenn mir jemand diesen Vorgang der des Einschleusen/Beibringen der Schwachstelle in den Compiler nochmal kurz anders als in dem Video zu sehen ist, erklären könnte, wäre das super…
    Wie dieses “Beibringen” in den Compiler geht, ist mir nicht ganz klar…

Kapitel 5:
3. Welche Arten von SQL-Injections gibt es?
Ist hier einfach gefragt, dass es welche gibt, die eine direkte Ausgabe produzieren und die blind SQL-Injections, die über ihre Laufzeit Informationen liefern?
4. Wie kann man SQL-Injections verhindern?
• Korrekte Rechtevergabe
• Maskieren von Steuerzeichen/ Korrektes Escapen
• Nur 1 Statement pro Zeile erlauben
• Prepared Statements
Wie funktionieren die perpared Statements genau? Sie verursachen eine Trennung von Daten und Kommando, aber das Codebeispiel in den Folien verstehe ich nicht ganz…

  1. Wie können Sie folgendes Query ( SELECT user FROM users WHERE user=‘$user‘ AND password=‘$password‘) ausnutzen, um (1) sich als irgendein Benutzer anzumelden? (2) sich als Benutzer root anzumelden? (3) statt einer Anmeldung die Spalte secret aus der Tabelle secret auszulesen?
    • (1) Admin‘;-- oder AND 1=1;-- • (2) root‘;-- • (3) AND 1=0 UNION SELECT * FROM secret LIMIT 1
    Absolut nicht sicher, ob das so richtig ist?? Befürchte eher nicht…