Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
opensshenum — # Enumerador de usuários OpenSSH baseado em CVE-2018-15473 com varredura de portas, fingerprinting e execução paralela para verificar a presença de usuários em servidores SSH remotos. | Kitploit
Ferramentas/GitHubGitHub/gbonacini/opensshenum
Escaneamento de PortasAnálise de VulnerabilidadesExploraçãoColeta de InformaçõesSegurança de RedeTestes de Penetração
GitHubgbonacini/opensshenum

opensshenum

# Enumerador de usuários OpenSSH baseado em CVE-2018-15473 com varredura de portas, fingerprinting e execução paralela para verificar a presença de usuários em servidores SSH remotos.

Ver Repositório
347há 7 anosAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Descrição:

Opensshenum é um enumerador de usuários do OpenSsh que permite verificar uma lista arbitrária de nomes de usuários contra um servidor OpenSsh, para saber quais realmente existem naquela máquina remota. Este programa explora uma falha (corrigida em julho de 2018) que se mostrou eficaz pelo menos a partir do OpenSSH 2.3.0 (lançado em novembro de 2000).

Eu escrevi o exploit a partir do Tssh, um cliente SSH 2 que escrevi em C++11 do zero, partindo das RFCs.

Para mais informações, leia aqui:

http://seclists.org/oss-sec/2018/q3/124

Este problema recebeu o CVE-2018-15473.

AVISO LEGAL:

Este código foi publicado para fins informativos e educacionais. A intrusão em sistemas e serviços sem autorização do proprietário é ilegal. O uso indevido das informações e do software neste repositório pode resultar em acusações criminais contra o autor do delito. Quaisquer ações e/ou atividades relacionadas ao material contido neste Repositório Git são de sua inteira responsabilidade. O autor não será responsabilizado caso sejam apresentadas acusações criminais contra indivíduos que façam uso indevido das informações ou do software deste site para violar a lei.

Pré-requisitos:

O programa é destinado a ser usado em ambiente *nix e foi testado em várias distribuições Linux e OS X:

  • Ubuntu 17.10;
  • OS X 10.11.6;

usando, como compilador, um desta lista:

  • gcc version7.2.0 (Ubuntu 7.2.0-8ubuntu3.2);
  • Apple LLVM version 8.0.0 (clang-800.0.42.1)

e, como servidor ssh, um dos seguintes:

  • OpenSSH_7.5p1

A única dependência externa é a biblioteca OpenSSL, usada para as funções criptográficas. Eu poderei introduzir alternativas ao OpenSSL nas próximas versões. Este programa é destinado a ser usado com uma versão do OpenSSL igual ou superior a:

  • OpenSSL 1.0.2h;

(Isso significa que no OS X, uma atualização é obrigatória).

Para compilar o programa, estas ferramentas/bibliotecas são necessárias:

  • um compilador c++ (com suporte a c++11);
  • automake/autoconf;
  • libtool;
  • OpenSSL 1.0.2h ou superior (pacotes "dev");

Instalação:

  • execute o script configure: ./configure
  • Compile o programa: make
  • Instale o programa e a página de manual: sudo make install

Instruções:

Ele processa a lista de usuários passada via pipe, exemplo:

cat user.txt | ./opensshenum -i dummy_cert target_addr
xxx:NOK
gabriel:OK

onde user.txt é um arquivo contendo uma lista de usuários, um por linha, e dummy_cert é uma chave gerada com o comando ssh-keygen do OpenSsh (o diretório das chaves é ~/.shh por padrão).

Um programa pode ser usado para gerar a lista:

printf "xxx\ngabriel" | ./src/opensshenum -i dummy_rsa localhost
xxx:NOK
gabriel:OK

Veja a página de manual incluída nesta versão.

Novos Recursos:

Scanner de Portas:

Adicionada capacidade de scanner de portas SSH: agora o opensshenum pode escanear todas as portas associadas a um endereço para descobrir instâncias de SSH ouvindo em portas diferentes de 22, para realizar o exploit apenas nessas portas verificadas. Este recurso pode ser usado de forma independente, permitindo obter apenas uma lista das portas associadas a SSH, sem executar nenhum ataque.

Exemplo:

opensshenum -s -n -t2 -m22221 -M22225 -r'.*OpenSSH' -idummy_rsa my_imaginary_website.com

vai escanear as portas (-s) entre 22221 e 22225 (ambas incluídas), executando apenas o escaneamento (-n), com timeout de 2 segundos (-t), esperando uma string hello contendo a string OpenSSH, usando uma chave pública chamada idummy_rsa (recomendo gerar uma chave apenas para esse tipo de operação) e usando como alvo my_imaginary_website.com. Mais informações na página de manual.

Execução Paralela:

Um script alfa usando GNU Parallel ( parallenum.sh ) está incluído, como prova de conceito da redução do tempo de escaneamento alcançável dividindo o intervalo de portas a escanear em subintervalos, cada um pertencente a um processo específico. Isso obviamente produz muito ruído. Para reduzir o ruído, o parâmetro -t pode ser usado para esse fim.

Fingerprinting:

Função de fingerprint, útil para identificar automaticamente o tipo de SO (ou seja, se a string "hello" for omitida) e os serviços com um banco de dados de usuários/combinação de usuários. O banco de dados é criado a partir de arquivos *.lst coletados em um diretório. Cada arquivo *.lst tem o nome <os_name_or_service>.lst, exemplos:

ubuntu_17_10.lst aix.lst proprietary_ftp.lst

O banco de dados, um arquivo csv, tem o formato:

user_1;os_or_service_1; ... ;os_or_service_n ... user_m;os_or_service_1; ... ;os_or_service_n

O banco de dados pode ser criado a partir dos arquivos *.lst usando o utilitário createdb, presente no diretório ./utils, especificando o diretório dos *.lst, exemplo:

cd utils make ./createdb ../lists/

Para solicitar o fingerprinting, use a opção -F com o arquivo do banco de dados, exemplo:

cat test/scan.sample | opensshenum -p22 -idummy_rsa -Futils/opensshenum.db localhost

Baixar ferramenta