ADD english text to 04 mitigations, 05... todo

This commit is contained in:
2025-04-15 18:04:10 +02:00
parent f3241b8e83
commit dd5996e5be
5 changed files with 244 additions and 12 deletions

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:ad4fcf311c2fe33ce4e9e89e2b518464dc293c456ed8780e24a7882aa093bf46 oid sha256:05801ee0e31215eac1777cb6cee6847fa72de2343fd5737bb3480ecd20f45d2f
size 3268151 size 3287269

View File

@@ -10,6 +10,8 @@
% pacman -S texlive-mathscience % pacman -S texlive-mathscience
%\includeonly{ %\includeonly{
%linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities,
%linux_configuration_05_power_management_and_acpi_options,
%linux_configuration_13_memory_management_options, %linux_configuration_13_memory_management_options,
%linux_configuration_14_networking_support, %linux_configuration_14_networking_support,
%linux_configuration_15_device_drivers, %linux_configuration_15_device_drivers,

View File

@@ -1092,13 +1092,15 @@ If unsure, say Y.}
\note{Für normale Systeme Y für Ja. Nur bei einem \glqq headless server\grqq{} ein N.} \note{Für normale Systeme Y für Ja. Nur bei einem \glqq headless server\grqq{} ein N.}
\paragraph{MTRR cleanup enable value (0-1)}$~$\\ \paragraph{MTRR cleanup enable value (0-1)}$~$\\
CONFIG\_MTRR\_SANITIZER [=1] \textbf{[1]}\\ CONFIG\_MTRR\_SANITIZER\_ENABLE\_DEFAULT [=1] \textbf{[1]}\\
Aktivieren Sie den \glqq mtrr cleanup\grqq{}-Standardwert Aktivieren Sie den \glqq mtrr cleanup\grqq{}-Standardwert
\english{Enable mtrr cleanup default value}
\paragraph{MTRR cleanup spare reg num (0-7)}$~$\\ \paragraph{MTRR cleanup spare reg num (0-7)}$~$\\
CONFIG\_MTRR\_SANITIZER\_SPARE\_REG\_NR\_DEFAULT [=0] \textbf{[0]}\\ CONFIG\_MTRR\_SANITIZER\_SPARE\_REG\_NR\_DEFAULT [=0] \textbf{[0]}\\
MTRR cleanup spare entries Defaulteintrag, dies kann über MTRR cleanup spare entries Defaulteintrag, dies kann über
\texttt{mtrr\_spare\_reg\_nr=N} auf der Kernel-Be\-fehls\-zei\-le geändert werden. \texttt{mtrr\_spare\_reg\_nr=N} auf der Kernel-Be\-fehls\-zei\-le geändert werden.
\english{mtrr cleanup spare entries default, it can be changed via mtrr\_spare\_reg\_nr=N on the kernel command line.}
%3.37.4 %3.37.4
\subsubsection{x86 PAT support} \subsubsection{x86 PAT support}
@@ -1196,16 +1198,19 @@ TSX is in use and the security aspect of tsx is not relevant.}
\subsubsection{off} \subsubsection{off}
CONFIG\_X86\_INTEL\_TSX\_MODE\_OFF [=n] \textbf{[N]}\\ CONFIG\_X86\_INTEL\_TSX\_MODE\_OFF [=n] \textbf{[N]}\\
TSX ist, wenn möglich, deaktiviert -- entspricht dem Befehlszeilenparameter \texttt{tsx=off}. TSX ist, wenn möglich, deaktiviert -- entspricht dem Befehlszeilenparameter \texttt{tsx=off}.
\english{TSX is disabled if possible -- equals to tsx=off command line parameter.}
\subsubsection{on} \subsubsection{on}
CONFIG\_X86\_INTEL\_TSX\_MODE\_ON [=n] \textbf{[N]}\\ CONFIG\_X86\_INTEL\_TSX\_MODE\_ON [=n] \textbf{[N]}\\
TSX ist auf TSX-fähiger Hardware immer aktiviert -- gleichbedeutend TSX ist auf TSX-fähiger Hardware immer aktiviert -- gleichbedeutend
mit dem Befehlszeilenparameter \texttt{tsx=on} mit dem Befehlszeilenparameter \texttt{tsx=on}
\english{TSX is always enabled on TSX capable HW - equals the tsx=on command line parameter.}
\subsubsection{auto} \subsubsection{auto}
CONFIG\_X86\_INTEL\_TSX\_MODE\_AUTO [=y] \textbf{[Y]}\\ CONFIG\_X86\_INTEL\_TSX\_MODE\_AUTO [=y] \textbf{[Y]}\\
TSX wird auf TSX-fähiger Hardware aktiviert, die als sicher gegen Seitenkanalangriffe gilt -- gleichbedeutend TSX wird auf TSX-fähiger Hardware aktiviert, die als sicher gegen Seitenkanalangriffe gilt -- gleichbedeutend
mit dem Befehlszeilenparameter \texttt{tsx=auto}. mit dem Befehlszeilenparameter \texttt{tsx=auto}.
\english{TSX is enabled on TSX capable HW that is believed to be safe against side channel attacks- equals the tsx=auto command line parameter.}
%3.42 %3.42
\subsection{Software Guard eXtensions (SGX)} \subsection{Software Guard eXtensions (SGX)}
@@ -1230,6 +1235,12 @@ erkennt. Dies hilft, ROP-Angriffe abzuschwächen. Anwendungen müssen aktiviert
alte Userspace erhält den Schutz nicht \glqq umsonst\grqq{}. CPUs, die Shadow Stacks unterstützen, wurden erstmals im alte Userspace erhält den Schutz nicht \glqq umsonst\grqq{}. CPUs, die Shadow Stacks unterstützen, wurden erstmals im
Jahr~2020 vorgestellt. Weitere Informationen finden Sie unter Documentation/arch/x86/shstk.rst.\\ Jahr~2020 vorgestellt. Weitere Informationen finden Sie unter Documentation/arch/x86/shstk.rst.\\
Wenn Sie unsicher sind, sagen Sie N. Wenn Sie unsicher sind, sagen Sie N.
\english{Shadow stack protection is a hardware feature that detects function return address corruption.
This helps mitigate ROP attacks.
Applications must be enabled to use it, and old userspace does not get protection ``for free''.\\
CPUs supporting shadow stacks were first released in 2020.\\
See Documentation/arch/x86/shstk.rst for more information.\\
If unsure, say N.}
\note{Y, ein Ja aus Sicherheitsgründen} \note{Y, ein Ja aus Sicherheitsgründen}
\subsection{EFI runtime service support} \subsection{EFI runtime service support}
@@ -1300,8 +1311,7 @@ indem Sie die ursprüngliche (von der Firmware bereitgestellte) EFI-Memmap aktua
Dies ist nützlich für das Debugging von EFI-Memmap-bezogenen Funktionen, z.\,B. Address Range Mirroring. Dies ist nützlich für das Debugging von EFI-Memmap-bezogenen Funktionen, z.\,B. Address Range Mirroring.
\english{Saying Y here will enable ``efi\_fake\_mem'' boot option. By specifying this parameter, \english{Saying Y here will enable ``efi\_fake\_mem'' boot option. By specifying this parameter,
you can add arbitrary attribute to specific memory range by updating original (firmware provided) EFI memmap. you can add arbitrary attribute to specific memory range by updating original (firmware provided) EFI memmap.
This is useful for debugging of EFI memmap related feature, e.g. Address Range Mirroring feature.} This is useful for debugging of EFI memmap related feature, e.g. Address Range Mirroring feature.}}
}
\subsubsection{Export EFI runtime maps to sysfs {\tiny seit 6.2}} \subsubsection{Export EFI runtime maps to sysfs {\tiny seit 6.2}}
CONFIG\_EFI\_RUNTIME\_MAP [=y] \textbf{[Y]}\\ CONFIG\_EFI\_RUNTIME\_MAP [=y] \textbf{[Y]}\\
@@ -1321,6 +1331,12 @@ zu lassen, aber 100 Hz kann für Server und NUMA-Systeme vorteilhafter sein, die
für die Benutzerinteraktion benötigen und bei denen es zu Buskonflikten und Cacheline-Bounches als Folge für die Benutzerinteraktion benötigen und bei denen es zu Buskonflikten und Cacheline-Bounches als Folge
von Timer-Interrupts kommen kann. Beachten Sie, dass der Timer-Interrupt in einer SMP-Umgebung auf jedem von Timer-Interrupts kommen kann. Beachten Sie, dass der Timer-Interrupt in einer SMP-Umgebung auf jedem
Prozessor auftritt, was zu NR\_CPUS * HZ Anzahl der Timer-Interrupts pro Sekunde führt. Prozessor auftritt, was zu NR\_CPUS * HZ Anzahl der Timer-Interrupts pro Sekunde führt.
\english{Allows the configuration of the timer frequency.
It is customary to have the timer interrupt run at 1000 Hz but 100 Hz may be more beneficial for servers
and NUMA systems that do not need to have a fast response for user interaction and that may experience bus
contention and cacheline bounces as a result of timer interrupts.\\
Note that the timer interrupt occurs on each processor in an SMP environment leading to NR\_CPUS * HZ number
of timer interrupts per second.}
\note{\qty{100}{\hertz} für Server, \qty{300}{\hertz} für Desktops, \note{\qty{100}{\hertz} für Server, \qty{300}{\hertz} für Desktops,
\qty{1000}{\hertz} für Anforderungen mit niedrigen Latenzzeiten} \qty{1000}{\hertz} für Anforderungen mit niedrigen Latenzzeiten}

View File

@@ -1,4 +1,5 @@
%6.13 % linux_configuration_04_mitigations_for_speculative_execution_vulnerablities
%6.14
\section{Mitigations for speculative execution vulnerabilities \texorpdfstring{$\rightarrow$}{->}} \section{Mitigations for speculative execution vulnerabilities \texorpdfstring{$\rightarrow$}{->}}
CONFIG\_SPECULATION\_MITIGATIONS [=y] \textbf{[Y]}\\ CONFIG\_SPECULATION\_MITIGATIONS [=y] \textbf{[Y]}\\
Sagen Sie hier Y, um Optionen zu aktivieren, die Abhilfemaßnahmen für Hardware-Schwachstellen durch spekulative Sagen Sie hier Y, um Optionen zu aktivieren, die Abhilfemaßnahmen für Hardware-Schwachstellen durch spekulative
@@ -48,6 +49,7 @@ Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=unret}-Abschw
\english{Compile the kernel with support for the retbleed=unret mitigation.} \english{Compile the kernel with support for the retbleed=unret mitigation.}
\note{Wird nur bei AMD-Prozessoren angezeigt.} \note{Wird nur bei AMD-Prozessoren angezeigt.}
%4.3
\subsection{Mitigate RSB underflow with call depth tracking} \subsection{Mitigate RSB underflow with call depth tracking}
CONFIG\_CALL\_DEPTH\_TRACKING [=y] \textbf{[Y]}\\ CONFIG\_CALL\_DEPTH\_TRACKING [=y] \textbf{[Y]}\\
Kompiliere den Kernel mit Call-Depth-Tracking, um das Intel SKL Return-Speculation-Buffer (RSB) Underflow-Problem Kompiliere den Kernel mit Call-Depth-Tracking, um das Intel SKL Return-Speculation-Buffer (RSB) Underflow-Problem
@@ -78,10 +80,13 @@ The debug prints need to be enabled on the kernel command line with 'debug-callt
Only enable this when you are debugging call thunks as this creates a noticeable runtime overhead. Only enable this when you are debugging call thunks as this creates a noticeable runtime overhead.
If unsure say N.} If unsure say N.}
%4.4
\subsection{Enable IBPB on kernel entry} \subsection{Enable IBPB on kernel entry}
CONFIG\_CPU\_IBPB\_ENTRY [=y] \textbf{[Y]}\\ CONFIG\_CPU\_IBPB\_ENTRY [=y] \textbf{[Y]}\\
Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=ibpb}-Abschwächung. Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=ibpb}-Abschwächung.
\english{Compile the kernel with support for the retbleed=ibpb and spec\_rstack\_overflow={ibpb,ibpb-vmexit} mitigations.}
%4.5
\subsection{Enable IBRS on kernel entry} \subsection{Enable IBRS on kernel entry}
CONFIG\_CPU\_IBRS\_ENTRY [=y] \textbf{[Y]}\\ CONFIG\_CPU\_IBRS\_ENTRY [=y] \textbf{[Y]}\\
Kompiliere den Kernel mit Unterstützung für die \texttt{spectre\_v2=ibrs}-Abschwächung. Kompiliere den Kernel mit Unterstützung für die \texttt{spectre\_v2=ibrs}-Abschwächung.
@@ -89,16 +94,23 @@ Dadurch werden sowohl spectre\_v2 als auch retbleed auf Kosten der Leistung abge
\english{Compile the kernel with support for the spectre\_v2=ibrs mitigation. \english{Compile the kernel with support for the spectre\_v2=ibrs mitigation.
This mitigates both spectre\_v2 and retbleed at great cost to performance.} This mitigates both spectre\_v2 and retbleed at great cost to performance.}
%4.6
\subsection{Mitigate speculative RAS overflow on AMD} \subsection{Mitigate speculative RAS overflow on AMD}
CONFIG\_CPU\_SRSO [=y] \textbf{[N]}\\ CONFIG\_MITIGATION\_SRSO [=y] \textbf{[N]}\\
Aktiviert die SRSO-Abschwächung, die auf AMD Zen1-4-Maschinen benötigt wird. Aktiviert die SRSO-Abschwächung, die auf AMD Zen1-4-Maschinen benötigt wird.
\english{Enable the SRSO mitigation needed on AMD Zen1-4 machines.}
%4.7
\subsection{Mitigate Straight-Line-Speculation} \subsection{Mitigate Straight-Line-Speculation}
CONFIG\_SLS [=y] \textbf{[Y]}\\ CONFIG\_MITIGATION\_SLS [=y] \textbf{[Y]}\\
Kompiliere den Kernel mit Straight-Line-Speculation-Optionen, um ihn vor Straight-Line-Speculation zu Kompiliere den Kernel mit Straight-Line-Speculation-Optionen, um ihn vor Straight-Line-Speculation zu
schützen. Das Kernel-Image könnte etwas größer sein. schützen. Das Kernel-Image könnte etwas größer sein.
\english{Compile the kernel with straight-line-speculation options to guard against straight line speculation.
The kernel image might be slightly larger.}
\subsection{Force GDS Mitigation}
{\color{gray}{
\subsection*{Force GDS Mitigation}
CONFIG\_GDS\_FORCE\_MITIGATION [=n] \textbf{[N]}\\ CONFIG\_GDS\_FORCE\_MITIGATION [=n] \textbf{[N]}\\
Gather Data Sampling (GDS) ist eine Hardware-Schwachstelle, die unberechtigten spekulativen Zugriff auf Gather Data Sampling (GDS) ist eine Hardware-Schwachstelle, die unberechtigten spekulativen Zugriff auf
Daten ermöglicht, die zuvor in Vektorregistern gespeichert wurden. Diese Option ist gleichbedeutend mit Daten ermöglicht, die zuvor in Vektorregistern gespeichert wurden. Diese Option ist gleichbedeutend mit
@@ -107,4 +119,147 @@ wird verwendet, falls vorhanden, andernfalls wird AVX als Abschwächung deaktivi
Systemen, denen der Microcode fehlt, wird jeder Userspace-Code, der AVX bedingungslos verwendet, bei Systemen, denen der Microcode fehlt, wird jeder Userspace-Code, der AVX bedingungslos verwendet, bei
gesetzter Option abbrechen. Das Setzen dieser Option auf Systemen, die nicht für GDS anfällig sind, hat gesetzter Option abbrechen. Das Setzen dieser Option auf Systemen, die nicht für GDS anfällig sind, hat
keine Auswirkungen.\\ keine Auswirkungen.\\
Im Zweifelsfall sagen Sie N. Im Zweifelsfall sagen Sie N.}}
%4.8
\subsection{Mitigate Gather Data Sampling}
CONFIG\_MITIGATION\_GDS [=y] \textbf{[Y]}\\
Entschärfung für Gather Data Sampling (GDS) aktivieren.
GDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf Daten
ermöglicht, die zuvor in Vektorregistern gespeichert wurden.
Der Angreifer verwendet Gather-Anweisungen, um die veralteten Vektorregisterdaten zu ermitteln.
\english{Enable mitigation for Gather Data Sampling (GDS).
GDS is a hardware vulnerability which allows unprivileged speculative access to data
which was previously stored in vector registers.
The attacker uses gather instructions to infer the stale vector register data.}
%4.9
\subsection{RFDS Mitigation}
CONFIG\_MITIGATION\_RFDS [=y] \textbf{[Y]}\\
Aktivieren Sie standardmäßig die Schadensbegrenzung für Register File Data Sampling (RFDS).
RFDS ist eine Hardware-Schwachstelle, die Intel Atom CPUs betrifft.
Sie ermöglicht unprivilegierten spekulativen Zugriff auf veraltete Daten, die zuvor in Gleitkomma-, Vektor- und Integer-Registern gespeichert wurden.
Siehe auch $<$file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst$>$
\english{Enable mitigation for Register File Data Sampling (RFDS) by default.
RFDS is a hardware vulnerability which affects Intel Atom CPUs.
It allows unprivileged speculative access to stale data previously stored in floating point,
vector and integer registers.
See also $<$file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst$>$}
%4.10
\subsection{Mitigate Spectre-BHB (Branch History Injection)}
CONFIG\_MITIGATION\_SPECTRE\_BHI [=y] \textbf{[Y]}\\
Aktivieren Sie BHI-Abschwächungen.
BHI-Angriffe sind eine Form von Spectre-V2-Angriffen, bei denen der Branch-History-Puffer
vergiftet wird, um indirekte Verzweigungen spekulativ zu steuern.
Siehe $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$
\english{Enable BHI mitigations. BHI attacks are a form of Spectre V2 attacks
where the branch history buffer is poisoned to speculatively steer indirect branches.
See $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$}
%4.11
\subsection{Mitigate Microarchitectural Data Sampling (MDS) hardware bug}
CONFIG\_MITIGATION\_MDS [=y] \textbf{[Y]}\\*
Aktiviert die Abschwächung für Microarchitectural Data Sampling (MDS).
MDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff
auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind.\\
Siehe auch $<$file:Documentation/admin-guide/hw-vuln/mds.rst$>$
\english{Enable mitigation for Microarchitectural Data Sampling (MDS).
MDS is a hardware vulnerability which allows unprivileged speculative access
to data which is available in various CPU internal buffers.\\
See also $<$file:Documentation/admin-guide/hw-vuln/mds.rst$>$}
%4.12
\subsection{Mitigate TSX Asynchronous Abort (TAA) hardware bug}
CONFIG\_MITIGATION\_TAA [=y] \textbf{[Y]}\\*
Aktivieren Sie die Schadensbegrenzung für TSX Asynchronous Abort (TAA).
TAA ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff
auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind,
indem asynchrone Abbrüche innerhalb einer Intel TSX-Transaktionsregion verwendet werden.
Siehe auch $<$file:Documentation/admin-guide/hw-vuln/tsx\_async\_abort.rst$>$
\english{Enable mitigation for TSX Asynchronous Abort (TAA).
TAA is a hardware vulnerability that allows unprivileged speculative access to data which is available in various
CPU internal buffers by using asynchronous aborts within an Intel TSX transactional region.
See also $<$file:Documentation/admin-guide/hw-vuln/tsx\_async\_abort.rst$>$}
%4.13
\subsection{Mitigate MMIO Stale Data hardware bug}
CONFIG\_MITIGATION\_MMIO\_STALE\_DATA [=y] \textbf{[Y]}\\*
Entschärfung von MMIO Stale Data-Hardwarefehlern aktivieren.
MMIO Stale Data-Schwachstellen in Prozessoren sind eine Klasse von Memory-Mapped I/O (MMIO)-Schwachstellen, die Daten preisgeben können.
Die Schwachstellen erfordern, dass der Angreifer Zugriff auf MMIO.\\
Siehe auch \texttt{file:Documentation/admin-guide/hw-vuln/processor\_mmio\_stale\_data.rst}
\english{Enable mitigation for MMIO Stale Data hardware bugs.
Processor MMIO Stale Data Vulnerabilities are a class of memory-mapped I/O (MMIO) vulnerabilities that can expose data.
The vulnerabilities require the attacker to have access to MMIO.\\
See also $<$file:Documentation/admin-guide/hw-vuln/processor\_mmio\_stale\_data.rst$>$}
%4.14
\subsection{Mitigate L1 Terminal Fault (L1TF) hardware bug}
CONFIG\_MITIGATION\_L1TF [=y] \textbf{[Y]}\\*
Entschärfung des L1 Terminal Fault (L1TF) Hardware-Fehlers.
L1 Terminal Fault ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf die im Level 1 Data Cache verfügbaren Daten ermöglicht.\\
Siehe \texttt{file:Documentation/admin-guide/hw-vuln/l1tf.rst}
\english{Mitigate L1 Terminal Fault (L1TF) hardware bug.
L1 Terminal Fault is a hardware vulnerability which allows unprivileged speculative access to data available in the Level 1 Data Cache.\\
See $<$file:Documentation/admin-guide/hw-vuln/l1tf.rst}
%4.15
\subsection{Mitigate RETBleed hardware bug}
CONFIG\_MITIGATION\_RETBLEED [=y] \textbf{[Y]}\\*
Aktivieren Sie Entschärfung für die RETBleed-Schwachstelle (Arbitrary Speculative Code Execution with Return Instructions).
RETBleed ist ein spekulativer Ausführungsangriff, der das mikroarchitektonische Verhalten in vielen modernen Mikroprozessoren ausnutzt, ähnlich wie bei Spectre v2.
Ein unprivilegierter Angreifer kann diese Schwachstellen nutzen, um herkömmliche Speichersicherheitsbeschränkungen zu umgehen und Lesezugriff auf
privilegierten Speicher zu erlangen, der ansonsten unzugänglich wäre.
\english{Enable mitigation for RETBleed (Arbitrary Speculative Code Execution with Return Instructions) vulnerability.
RETBleed is a speculative execution attack which takes advantage of microarchitectural behavior in many modern microprocessors, similar to Spectre v2.
An unprivileged attacker can use these flaws to bypass conventional memory security restrictions to gain read access to privileged memory
that would otherwise be inaccessible.}
%4.16
\subsection{Mitigate SPECTRE V1 hardware bug}
CONFIG\_MITIGATION\_SPECTRE\_V1 [=y] \textbf{[Y]}\\*
Aktiviert die Schadensbegrenzung für Spectre V1 (Bounds Check Bypass).
Spectre V1 ist eine Klasse von Seitenkanalangriffen, die sich die spekulative Ausführung zunutze macht, indem sie bedingte Verzweigungsanweisungen umgeht, die für die Überprüfung der Speicherzugriffsgrenzen verwendet werden.
Siehe auch \texttt{file:Documentation/admin-guide/hw-vuln/spectre.rst}
\english{Enable mitigation for Spectre V1 (Bounds Check Bypass).
Spectre V1 is a class of side channel attacks that takes advantage of speculative execution that bypasses conditional
branch instructions used for memory access bounds check.\\
See also $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$}
%4.17
\subsection{Mitigate SPECTRE V2 hardware bug}
CONFIG\_MITIGATION\_SPECTRE\_V2 [=y] \textbf{[Y]}\\*
Aktivierung der Schadensbegrenzung für Spectre V2 (Branch Target Injection).
Spectre V2 ist eine Klasse von Seitenkanalangriffen, die indirekte Verzweigungsvorhersagen innerhalb des Prozessors ausnutzen.
Bei Angriffen der Spectre-Variante 2 kann der Angreifer spekulative indirekte Verzweigungen im Opfer zu Gadget-Code lenken, indem er
den Verzweigungszielpuffer einer CPU vergiftet, der für die Vorhersage indirekter Verzweigungsadressen verwendet wird.\\
Siehe auch $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$
\english{Enable mitigation for Spectre V2 (Branch Target Injection).
Spectre V2 is a class of side channel attacks that takes advantage of indirect branch predictors inside the processor.
In Spectre variant 2 attacks, the attacker can steer speculative indirect branches in the victim to gadget code by poisoning
the branch target buffer of a CPU used for predicting indirect branch addresses.\\
See also $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$}
%4.18
\subsection{Mitigate Special Register Buffer Data Sampling (SRBDS) hardware bug}
CONFIG\_MITIGATION\_SRBDS [=y] \textbf{[Y]}\\*
Aktivierung der Schadensbegrenzung für Special Register Buffer Data Sampling (SRBDS).
SRBDS ist eine Hardware-Schwachstelle, die es MDS-Techniken (Microarchitectural Data Sampling) ermöglicht,
von Spezialregisterzugriffen zurückgegebene Werte abzuleiten.
Ein nicht privilegierter Benutzer kann mithilfe von MDS-Techniken Werte extrahieren, die von RDRAND und RDSEED zurückgegeben werden,
die auf einem anderen Kern oder Geschwister-Thread ausgeführt werden.\\
Siehe \texttt{file:Documentation/admin-guide/hw-vuln/special-register-buffer-data-sampling.rst}
\english{Enable mitigation for Special Register Buffer Data Sampling (SRBDS).
SRBDS is a hardware vulnerability that allows Microarchitectural Data Sampling (MDS) techniques to infer values returned from special register accesses.
An unprivileged user can extract values returned from RDRAND and RDSEED executed on another core or sibling thread using MDS techniques.\\
See also $<$file:Documentation/admin-guide/hw-vuln/special-register-buffer-data-sampling.rst$>$}
%4.19
\subsection{Mitigate Speculative Store Bypass (SSB) hardware bug}
CONFIG\_MITITGATION\_SSB [=y] \textbf{[Y]}\\*
Aktivierung der Schadensbegrenzung für Speculative Store Bypass (SSB).
SSB ist eine Hardware-Sicherheitslücke, deren Ausnutzung die spekulative Ausführung ähnlich wie bei den Sicherheitslücken Meltdown und Spectre ausnutzt.
\english{Enable mitigation for Speculative Store Bypass (SSB).
SSB is a hardware security vulnerability and its exploitation takes advantage
of speculative execution in a similar way to the Meltdown and Spectre security vulnerabilities.}

View File

@@ -1,4 +1,7 @@
% linux_configuration_05_power_management_and_acpi_options.tex
% Linux 6.14
%5.1
\section{Power management and ACPI options \texorpdfstring{$\rightarrow$}{->}} \section{Power management and ACPI options \texorpdfstring{$\rightarrow$}{->}}
Energieverwaltung und ACPI-Optionen Energieverwaltung und ACPI-Optionen
@@ -6,7 +9,23 @@ Energieverwaltung und ACPI-Optionen
CONFIG\_SUSPEND [=y] \textbf{[Y]}\\ CONFIG\_SUSPEND [=y] \textbf{[Y]}\\
Ermöglicht dem System, in Ruhezustände einzutreten, in denen der Hauptspeicher mit Strom versorgt wird und Ermöglicht dem System, in Ruhezustände einzutreten, in denen der Hauptspeicher mit Strom versorgt wird und
somit sein Inhalt erhalten bleibt, wie z.\,B. der Suspend-to-RAM-Zustand (z.\,B. der ACPI S3-Zustand). somit sein Inhalt erhalten bleibt, wie z.\,B. der Suspend-to-RAM-Zustand (z.\,B. der ACPI S3-Zustand).
\english{Allow the system to enter sleep states in which main memory is powered and thus its contents are preserved, such as the
suspend-to-RAM state (e.g. the ACPI S3 state).}
\subsubsection{Skip kernel's sys\_sync() on suspend to RAM/standby}
CONFIG\_SUSPEND\_SKIP\_SYNC [=n] \textbf{[N]}\\
Überspringen Sie das Kernel sys\_sync(), bevor Sie Benutzerprozesse einfrieren. Einige Systeme ziehen es vor,
diese Kosten nicht bei jedem Aufruf von suspend zu zahlen, oder sie begnügen sich mit dem Aufruf von sync() aus dem User-Space vor dem Aufruf von suspend.
Es gibt einen Laufzeitschalter unter \texttt{/sys/power/sync\_on\_suspend}, um dieses Verhalten zu konfigurieren.
Diese Einstellung ändert die Voreinstellung für den Laufzeitschalter.
Sagen Sie Y, um die Voreinstellung zu ändern und den Kernel \texttt{sys\_sync()} zu deaktivieren.
\english{Skip the kernel sys\_sync() before freezing user processes.
Some systems prefer not to pay this cost on every invocation of suspend, or they are content with invoking sync() from user-space before invoking suspend.
There's a run-time switch at `/sys/power/sync\_on\_suspend' to configure this behaviour.
This setting changes the default for the run-tim switch.
Say Y to change the default to disable the kernel sys\_sync().}
%5.2
\subsection{Hibernation (aka `suspend to disk')} \subsection{Hibernation (aka `suspend to disk')}
CONFIG\_HIBERNATION [=y] \textbf{[Y]}\\ CONFIG\_HIBERNATION [=y] \textbf{[Y]}\\
Aktiviert die Funktion \glqq Suspend to Disk\grqq{} (STD), Aktiviert die Funktion \glqq Suspend to Disk\grqq{} (STD),
@@ -29,12 +48,44 @@ Sie können jetzt booten, ohne den Vorgang fortzusetzen, und ihn später fortset
die Swap-Partition(en)/Datei(en), die am Suspendieren beteiligt waren, nicht verwenden. In diesem Fall dürfen Sie auch die Swap-Partition(en)/Datei(en), die am Suspendieren beteiligt waren, nicht verwenden. In diesem Fall dürfen Sie auch
nicht die Dateisysteme verwenden, die vor dem Suspendieren gemountet waren. Insbesondere dürfen Sie keine nicht die Dateisysteme verwenden, die vor dem Suspendieren gemountet waren. Insbesondere dürfen Sie keine
journalisierten Dateisysteme mounten, die vor dem Suspending gemountet wurden, da diese sonst auf unschöne Weise journalisierten Dateisysteme mounten, die vor dem Suspending gemountet wurden, da diese sonst auf unschöne Weise
beschädigt werden. Weitere Informationen finden Sie in $<$file:Documentation/power/swsusp.rst$>$. beschädigt werden. Weitere Informationen finden Sie in \texttt{file:Documentation/power/swsusp.rst}.
\english{Enable the suspend to disk (STD) functionality, which is usually called ``hibernation'' in user interfaces.
STD checkpoints the system and powers it off; and restores that checkpoint on reboot.\\
You can suspend your machine with `echo disk $>$ /sys/power/state' after placing resume=/dev/swappartition on the kernel command line in your bootloader's configuration file.\\
Alternatively, you can use the additional userland tools available from \url{http://suspend.sf.net}.\\
In principle it does not require ACPI or APM, although for example ACPI will be used for the final steps when it is available.
One of the reasons to use software suspend is that the firmware hooks for suspend states like suspend-to-RAM (STR) often don't work very well with Linux.\\
It creates an image which is saved in your active swap.
Upon the next boot, pass the `resume=/dev/swappartition' argument to the kernel to have it detect the saved image, restore memory state from it, and continue to run as before.
If you do not want the previous state to be reloaded, then use the `noresume' kernel command line argument.
Note, however, that fsck will be run on your filesystems and you will need to run mkswap against the swap partition used for the suspend.\\
It also works with swap files to a limited extent (for details see $<$file:Documentation/power/swsusp-and-swap-files.rst$>$).\\
Right now you may boot without resuming and resume later but in the meantime you cannot use the swap partition(s)/file(s) involved in suspending.
Also in this case you must not use the filesystems that were mounted before the suspend.
In particular, you MUST NOT MOUNT any journaled filesystems mounted before the suspend or they will get corrupted in a nasty way.\\
For more information take a look at $<$file:Documentation/power/swsusp.rst$>$}
\subsubsection{Userspace snapshot device} \subsubsection{Userspace snapshot device}
CONFIG\_HIBERNATION\_SNAPSHOT\_DEV [=y] \textbf{[Y]}\\ CONFIG\_HIBERNATION\_SNAPSHOT\_DEV [=y] \textbf{[Y]}\\
Gerät, das von den uswsusp-Werkzeugen verwendet wird. Sagen Sie N, wenn kein Snapshotting aus dem Userspace benötigt Gerät, das von den uswsusp-Werkzeugen verwendet wird. Sagen Sie N, wenn kein Snapshotting aus dem Userspace benötigt
wird, dies reduziert auch die Angriffsfläche des Kernels. Im Zweifelsfall sagen Sie Y. wird, dies reduziert auch die Angriffsfläche des Kernels. Im Zweifelsfall sagen Sie Y.
\english{Device used by the uswsusp tools.\\
Say N if no snapshotting from userspace is needed, this also reduces the attack surface of the kernel.\\
If in doubt, say Y.}
\subsubsection{Default compressor () \texorpdfstring{$\rightarrow$}{->}}
\textit{Standard-Kompressor}
\paragraph{lzo} \mbox{}\\
CONFIG\_HIBERNATION\_COMP\_LZO [=y] \textbf{[Y]}\\*
Für diese Option gibt es keine Hilfe.
\english{There is no help available for this option.}
\paragraph{lz4} \mbox{}\\
CONFIG\_HIBERNATION\_COMP\_LZ4 [=n] \textbf{[N]}\\*
Für diese Option gibt es keine Hilfe.
\english{There is no help available for this option.}
\subsubsection{Default resume partition} \subsubsection{Default resume partition}
CONFIG\_PM\_STD\_PARTITION [=] \textbf{[~]}\\ CONFIG\_PM\_STD\_PARTITION [=] \textbf{[~]}\\
@@ -46,6 +97,14 @@ Partition kann durch die Angabe von:\\
überschrieben werden, wodurch die Partition für die Wiederaufnahme auf das angegebene Gerät gesetzt wird. überschrieben werden, wodurch die Partition für die Wiederaufnahme auf das angegebene Gerät gesetzt wird.
Beachten Sie, dass es derzeit keine Möglichkeit gibt, das Gerät anzugeben, auf dem das suspendierte Image Beachten Sie, dass es derzeit keine Möglichkeit gibt, das Gerät anzugeben, auf dem das suspendierte Image
gespeichert werden soll. Es wird einfach das erste verfügbare Swap-Gerät ausgewählt. gespeichert werden soll. Es wird einfach das erste verfügbare Swap-Gerät ausgewählt.
\english{The default resume partition is the partition that the suspend-to-disk implementation will look for a suspended disk image.\\
The partition specified here will be different for almost every user.
It should be a valid swap partition (at least for now) that is turned on before suspending.\\
The partition specified can be overridden by specifying:\\
resume=/dev/$<$other device$>$\\
which will set the resume partition to the device specified.\\
Note there is currently not a way to specify which device to save the suspended image to.
It will simply pick the first available swap device.}
\subsection{Opportunistic sleep} \subsection{Opportunistic sleep}
CONFIG\_PM\_AUTOSLEEP [=n] \textbf{[N]}\\ CONFIG\_PM\_AUTOSLEEP [=n] \textbf{[N]}\\