mehr Angriffsfläche als notwendig: Berechtigungen, Funktionen
Verwendung eigener statt etablierter Algorithmen: (bei Verschlüsselung/Verschleierung, Erzeugen von Zufallszahlen)
Verlassen auf eine einzige Maßnahme
fehlende Trennung von Daten & Code
Harvard-Architektur: getrennt im Speicher
Von-Neumann: Nicht getrennt im Speicher
Wo kommt Sicherheit her?
Maßnahmen
aktive Sicherheit
etablierte, technische Standardlösungen
Paketfilter Firewall
Firewall teilt Netzwerk in Bereiche; schafft kontrollierte übergänge über Regelsätze
filtert auf Schicht 3 (4-Schichten Modell)
d.h. anhand von Header Daten: Quell-IP, Quell-Port, Ziel-IP, Ziel-Port, Protokoll (z.B. TCP), Flags (bei TCP z.B. SYN, ACK, RST, FIN)
stateful Paketfilter: merkt sich Verbindungsstati -> d.h. keine Antwortregeln („Rückweg”) notwendig und keine Angriffe mit „falschem“ Verbindungsaufbau möglich
Whitelist / Blacklist: 1 Regel vergessen bei Whitelist nicht schädlich und bei Fehlfunktion bemerkbar ->sicher, bei Blacklist Lücke -> nicht sicher
Web-Application Firewall
arbeitet auf Schicht 4 (4 Schichten-Modell)
Header: Cookies, MIME-Typen
Inhalt (=>Filtern, Verändern)
HTTP-Methode
URL (Pfad, Query-String)
->wesentlich komplexer als Paketfilter-FW
->sehr enge Abstimmung mit Applikation(en) notwendig -> Wartungsaufwand
=>als Ergänzung zu Paketfilter-FW
DMZ: Demilitarisierte Zone
VPN
Road-Warrior
Site2Site-Kopplung: Verbindung mehrerer Netzwerke über ungesichertes Netz
Virenscanner
signaturbasiert: Bitmuster-Abbild aus Speicher -> Signatur-Erstellung => Bei Prüfung Vergleich mit bekannten Signaturen
Anomalieerkennung
IDS/IPS; Intrusion Detection/Prevention System
physikalische Sicherheit
programmiertechnisch
Parametervalidierung
Prepared Statements
Patches/Updates
Stackentkopplung (Proxy, …)
Mehrherstellerstrategie: bei seriell verwendeter SW/HW mit gleicher Aufgabe von verschiedenen Herstellern -> Change das selben Fehler geringer