x86/Kärnändringar för Linux 6.1 har slagits samman och rubriceras genom att se till att en INT3-instruktion infogas efter varje ovillkorligt Retpoline-hopp (JMP) för Retpolines-hanteringen på både Intel-och AMD-processorer.

Intel-ingenjör Peter Zijlstra skrev ändringen för att säkerställa en INT3 efter att en indirekt JMP inträffat. Detta beteende rekommenderas av både Intel och AMD. Denna Retpoline-ändring kommer efter att reduceringen av x86 Straight Line Speculation innebar att man lade till en INT3 efter att funktionen returnerade och indirekta grenar.

INT3 x86-instruktionen designades ursprungligen för att användas av debuggers för att ställa in en mjukvarubrytpunkt/anropa debug-undantagshanteraren. Men att använda INT3 i världen av spekulativa avrättningssårbarheter har också visat sig användbart som en del av begränsningarna som en spekulationsfälla för att undvika spekulativ avrättning efter den punkten.

Denna Linux 6.1-ändring är i grunden en skydd mot att byggas mot äldre kompilatorer som saknar x86-hanteringen Straight Line Speculation eller där SLS inte är aktiverat. Så för de flesta användare som kör en förnuftig distribution/leverantörskärna byggd med en modern kompilator och SLS aktiverad, kommer du inte att se någon skillnad med Linux 6.1.

Mer information via x86/core pull request som redan har slagits samman för mainline Linux 6.1.

Categories: IT Info