PRISM

PRISM ist ein Überwachungsprogramm von der NSA. 2013 durch Snowden enthüllt.

Es erlaubt der NSA Zugriff auf Daten in dem Internet.

==Grundsätzlich : Kombination mit Firmen und FISA-Law== (Foreign Intelligence Surveillance Act)

Auch trustworthy Anbieter sind von der NSA nicht sicher.

Security is a relative Term

Es hängt immer von dem Bedrohungsmodell, Fähigkeiten des Angreifers und den Randbedimgungen ab.

Beispiele aus den Folien:

  • Physisch präsent → kann einfach den ganzen Computer stehlen.

  • 10.000 CPUs und 1 Jahr → könnte 10¹⁵ Passwörter durchprobieren (Brute Force).

  • Compiler-Hersteller → könnte schon beim Bauen der Software bösartigen Code einschleusen.

  • Zugriff auf den Linux-Sourcecode-Server → könnte den Kernel manipulieren.

==Remember :== SECURITY muss immer im Kontext betrachtet werden.

Passwords Comic

We have trained people to choose Passwords that are hard for humans to remember, but easy for computers to guess → it doesn’t matter that complicated signs %`|& are part of the PW

Important

Die Sicherheit eines Passwords hängt von Zufälligkeit (Entropy) und der Länge ab.
Nicht von der Kompliziertheit.

Important

correct horse battery staple ist somit sicherer wie Tr0ub4dor&3

IT Security

Know the Risk of :

  • Sending Emails

  • Browsing the Web

  • buying on e commerce websites

  • running operating systems

What is Risk ?

Risiko wird als Zusammensetzung zwischen Impact und Probability dargestellt.

  • Impact : Wie Hoch ist der Schaden falls das Ereignis eintritt

  • Probability : Wie hoch ist die Wahrscheinlichkeit, dass das Ereignis eintritt ?

Beispiel : Dice Roll Gambling

Managing Risk

We need to balance the SECURITY Investment with the possible loss

OWASP Threat model cheat sheet

Important

Threat modeling analyzes a system from an adversarial perspective, focusing on ways in which an attacker can exploit a system.

Mittels Threat MOdeling können wir BEdrohungen identifizieren, und strukturiert gegen Sie angehen.

Ziele

  • Herausfinden, was geschützt werden muss (==Assets==)

  • Erkennen, wer potenzielle Angreifer sein könnten (==Threat Actors==)

  • Verstehen, wie sie angreifen könnten (==Attack Vectors==)

  • Abschätzen, welcher Schaden eintreten könnte (==Impact==)

  • Priorisieren, wo Sicherheitsmaßnahmen am dringendsten sind

Wichtig : Threat Modelling passiert nicht nur ein mal, sondern wird early im Software Development Life Cycle eingesetzt.

CIA - Condifentiality, Integrity, Availability

in terms of data: CIA

  • confidentiality (Encryption algorithms)

  • integrity (secure hash algorithms / digital signatures)

  • availability (backup/redundancy/secure erase

  • in terms of roles

    • authentication (authentication protocols

    • authorization (table lookup of authenticated people)

    • linking these goals

  • authenticity (digital signatures)

  • accountability (integrity-proven audit trail)

  • assurance (Documentation of all SECURITY components)
    These goals may be managed independently.

Important

Bei BitCoin wird Sicherheit nicht durch Confidentiality (geheim) sondern durch Integrity gewährleistet.

Attack Scenarios

Pre Image

==Bildlich==: Du hast ein Schloss (den festen Hash) und suchst einen Schlüssel, der genau dieses Schloss öffnet.

Collision

  • Du darfst beliebige zwei verschiedene Eingaben wählen.

  • ==Bildlich==: Du suchst irgendzwei unterschiedliche Schlüssel, die zufällig zum selben Schloss passen.

  • Preimage Attack: Wir suchen einen bestimmten Output yy → müssen im Schnitt O(n)O(n) Versuche machen.

  • Collision Attack: Wir suchen irgendein Paar (x,x′)(x,x′) mit gleicher Ausgabe → nur O(n)O(n) Versuche dank Birthday Paradox.

Financial Transactions, Chains ( Bitcoin)

Ein Pointer speichert nur die Adresse des nächsten Elements.

Ein Chain Pointer speichert die Adresse des vorherigen Elements, und den Hashwert des jeweiligen Inhalts

Warum ?

🔍 Beispiel:

Stell dir vor, ein Block B2 enthält:

  • Adresse von Block B1

  • Hash(B1)

Wenn jemand den Inhalt von B1 ändert:

  • Adresse von B1 bleibt gleich (Pointer-Teil unverändert)

  • Aber der Hash(B1) im B2 stimmt nicht mehr → Integritätsprüfung schlägt fehl.

Man muss also nicht nur den Inhalt ändern, sondern auch alle Nachfolgenden Hashes