Código HTML do Conteúdo
Post: Novo método de utensílios de flipswitch supera as defesas do kernel Linux
<div>
<div>
<p>Surgiu um novo método de enigma rootkit dublado Flipswitch, contornando as mais recentes salvaguardas do Linux 6.9 Kernel e reacendendo preocupações sobre o compromisso no nível do kernel. </p>
<p>Manipulando o código da máquina do novo despachante syscall, em vez do depreciado <code>sys_call_table</code>. <code>kill</code> e <code>getdents64</code>.</p>
<p>Durante anos, raízes linux como diamorfina e pumakit explorou o <code>sys_call_table</code>-Uma variedade simples de ponteiros de função-para redirecionar syscalls através de funções controladas por atacantes. </p>
<p>Ao desativar a proteção de gravação e substituir entradas específicas, um adversário pode ocultar arquivos maliciosos de <code>ls</code> Saídas ou tentativas de terminação do processo de frustração. </p>
<p>O <a href="https://www.elastic.co/security-labs/flipswitch-linux-rootkit" rel="noreferrer noopener nofollow" target="_blank">liberar</a> do Linux Kernel 6.9, no entanto, deu um golpe fatal a essa abordagem: o kernel substituiu a pesquisa de matriz direta</p>
<pre>c<code><em>// Pre-6.9: Direct array lookup</em>
sys_call_table[__NR_kill](regs);
</code></pre>
<p>com um <code>switch</code>-Despacho de estatura dentro <code>x64_sys_call</code>ignorando efetivamente quaisquer modificações para <code>sys_call_table</code> Para o manuseio real do syscall.</p>
<h2 id="flipswitch-rediscovering-the-hook"><strong>Flipswitch: redescobrindo o gancho</strong></h2>
<p>O principal insight de Flipswitch é que a lógica original do syscall ainda existe em forma compilada por trás do <code>switch</code> declaração. </p>
<p>Em vez de adulterar com <code>sys_call_table</code>Flipswitch localiza e remende o nível da máquina <code>call</code> instrução interior <code>x64_sys_call</code> Isso chama a função Syscall alvo. Este processo se desenrola em quatro etapas:</p>
<ol>
<li><strong>Descubra o endereço de função original</strong><br />Embora o <code>sys_call_table</code> Não governa mais o despacho, ele ainda mantém indicações válidas para compatibilidade. Lendo uma entrada como <code>sys_call_table[__NR_kill]</code>Flipswitch obtém o endereço do original <code>sys_kill</code> rotina.</li>
<li><strong>Localizar <code>kallsyms_lookup_name</code></strong><br />Para encontrar símbolos do kernel programaticamente, o flipswitch usa um kprobe em um símbolo conhecido, extraindo o endereço de <code>kallsyms_lookup_name</code>. Isso permite a pesquisa de qualquer ponteiro de função Syscall exportado, ignorando as restrições de exportações diretas.</li>
<li><strong>Digitalize a instrução de chamada exclusiva</strong><br />O <code>x64_sys_call</code> O código da máquina da função é pesquisado byte por byte para o código de opção de um bytes <code>0xe8</code> seguido pelo deslocamento relativo de 4 bytes precisos que se destina <code>sys_kill</code>. Esta assinatura singular identifica as instruções exatas para sequestrar.</li>
<li><strong>Patch o despachante</strong><br />Operando no anel 0, o flipswitch desativa a proteção de gravação da CPU limpando o bit WP no CR0. Em seguida, substitui o deslocamento de 4 bytes do identificado <code>call</code> instrução para apontar para um malicioso <code>fake_kill</code> manipulador. Após a descarga do módulo, as proteções são reativadas e o deslocamento original restaurado, deixando evidências forenses mínimas.</li>
</ol>
<h2 id="implications-and-defensive-strategies"><strong>Implicações e estratégias defensivas</strong></h2>
<p>O flipswitch ressalta a persistente dinâmica de gato e rato entre o endurecimento do kernel e a inovação adversária. Enquanto os desenvolvedores do Linux continuam fortalecendo a despacho do Syscall, os atacantes se adaptam ao direcionar a própria lógica de despacho compilado. Mitigações podem incluir:</p>
<ul>
<li><strong>Verificação de integridade de tempo de execução</strong>: Hash periodicamente e validando o código da máquina de <code>x64_sys_call</code> Para detectar modificações não autorizadas.</li>
<li><strong>Restrições aprimoradas de KProbe</strong>: Limitar ou auditar ainda mais o uso de KProbes para localizar endereços de símbolos críticos.</li>
<li><strong>Integridade do fluxo de controle (CFI)</strong>: Empregando técnicas de CFI dentro do kernel para aplicar que todas as chamadas indiretas correspondem a metas legítimas.</li>
</ul>
<h2 id="detecting-flipswitch-with-yara"><strong>Detectando flipswitch com yara</strong></h2>
<p>Manter a visibilidade no fluxo de controle do kernel e alavancar a detecção baseada em assinatura será essencial para ficar à frente na batalha em andamento por <a href="https://gbhackers.com/linux-kernel-netfilter-flaw/" rel="noreferrer noopener" target="_blank">Linux Kernel</a> integridade.</p>
<p>A detecção de rootkits no nível do kernel permanece desafiadora devido à sua operação furtiva e na memória. Para ajudar os defensores, a Elastic Security publicou uma regra Yara visando o flipswitch<a href="https://gbhackers.com/poc-exploit-cve-2020-0601/" rel="noreferrer noopener" target="_blank"> prova de conceito</a>. A regra digitaliza os padrões exclusivos de código de máquina introduzidos durante o processo de patch:</p>
<pre>text<code>rule Linux_Rootkit_Flipswitch_821f3c9e
{
meta:
author = "Elastic Security"
description = "Detect FlipSwitch rootkit PoC"
os = "Linux"
arch = "x86"
strings:
$all_a = { FF FF 48 89 45 E8 F0 80 ?? ?? ?? }
$main_b = { 41 54 53 E8 ?? ?? ?? ?? 48 C7 C7 ?? ?? ?? ?? }
condition:
#all_a >= 2 and 1 of ($main_b)
}
</code></pre>
<p>Ao implantar essa regra em ferramentas de varredura de memória ou plataformas de proteção de terminais, as equipes de segurança podem sinalizar a presença do despachante corrigido da Flipswitch e responder antes que ocorram danos significativos.</p>
<p>À medida que as defesas do kernel evoluem, pesquisas como o FlipSwitch destacam a necessidade crítica de proteções em camadas e monitoramento proativo. </p>
<p><strong>Siga -nos<a href="https://news.google.com/publications/CAAqKAgKIiJDQklTRXdnTWFnOEtEV2RpYUdGamEyVnljeTVqYjIwb0FBUAE?hl=en-IN&gl=IN&ceid=IN%3Aen" rel="noreferrer noopener" target="_blank">Google News</a>Assim,<a href="https://www.linkedin.com/company/cyber-threat-intel/" rel="noreferrer noopener" target="_blank">LinkedIn</a>e<a href="https://x.com/The_Cyber_News" rel="noreferrer noopener" target="_blank">X</a>Para obter atualizações instantâneas e definir GBH como uma fonte preferida em<a href="https://www.google.com/preferences/source?q=https://gbhackers.com/" rel="noreferrer noopener" target="_blank">Google</a>.</strong></p>
</div></div>