Um processo privilegiado pode ser induzido a sobrescrever um arquivo importante (/ etc / passwd, / etc / shadow, etc.) apontando um link simbólico para ele. Por exemplo, se você sabe que o root executará um programa que cria um arquivo em / tmp, você pode criar uma armadilha adivinhando qual será o nome do arquivo (normalmente / tmp / fooXXX, com foo sendo o nome do programa e XXX sendo o processo) e preencha / tmp com os candidatos prováveis apontando para / etc / shadow. Mais tarde, o root abre o arquivo em / tmp, trunca e sobrescreve / etc / shadow e, de repente, ninguém mais pode fazer login no sistema. Há um ataque relacionado que explora uma condição de corrida entre a verificação da existência de um arquivo temporário e a criação do arquivo.
Existem maneiras de evitar esse problema, incluindo o uso cuidadoso de mktemp () e mkstemp (), mas nem todos os programadores e usuários estarão cientes desse risco. Como resultado, um patch do kernel Linux foi proposto recentemente e, aparentemente, foi aplicado ao kernel que você está usando. O patch evita seguir links simbólicos em uma das situações comuns em que o link malicioso pode ter sido plantado: um diretório gravável em todo o mundo com o conjunto de bits persistentes, que é a maneira como o tmp é normalmente configurado nos sistemas Unix. Em vez de seguir o link simbólico, a tentativa de chamada do sistema falha com o EACCES e o kernel registra a mensagem que você viu.
Algumas conversas relacionadas na lista de discussão do kernel do Linux.