Systemhärtung: Unterschied zwischen den Versionen

Aus Foxwiki
Subpages:
Keine Bearbeitungszusammenfassung
Zeile 61: Zeile 61:


= TMP2 =
= TMP2 =
== Debian 12 : System Härten - Allgemein ==
Geschrieben von Christopher Pope am Samstag, 26. August 2023
Einige der folgenden Einstellungen sind auch bereits in der Default Einstellung so. Da ich aber ein Set von Parametern für all meine Linux Systeme verwende setze ich diese nochmal explizit in einer config. Erstmal legen wir uns ein Backup der Default Config an
{| class="wikitable"
|1
|<code>sudo</code> <code>sysctl -a > /tmp/default_sysctl.txt</code>
|}
dann legen wir die Datei /etc/sysctl.d/97_hard.conf an und kopieren folgende Zeilen rein.
Die Erklärung zu den jeweiligen Konfiguration kann unter dem Link in der Quellenangabe nachgelesen werden.
Auch hier gilt wieder die Einstellungen müssen zu der eingesetzten Software kompatible sein.
{| class="wikitable"
|1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|<code>kernel.kptr_restrict = 2</code>
<code>kernel.dmesg_restrict = 1</code>
<code>kernel.unprivileged_bpf_disabled=1</code>
<code>net.core.bpf_jit_harden=2</code>
<code>dev.tty.ldisc_autoload=0</code>
<code>vm.unprivileged_userfaultfd=0</code>
<code>kernel.kexec_load_disabled = 1</code>
<code>kernel.sysrq=4</code>
<code>kernel.unprivileged_userns_clone=0</code>
<code>kernel.perf_event_paranoid = 3</code>
<code>kernel.yama.ptrace_scope=2</code>
<code>vm.mmap_rnd_bits=32</code>
<code>vm.mmap_rnd_compat_bits=16</code>
<code>fs.protected_symlinks=1</code>
<code>fs.protected_hardlinks=1</code>
<code>fs.protected_fifos=2</code>
<code>fs.protected_regular=2</code>
|}
Nach einem Neustart werden die Kernelparameter aktiv, wer nicht solange warten möchte kann diese mit
{| class="wikitable"
|1
|<code>service procps force-reload</code>
|}
sofort einlesen.
Quelle :
<nowiki>https://www.kernel.org/doc/html/latest/admin-guide/sysctl/</nowiki>
Kategorien: Client, Linux, Server
Tags für diesen Artikel: client, kernel, linux, parameter, security, server
Artikel mit ähnlichen Themen:
* xz-utils supply-chain attack : Scan nach Versionen
* Proxmox 8 : Clusternode hat graues Ausrufezeichen
* Debian 12 : ssh absichern mit port knocking
* Überprüfen von EoL (End of Life) Software
* Debian 12 : System Härten - Netzwerk

Version vom 20. April 2024, 11:11 Uhr

TMP

Unter Härten (englisch Hardening) versteht man in der Computertechnik, die Sicherheit eines Systems zu erhöhen, indem nur dedizierte Software eingesetzt wird, die für den Betrieb des Systems notwendig ist und deren unter Sicherheitsaspekten korrekter Ablauf garantiert werden kann. Das System soll dadurch besser vor Angriffen geschützt sein.[1]

Das National Institute of Standards and Technology definiert Härten in der IT-Sicherheit wie folgt: „Ein Prozess, der dazu dient, eine Angriffsmöglichkeit zu eliminieren, indem Schwachstellen gepatcht und nicht benötigte Dienste abgeschaltet werden.“[2]

Ziel ist es, ein System zu schaffen, das von vielen, auch weniger vertrauenswürdigen Personen benutzt werden kann. Beispielsweise gibt es für Gentoo Linux das hardened-Projekt[3], das eine Kernel-Version sowie weitere Systemdienste zusammenstellt, mit denen ein sicheres Linux-System auch für fremde Nutzer bereitgestellt werden kann.

Ziele

In der Praxis haben sich als Ziele von Härtungsmaßnahmen herausgebildet:

  • die Reduktion der Möglichkeiten zur Ausnutzung von Verwundbarkeiten
  • die Minimierung der möglichen Angriffsmethoden
  • die Beschränkung der einem Angreifer nach einem erfolgreichen Angriff zur Verfügung stehenden Werkzeuge
  • die Minimierung der einem Angreifer nach einem erfolgreichen Angriff zur Verfügung stehenden Privilegien
  • die Erhöhung der Wahrscheinlichkeit der Entdeckung eines erfolgreichen Angriffs

Als Nebenziel der Härtung kann auch eine mögliche Verringerung der Komplexität und des Wartungsaufwands des Systems gesehen werden, die zu einer höheren Beherrschbarkeit und damit einer Minimierung von Administrationsfehlern führen kann.

Methoden

Übliche Methoden der Härtung sind beispielsweise:

  • Entfernung oder Deaktivierung von für den Betrieb nicht zwingend erforderlichen Softwarekomponenten
  • Verwendung unprivilegierter Benutzerkonten zur Ausführung von Server-Prozessen
  • Anpassung von Dateisystemrechten und ihrer Vererbung
  • Verwendung von chroot oder anderen Jails für die Ausführung von Software
  • Verwendung von Mandatory Access Control
  • Nutzung von Verschlüsselung, z. B. für Datenübertragung
  • Verwendung möglichst fehlerfreier Software ohne bekannte Verwundbarkeiten

Ein Betriebssystem ist als „gehärtetes System“ zu bezeichnen,

  • wenn Adressbereiche für Programmbibliotheken (ASLR) und Programme (PIE) zufällig im virtuellen Speicher zugewiesen werden; ASLR kann nur vom Hersteller dieser Bibliotheken zum Erstellungszeitpunkt realisiert werden, nicht nachträglich im Betrieb,
  • wenn nur die Komponenten und Dienste installiert sind, die zum eigentlichen Betrieb benötigt werden,
  • wenn alle nicht benötigten Benutzerkonten gelöscht sind,
  • wenn alle nicht benötigten Ports geschlossen sind,
  • wenn restriktive Rechte gesetzt sind,
  • wenn straffe Systemrichtlinien vergeben sind.

Härtungsmaßnahmen sind getrennt von anderen Sicherungsmaßnahmen wie Patchzyklen, der Einführung von Antivirus-Lösungen, Firewalls oder IDS/IPS zu betrachten, die komplementäre Methoden der Prävention darstellen.

Siehe auch

Einzelnachweise

  1. Claudia Eckert: IT-Sicherheit: Konzepte – Verfahren – Protokolle, 8. Aufl. 2013, S. 181 (Auszug bei Google Books)
  2. Das Gentoo hardened-Projekt Dokumentationsübersicht

Weblinks


  1. https://de.wikipedia.org/wiki/H%C3%A4rten_(Computer)


TMP2

Debian 12 : System Härten - Allgemein

Geschrieben von Christopher Pope am Samstag, 26. August 2023 Einige der folgenden Einstellungen sind auch bereits in der Default Einstellung so. Da ich aber ein Set von Parametern für all meine Linux Systeme verwende setze ich diese nochmal explizit in einer config. Erstmal legen wir uns ein Backup der Default Config an

1 sudo sysctl -a > /tmp/default_sysctl.txt

dann legen wir die Datei /etc/sysctl.d/97_hard.conf an und kopieren folgende Zeilen rein. Die Erklärung zu den jeweiligen Konfiguration kann unter dem Link in der Quellenangabe nachgelesen werden.

Auch hier gilt wieder die Einstellungen müssen zu der eingesetzten Software kompatible sein.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

kernel.kptr_restrict = 2

kernel.dmesg_restrict = 1

kernel.unprivileged_bpf_disabled=1

net.core.bpf_jit_harden=2

dev.tty.ldisc_autoload=0

vm.unprivileged_userfaultfd=0

kernel.kexec_load_disabled = 1

kernel.sysrq=4

kernel.unprivileged_userns_clone=0

kernel.perf_event_paranoid = 3

kernel.yama.ptrace_scope=2

vm.mmap_rnd_bits=32

vm.mmap_rnd_compat_bits=16

fs.protected_symlinks=1

fs.protected_hardlinks=1

fs.protected_fifos=2

fs.protected_regular=2

Nach einem Neustart werden die Kernelparameter aktiv, wer nicht solange warten möchte kann diese mit

1 service procps force-reload

sofort einlesen. Quelle : https://www.kernel.org/doc/html/latest/admin-guide/sysctl/ Kategorien: Client, Linux, Server

Tags für diesen Artikel: client, kernel, linux, parameter, security, server

Artikel mit ähnlichen Themen:

  • xz-utils supply-chain attack : Scan nach Versionen
  • Proxmox 8 : Clusternode hat graues Ausrufezeichen
  • Debian 12 : ssh absichern mit port knocking
  • Überprüfen von EoL (End of Life) Software
  • Debian 12 : System Härten - Netzwerk