De volta ao Linux 6.6, o suporte ao Shadow Stack foi finalmente fundido como parte da Tecnologia de Aplicação de Fluxo de Controle (CET) da Intel. Esse esforço de anos permite uma melhor defesa contra ataques de ROP para as novas gerações de processadores Intel. Para Linux 6.10, o suporte ao Shadow Stack está sendo estendido para x32.
O ITB x32 ainda existe, embora não seja totalmente comum. Como um lembrete, este Linux ABI está por aí fornecendo os benefícios do x86_64 enquanto ainda depende de ponteiros de 32 bits. É uma vantagem em relação ao x86 de 32 bits em poder utilizar o conjunto de registros maior do x86_64, melhorias de ponto flutuante e muito mais, mas ainda contando com ponteiros de 32 bits e limitando a 4 GB de memória por processo.
Linux habilita suporte a Shadow Stack para x32
O x32 ABI soava muito bem há uma década, mas hoje em dia é raro ouvir muito em torno do x32 na natureza e a maioria dos usuários está contente com x86_64. Houve até chamadas ocasionais se o x32 deveria ser preterido. De qualquer forma, para alguma surpresa, agora estamos vendo o suporte ao Shadow Stack para x32.
Enfileirado agora no TIP.git através da ramificação “x86/shstk” está adicionando suporte de pilha de sombra para x32. Isso foi testado com sucesso no x32 usando um sistema Intel Tiger Lake pelo engenheiro da Intel H.J. Lu. Agora que ele está em uma ramificação TIP, ele provavelmente será submetido para o ciclo do kernel Linux 6.10 neste verão. De qualquer forma, é um pouco surpreendente ver a Intel fazendo melhorias para o suporte ao Linux x32 em 2024.