fala galera, Show
O SSH (Secure Shell) é um protocolo que fornece conexão criptografada entre uma rede segura e uma rede insegura, neste cenário da metasploitable, na porta TCP 22, é utilizado para fazer login na máquina alvo de forma segura. O protocolo de login na máquina utilizando ssh pode utilizar password e/ou pubilc key, informações que vamos enumerar mais adiante. Enumeração Assim como o serviço de FTP, temos mais de uma forma de enumerar o serviço de ssh, para fins de agilidade, vamos utilizar o netcat. nc 192.168.1.8 22 Serviço: SSH-2.0-OpenSSH_4.7p1Tipos de autenticação ls /usr/share/nmap/scripts | grep ssh Vamos fazer uma varredura na porta 22 com o script “ssh-auth-methods” nmap -v -p22 --script=ssh-auth-methods -Pn 192.168.1.8 Host permite password e public keyO host permite autenticação tanto com senha quanto chave publica, o que mostra uma falha de configuração, uma vez que a opção “password” está ativa, nos permite uma tentativa de força bruta. Brute forceRealizar brute force em serviço SSH é um pouco mais delicado e lento, pois é muito fácil sobrecarregar o serviço, então os intervalos entre as tentativas são maiores, além de que, dependendo da configuração, o serviço de SSH limita a quantidade de tasks paralelas. Brute force com nmap
nmap -v -p22 --script=ssh-brute --script-args='userdb=usuarios.txt,passdb=senhas.txt' -Pn 192.168.1.8 Usuários encontrados Também é possível alterar o timeout do script, para deixá-lo um pouco mais lento e “afinar” o nmap de acordo com as configurações do host, porém, no caso da metasploitable2 com o tempo padrão foi possível enumerar 6 senhas válidas. Brute force com Hydra hydra -L usuarios.txt -P senhas.txt 192.168.1.8 ssh -t 4 Usuários encontrados com Hydra Novamente, pudemos encontrar a senha de 6 usuários. Brute force com Metasploit-Framework msfconsole Módulo de brute em sshVamos preencher as opções necessárias set RHOSTS 192.168.1.8 Sessões abertas com usuários encontradosO metasploit não só encontrou as senhas, como validou e abriu sessões de shell com o usuários, para exibir as sessões, utilizamos “sessions -l”: sessions -l Listagens de sessõesPara interagirmos uma sessão, usamos o comando “sessions -i <id da sessão>”. sessions -i 6 Sessão aberta com o usuário “user”Temos sessões diferentes com usuários diferentes e permissões diferentes. Com privilégios baixos, podemos tentar escalar e conseguir um acesso root. Criando um script para bruteforce de SSH #!/usr/bin/python3 Ao executarmos o script seguido do host, username e endereço da wordlist, iniciamos o bruteforce. ls /usr/share/nmap/scripts | grep ssh 0Bruteforce com pythonPercebemos que o serviço de SSH na porta TCP 22 do alvo tem uma vulnerabilidade muito conhecida que é a de permitir acesso por password e senhas fracas. A partir dessas vulnerabilidades, podemos explorar profundamente o host alvo. PORTA 23 TELNET Telnet é um protocolo que estabelece uma conexão entre 2 hosts. É um protocolo muito inseguro por si só, pois transita dados em texto claro sem qualquer tipo de criptografia. Vamos utilizar o Wireshark para monitorarmos a conexão e utilizar o telnet para nos autenticar no host alvo com qualquer um dos usuários que exploramos. ls /usr/share/nmap/scripts | grep ssh 1Autenticação com usuário “sys” e senha “batman”Ao nos conectarmos com telnet, o banner da máquina alvo é carregado e nos pede um usuário e senha, após a autenticação, temos uma shell normalmente, mas vamos seguir o stream TCP com wireshark para vermos. Captura de tráfego com WiresharkComo podemos ver, não há criptografia na comunicação, tanto usuário quanto senha puderam ser capturados no monitoramento. Para que serve a porta 23?Se você acompanha de perto a evolução do mundo digital e, principalmente, das tecnologias da Comunicação e da Informação, deve saber que a Porta 23 é a do protocolo Telnet. Aquele que proporciona facilidade de comunicação baseada em texto, interativo e bidirecional.
Qual é a porta 23?Portas 0 a 995. Para que serve a porta 22?Porta 22 (TCP) - abriga o protocolo Secure Shell (SSH) para a segurança de logins, FTP e encaminhamento de porta.
O que é uma conexão Telnet?O que é o Telnet
O Telnet é um protocolo e aplicação, parte da família TCP/IP, para acesso e utilização de computadores remotos. Com Telnet podemos fazer "login" noutros computadores da Internet e utilizar os seus recursos.
|