Sichere Systeme: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 8: Zeile 8:
* top-down Vorgehensweise aus Software-Engineering
* top-down Vorgehensweise aus Software-Engineering
* Schwierig, da Angreifer viele Möglichkeiten hat
* Schwierig, da Angreifer viele Möglichkeiten hat
; 1975 Saltzer und Schröder
* Nach wie vor gültig


== Allgemeine Prinzipien ==
== Allgemeine Prinzipien ==
Zeile 15: Zeile 18:
! Option !! Beschreibung
! Option !! Beschreibung
|-
|-
| Erlaubnis (fail-safe defaults) ||
| [[#Erlaubnis|Erlaubnis]] || fail-safe defaults
|-
|-
| Vollständigkeit (complete mediation) ||
| [[#Vollständigkeit|Vollständigkeit]] || complete mediation
|-
|-
| Need-to-Know ||  
| [[#Need-to-Know|Need-to-Know]] ||  
|-
|-
| Benutzerakzeptanz ||  
| [[#Benutzerakzeptanz|Benutzerakzeptanz]] ||  
|-
|-
| Offener Entwurf (open design) ||
| [[#Offener Entwurf|Offener Entwurf]] || open design
|-
|-
| KISS - Prinzip ||  
| [[#KISS - Prinzip|KISS - Prinzip]] ||  
|-
|-
| Validierung / Evaluierung ||  
| [[#Validierung/Evaluierung|Validierung/Evaluierung]] ||  
|}
|}


=== Erlaubnis (fail-safe defaults) ===
=== Erlaubnis ===
; Verbot mit Erlaubnisvorbehalt
; Fail-Safe Defaults
* Grundsätzlich jeder Zugriff verboten
* Verbot mit Erlaubnisvorbehalt
* Grundsätzlich ist jeder Zugriff verboten
* Default Deny
* Default Deny
* Nur durch explizite Erlaubnis wird Zugriffsrecht gewährt
* Nur durch explizite Erlaubnis wird Zugriffsrecht gewährt
* Whitelisting
* [[Whitelisting]]


=== Vollständigkeit ===
=== Vollständigkeit ===
Zeile 47: Zeile 51:
; Prinzip der minimalen Rechte
; Prinzip der minimalen Rechte
* Jedes Subjekt bekommt nur genau die Zugriffsrechte, die es zur Erfüllung seiner Aufgaben benötigt
* Jedes Subjekt bekommt nur genau die Zugriffsrechte, die es zur Erfüllung seiner Aufgaben benötigt
* System, in dem ein Admnistratoren unbeschränkte Rechte hat, verstößt gegen dieses Prinzip


; Systeme, in dem Administratoren unbeschränkte Rechte haben, verstoßen gegen dieses Prinzip
* AppAmor
* AppAmor
* SELinux
* SELinux
* Rollenbasierte Rechte
* Rollenbasierte Rechte
* Akzeptanz (economy of mechanism)


=== Benutzerakzeptanz ===
=== Benutzerakzeptanz ===
Zeile 58: Zeile 61:
* einfach zu nutzen sein
* einfach zu nutzen sein
* routinemäßig und automatisch angewandt werden
* routinemäßig und automatisch angewandt werden
* Akzeptanz (economy of mechanism)


=== Offener Entwurf (open design) ===
=== Offener Entwurf ===
; Offener Entwurf (open design)
; Sicherheit eines Systems darf nicht von der Geheimhaltung spezieller Verfahren abhängig sein
; Sicherheit eines Systems darf nicht von der Geheimhaltung spezieller Verfahren abhängig sein
* Verwendete Verfahren und Mechanismen, die beim Entwurf des Systems verwendet werden, müssen offen gelegt werden
* Verwendete Verfahren und Mechanismen, die beim Entwurf des Systems verwendet werden, müssen offen gelegt werden
Zeile 69: Zeile 74:
[[Keep it simple, stupid]]
[[Keep it simple, stupid]]


=== Validierung / Evaluierung ===
=== Validierung/Evaluierung ===
;Testen
; Üben und Testen
* Methodisches Testen des implementierten Systems
* Methodisches Testen des implementierten Systems
* Verifizierung der sicherheitsrelevanten Funktionen
* Verifizierung der sicherheitsrelevanten Funktionen
Zeile 88: Zeile 93:
===== Weblinks =====
===== Weblinks =====


[[Kategorie:Risikomanagement]]
[[Kategorie:Entwurf]]
</noinclude>
</noinclude>
[[Kategorie:IT-Sicherheit]]

Aktuelle Version vom 9. Dezember 2023, 07:46 Uhr

Sicherer Systeme - Konstruktion sicherer Systeme

Beschreibung

Entwicklungsprozess
  • Dezidierte Methoden bislang kaum entwickelt
Allgemeine methodische Regeln
  • top-down Vorgehensweise aus Software-Engineering
  • Schwierig, da Angreifer viele Möglichkeiten hat
1975 Saltzer und Schröder
  • Nach wie vor gültig

Allgemeine Prinzipien

Allgemeine Konstruktionsprinzipien
Option Beschreibung
Erlaubnis fail-safe defaults
Vollständigkeit complete mediation
Need-to-Know
Benutzerakzeptanz
Offener Entwurf open design
KISS - Prinzip
Validierung/Evaluierung

Erlaubnis

Fail-Safe Defaults
  • Verbot mit Erlaubnisvorbehalt
  • Grundsätzlich ist jeder Zugriff verboten
  • Default Deny
  • Nur durch explizite Erlaubnis wird Zugriffsrecht gewährt
  • Whitelisting

Vollständigkeit

Jeder Zugriff ist auf Zulässigkeit zu prüfen!
Complete Mediation
  • System, das nur beim Öffnen Erlaubnis prüft, nicht bei jedem Schreiben, verletzt das Prinzip
  • Rechte können sich zwischendurch verändert haben

Need-to-Know

Prinzip der minimalen Rechte
  • Jedes Subjekt bekommt nur genau die Zugriffsrechte, die es zur Erfüllung seiner Aufgaben benötigt
Systeme, in dem Administratoren unbeschränkte Rechte haben, verstoßen gegen dieses Prinzip
  • AppAmor
  • SELinux
  • Rollenbasierte Rechte

Benutzerakzeptanz

Sicherheitsmechanismen müssen
  • einfach zu nutzen sein
  • routinemäßig und automatisch angewandt werden
  • Akzeptanz (economy of mechanism)

Offener Entwurf

Offener Entwurf (open design)
Sicherheit eines Systems darf nicht von der Geheimhaltung spezieller Verfahren abhängig sein
  • Verwendete Verfahren und Mechanismen, die beim Entwurf des Systems verwendet werden, müssen offen gelegt werden
  • No security through obscurity
  • Sicherheit kryptografischer Verfahren sollte nicht darauf basieren, dass Verschlüsselungsverfahren nicht bekannt ist.
  • „Schlüssel unter der Fußmatte“

KISS - Prinzip

Keep it simple, stupid

Validierung/Evaluierung

Üben und Testen
  • Methodisches Testen des implementierten Systems
  • Verifizierung der sicherheitsrelevanten Funktionen
Testziele, -pläne, -verfahren festlegen, dokumentieren.
  • Vollständigkeit der Tests
  • Code Review
  • Evaluierung durch Dritte


Anhang

Siehe auch

Links

Projekt
Weblinks