Попробуйте сказать, в чём роль машинной команды endbr64. 😀
Часто встречается в современных бинарниках. Скажем, в известном Си-шном примере "Hello World" эта инструкция выполняется 681 раз. Я даже могу показать вам её определение из документации, если это поможет.
Часто встречается в современных бинарниках. Скажем, в известном Си-шном примере "Hello World" эта инструкция выполняется 681 раз. Я даже могу показать вам её определение из документации, если это поможет.
IF EndbranchEnabled(CPL) & EFER.LMA = 1 & CS.L = 1
IF CPL = 3
THEN
IA32_U_CET.TRACKER = IDLE
IA32_U_CET.SUPPRESS = 0
ELSE
IA32_S_CET.TRACKER = IDLE
IA32_S_CET.SUPPRESS = 0
FI
FI;

no subject
Date: 2024-12-20 06:07 (UTC)no subject
Date: 2024-12-20 06:20 (UTC)https://www.intel.com/content/www/us/en/developer/articles/technical/technical-look-control-flow-enforcement-technology.html
no subject
Date: 2024-12-20 06:51 (UTC)no subject
Date: 2024-12-20 07:31 (UTC)no subject
Date: 2024-12-20 08:28 (UTC)no subject
Date: 2024-12-20 09:42 (UTC)amd64 маки, как мне кажется, довольно старые, чтобы поддерживать CET. На обычных лаптопах CET появился в 2020 (Tiger Lake), на серверах в 2023 (Sapphire Rapids). Apple начали переезжать на aarch64 как раз в 2020.
Про FreeBSD прямо удивительно.
no subject
Date: 2024-12-20 09:57 (UTC)Наличие инструкции по идее определяется дефолтными установками компилятора: включен флаг -fcf-protection или не включен. На Линуксе включен, выходит.
no subject
Date: 2024-12-20 16:08 (UTC)Хм
Date: 2024-12-20 18:05 (UTC)https://drive.google.com/file/d/1grEsrFztb9jcwqyEUh7BaTv9e9_Tvi4W/view?usp=sharing
no subject
Date: 2024-12-20 19:31 (UTC)Хм
Date: 2024-12-20 19:38 (UTC)Re: Хм
Date: 2024-12-20 20:20 (UTC)Re: Хм
Date: 2024-12-20 20:56 (UTC)no subject
Date: 2024-12-20 20:59 (UTC)no subject
Date: 2024-12-21 19:17 (UTC)