Introdução
Neste laboratório, exploraremos dois métodos e as ferramentas correspondentes para obter a senha do usuário root através de ataques de força bruta em sistemas Linux. O laboratório ajudará você a entender os princípios subjacentes e a evitar armadilhas comuns durante o processo.
Usando sucrack para Forçar a Senha Root via Comando su
Nesta etapa, aprenderemos como usar a ferramenta sucrack para forçar a senha do usuário root por força bruta através do comando su.
O comando su é usado para mudar para a identidade de outro usuário em sistemas Linux. Exceto para o usuário root, outros usuários precisam fornecer a senha do usuário alvo ao usar este comando.
A ferramenta que usaremos para forçar o comando su por força bruta é o sucrack. sucrack é uma ferramenta Linux multi-threaded projetada para forçar senhas de usuários locais por força bruta através do comando su.
Como o comando su requer entrada do usuário de um shell TTY, um script de shell simples não pode realizar o ataque de força bruta. sucrack é escrito em linguagem C e suporta multi-threading, tornando o processo de força bruta altamente eficiente.
Você pode verificar o site oficial do sucrack para mais informações.
Em um cenário do mundo real, a máquina alvo pode não ter acesso à internet, então você pode instalar o sucrack usando um dos dois métodos a seguir:
- Baixe o código-fonte do
sucracke faça o upload para a máquina alvo, depois compile e execute-o. - Baixe o código-fonte do
sucrack, compile-o localmente e, em seguida, faça o upload do binário compilado para a máquina alvo.
Neste laboratório, já instalamos o sucrack para você.
Antes de tentar o ataque de força bruta, configuraremos o ambiente do laboratório:
Abra um terminal e navegue até o diretório do projeto:
cd /home/labex/projectExecute o script
env_setup_1.shpara configurar o ambiente do laboratório:./env_setup_1.shEste script nos muda para o usuário sem privilégios
www-data. Nosso objetivo é obter a senha do usuáriorootatravés de "força bruta" (brute force).Temos uma lista de palavras pré-preparada em
/tmp/common-wordlists.txtpara fins de demonstração. Você também pode usar sua própria lista de palavras.A sintaxe para atacar o comando
supor força bruta usandosucracké:sucrack -w <threads> [-u <username>] <wordlist>Os parâmetros são:
-w: Especifica o número de threads<wordlist>: Especifica o arquivo da lista de palavras-u: Especifica o nome de usuário para forçar por força bruta. Se você não especificar um nome de usuário, osucrackforçará a senha do usuáriorootpor padrão.
Vamos tentar a força bruta executando o seguinte comando:
sucrack -w 20 /tmp/common-wordlists.txt > ~/sucrack.log && resetA saída do ataque de força bruta é redirecionada para o arquivo
sucrack.log.Nota: O comando
reseté usado para limpar a tela do terminal porque, às vezes, após usarsucrack, o terminal pode não exibir corretamente.Este ataque de força bruta pode levar algum tempo. Depois de algum tempo, verifique o arquivo
sucrack.logpara confirmar a senha:cat ~/sucrack.logSaída esperada:
password is: reallyEm seguida, podemos mudar para o usuário root usando:
su - rootDigite a senha
reallypara mudar para o usuário root.reallyCrie um arquivo chamado
success_1.txtno diretório/rootpara confirmar que você mudou com sucesso para o usuário root:echo "Success_1" > /root/success_1.txtVocê pode verificar o arquivo
/root/success_1.txtpara confirmar que você mudou com sucesso para o usuário root.
Você aprendeu como usar o sucrack para forçar a senha do usuário root por força bruta!
Usando Hydra para Forçar a Senha Root via SSH
Nesta etapa, aprenderemos como usar a ferramenta hydra para forçar a senha do usuário root através do protocolo SSH.
Com a etapa anterior, ainda devemos ser o usuário root, e para esta etapa precisamos mudar para o usuário labex. Você pode mudar para o usuário labex executando o seguinte comando:
su - labex
Certifique-se de que o diretório está definido para
/home/labex/project:cd /home/labex/projectExecute o script
env_setup_2.shpara configurar o ambiente do laboratório:./env_setup_2.shAssim como na etapa anterior, após executar este script, você mudará para o usuário
www-data.Antes de tentar forçar o protocolo SSH por força bruta, precisamos verificar se a máquina alvo permite que o usuário root faça login via SSH. Você pode verificar isso executando o seguinte comando:
cat /etc/ssh/sshd_config | grep -i permitrootloginSe a saída mostrar
PermitRootLogindefinido comoyes, então podemos prosseguir com o ataque de força bruta. Caso contrário, não há necessidade de tentar.A ferramenta que usaremos para forçar o protocolo SSH por força bruta é o
hydra.hydraé uma ferramenta de força bruta renomada que suporta vários protocolos, incluindo RDP, SMB, HTTP, MySQL e muito mais.hydraestá pré-instalado no Kali Linux e no ambiente Ubuntu do nosso laboratório.A sintaxe para forçar o protocolo SSH por força bruta usando
hydraé:hydra -l root -P passwords.txt -t 4 -V < IP > sshOs parâmetros são:
-l: Especifica o nome de usuário-P: Especifica o arquivo da lista de palavras-t: Especifica o número de threads-V: Exibe o progresso e os detalhes do ataque de força bruta
Vamos tentar forçar a senha do usuário root por força bruta usando a lista de palavras
/tmp/common-wordlists.txte salvar a saída no arquivohydra.log:hydra -l root -P /tmp/common-wordlists.txt -t 64 -V 127.0.0.1 ssh > ~/hydra.logDepois de algum tempo, a senha do usuário root é crackeada com sucesso.
Verifique o arquivo
hydra.logpara confirmar a senha:cat ~/hydra.logExemplo de saída:
... [22][ssh] host: 127.0.0.1 login: root password: penguin 1 of 1 target successfully completed, 1 valid password found ...Agora que temos a senha do usuário root, podemos mudar para o usuário root executando o seguinte comando:
su - rootDigite a senha
penguinpara mudar para o usuário root.penguinVocê agora deve ser o usuário root. Você pode confirmar isso executando o seguinte comando:
whoamiA saída deve ser
root.Crie um arquivo chamado
success_2.txtno diretório/rootpara confirmar que você mudou com sucesso para o usuário root:echo "Success_2" > /root/success_2.txtVocê pode verificar o arquivo
/root/success_2.txtpara confirmar que você mudou com sucesso para o usuário root.
Observação: Se você estiver usando uma versão do hydra anterior à v9.0, ela pode relatar falsos positivos ao forçar o protocolo SSH por força bruta. Você pode verificar a versão do hydra executando hydra -v.
Resumo
Neste laboratório, aprendemos dois métodos para forçar a senha do usuário root em sistemas Linux por força bruta: via comando su usando a ferramenta sucrack e via protocolo SSH usando a ferramenta hydra. Cobrimos a instalação, o uso e os procedimentos passo a passo para cada método, ajudando você a entender os princípios subjacentes e evitar armadilhas comuns. Este laboratório oferece valiosa experiência prática em técnicas de escalonamento de privilégios, que podem ser aplicadas em vários cenários.



