Escalar privilégios com SUDO

Escalar privilégios com SUDO

O SUDO permite que um usuário execute um comando como super user (root), sendo ele um dos binários do linux que possibilita escalação de privilégio. Isto é, permite que um usuário não privilegiado torne-se root ou SYSTEM (em caso de máquinas Windows). Essa técnica é constantemente utilizada em CTFs (Capture the flag) ou challenges/defafios de hacking.

Abaixo estão alguns exemplos de escalação de privilégio:

Escalar privilégios com VI e VIM

A escalação de privilégio com VI e VIM, famosos editores de texto, ocorre pois estes binários possuem o parâmetro “-c” que permite a execução de um comando (que neste caso será /bin/bash):

sudo vi -c ':!/bin/bash'
Escalar privilégios com vi
sudo vim -c ':!/bin/bash'
Escalar privilégios com vim

NANO

O NANO, outro editor de texto, também possui uma forma de executar um comando, porém este fluxo requer um pouco mais de ações:

1- Execute o comando:

sudo nano

2- Pressione as teclas:

CTRL+R

3- Pressione as teclas:

CTRL+X

4- Digite o comando a ser executado:

reset; sh 1>&0 2>&0

FIND

O binário FIND, utilizado para busca de arquivos e diretórios possui o parâmetro -exec para realizar uma execução, conforme indicado abaixo, também é possível escalar privilégio com o seguinte comando:

sudo find . -exec /bin/bash \; -quit
Escalar privilégios com find

Estes foram somente alguns exemplos de como escalar privilégios com SUDO. As referências foram retiradas de https://gtfobins.github.io/ .

Mitigação do ataque

Para evitar este tipo de ataque é recomendado:

  1. Restringir acesso SUDO aos usuários, aplicando o princípio do mínimo privilégio (PoLP): Mantenha no SUDO somente o que os usuários realmente utilizam para executar seus trabalhos.
  2. Implementar múltiplo fator de autenticação no SUDO : Através de um recurso de two factor authentication é possível garantir que apenas usuários autorizados executem os comandos.
  3. Adicionar a flag NOEXEC no sudoers.

Por fim, agradecemos a leitura e esperamos que este post tenha te ajudado de alguma maneira! Caso tenha alguma dúvida, entre em contato conosco pelo Telegram , Facebook ou Instagram ! Veja mais posts no IronLinux !

Posts relacionados

SSL: Gerando Key e CSR no Linux

SSL: Gerando Key e CSR no Linux

GERAR KEY E CSR 1- Acesse o ambiente onde esta o site para o qual irá gerar o certificado

Ler post completo
Alterando hostname no Linux [Ubuntu]

Alterando hostname no Linux [Ubuntu]

Acho que todos já instalaram uma máquina virtual ou contrataram um Cloud e se deparou com o nome padrão no Hostname da máquina, geralmente é o SO utilizado.

Ler post completo
Pesquisar comandos já digitados no Linux

Pesquisar comandos já digitados no Linux

Existe uma forma de pesquisar comandos já digitados além do HISTORY .

Ler post completo