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
BlueKeep — CVE-2019-0708 bluekeep detecção de vulnerabilidade | Kitploit
Ferramentas/GitHubGitHub/oneoy/bluekeep
ReconhecimentoScanners de VulnerabilidadesExploraçãoColeta de InformaçõesSegurança de RedeTestes de Penetração
GitHuboneoy/bluekeep

BlueKeep

CVE-2019-0708 bluekeep detecção de vulnerabilidade

Ver Repositório
12há 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

Windows download macOS download Linux download Follow

rdpscan para a vulnerabilidade CVE-2019-0708 (BlueKeep)

Este é um scanner rápido e improvisado para a vulnerabilidade CVE-2019-0708 no Remote Desktop da Microsoft. No momento, há cerca de 700.000 máquinas na Internet pública vulneráveis a essa vulnerabilidade, em comparação com cerca de 2.000.000 de máquinas que têm o Remote Desktop exposto, mas estão corrigidas/seguras contra exploração. Muitos esperam que, nos próximos meses, surja um worm devastador na Internet, semelhante ao WannaCry e ao notPetya. Portanto, escaneie suas redes e corrija seus sistemas. Esta ferramenta facilita a verificação das suas redes para encontrar máquinas vulneráveis.

Para usar esta ferramenta, você pode baixar um "binário" para executar pela linha de comando, ou pode baixar o código-fonte e compilá-lo. Para Windows, há um binário pré-compilado disponível.

Esta ferramenta é baseada inteiramente no patch do rdesktop de https://github.com/zerosum0x0/CVE-2019-0708. Simplesmente reduzi o código para que eu possa compilar facilmente no macOS e no Windows, além de adicionar a capacidade de escanear vários alvos.

Status

Isto tem apenas alguns dias de vida e é experimental. No entanto, estou testando-o escaneando toda a Internet (com a ajuda do masscan), então estou resolvendo muitos problemas rapidamente. Você pode tentar entrar em contato comigo no Twitter (@erratarob) para ajuda/comentários.

  • 2019-05-27 - binários para Windows e macOS lançados (clique nos selos acima). Vocês do Linux recebem apenas o código-fonte, como de costume. Parece estar funcionando bem nas três plataformas.
  • 2019-05-26 - corrigindo os problemas de rede do Windows
  • 2019-05-25 - Linux e macOS funcionando bem, Windows tem alguns erros de rede
  • 2019-05-24 - funciona no Linux e no macOS, Windows tem alguns bugs de compilação
  • 2019-05-23 - atualmente trabalhando no macOS dentro do XCode

Uso principal

Para escanear uma rede, execute-o da seguinte forma:

root@kitploit:~
rdpscan 192.168.1.1-192.168.1.1.255

Isto imprimirá um resultado por linha para cada endereço, indicando VULNERABLE se estiver vulnerável ao bug, SAFE se estiver (provavelmente) seguro, ou UNKNOWN se o programa não conseguir descobrir o status, como não obter resposta do alvo. Como a maioria dos alvos não responde, estatisticamente, a maioria será *UNKNOWN".

Ele é bastante lento. Você pode aumentar a velocidade adicionando o parâmetro de linha de comando --workers 1000. Mas você pode aumentar a velocidade ainda mais colocando o masscan na frente primeiro para encontrar rapidamente a porta 3389 disponível, e depois usar apenas o rdpscan para escanear essas máquinas resultantes em busca da vulnerabilidade.

root@kitploit:~
masscan 10.0.0.0/8 -p3389 --rate 1000000 >ips.txt
rdpscan --file ips.txt > results.txt

Ou, em uma única etapa, canalizando a saída de um para o outro:

root@kitploit:~
masscan 10.0.0.0/8 -p3389 --rate 1000000 | rdpscan --file -

Você pode obter detalhes de diagnóstico mais detalhados usando o parâmetro -d, que é impresso em sterr. É assim que normalmente executo o programa:

root@kitploit:~
rdpscan --file ips.txt 2> diag.txt 1> results.txt

Compilação

A parte difícil é instalar as bibliotecas OpenSSL e não conflitar com outras versões no sistema. No Debian Linux, eu faço:

root@kitploit:~
$ sudo apt install libssl-dev

Depois de resolver esse problema, basta compilar todos os arquivos .c juntos assim:

root@kitploit:~
$ gcc *.c -lssl -lcrypto -o rdpscan

Coloquei um Makefile no diretório que faz isso, então você provavelmente pode fazer apenas:

root@kitploit:~
$ make

O código é escrito em C, então é necessário ter um compilador C instalado, como fazendo o seguinte:

root@kitploit:~
$ sudo apt install build-essential

Erros de compilação comuns

Esta seção descreve os erros de compilação mais óbvios.

root@kitploit:~
ssl.h:24:25: fatal error: openssl/rc4.h: No such file or directory

Isso significa que você não tem os cabeçalhos do OpenSSL instalados, ou eles não estão em algum caminho. Lembre-se de que, mesmo que você tenha os binários do OpenSSL instalados, isso não significa que você tenha os pacotes de desenvolvimento instalados. Você precisa ter tanto os cabeçalhos quanto as bibliotecas instalados.

Para instalar essas coisas no Debian, faça:

root@kitploit:~
$ sudo apt install libssl-dev

Para corrigir o problema de caminho, adicione uma flag de compilação -I/usr/local/include, ou algo semelhante.

Um exemplo de problema de linker é o seguinte:

root@kitploit:~
Undefined symbols for architecture x86_64:
"_OPENSSL_init_ssl", referenced from:
    _tcp_tls_connect in tcp-fac73c.o
"_RSA_get0_key", referenced from:
    _rdssl_rkey_get_exp_mod in ssl-d5fdf5.o
"_SSL_CTX_set_options", referenced from:
    _tcp_tls_connect in tcp-fac73c.o
"_X509_get_X509_PUBKEY", referenced from:
    _rdssl_cert_to_rkey in ssl-d5fdf5.o

Recebo isso no macOS porque há várias versões do OpenSSL. Corrijo isso codificando os caminhos manualmente:

root@kitploit:~
$ gcc *.c -lssl -lcrypto -I/usr/local/include -L/usr/local/lib -o rdpscan

De acordo com comentários de outras pessoas, a seguinte linha de comando pode funcionar no macOS se você usou o Homebrew para instalar as coisas. Ainda assim, continuo recebendo os erros de link acima, porque instalei outros componentes do OpenSSL que estão em conflito.

root@kitploit:~
gcc $(brew --prefix)/opt/openssl/lib/libssl.a $(brew --prefix)/opt/openssl/lib/libcrypto.a -o rdpscan *.c

Execução

A seção acima fornece dicas rápidas para executar o programa. Esta seção fornece ajuda mais detalhada.

Para escanear um único alvo, basta passar o endereço do alvo:

root@kitploit:~
./rdpscan 192.168.10.101

Você pode passar endereços IPv6 e nomes DNS. Você pode passar vários alvos. Um exemplo disso seria:

root@kitploit:~
./rdpscan 192.168.10.101 exchange.example.com 2001:0db8:85a3::1

Você também pode escanear faixas de endereços, usando endereços IPv4 início-fim, ou especificação CIDR IPv4. Faixas IPv6 não são suportadas porque são muito grandes.

root@kitploit:~
./rdpscan 10.0.0.1-10.0.0.25 192.168.0.0/16

Por padrão, ele escaneia apenas 100 alvos por vez. Você pode aumentar esse número com o parâmetro --workers. No entanto, não importa o quão alto você defina esse parâmetro, na prática você terá no máximo cerca de 500 a 1500 workers em execução ao mesmo tempo, dependendo do seu sistema.

root@kitploit:~
./rdpscan --workers 1000 10.0.0.0/24

Em vez de especificar alvos na linha de comando, você pode carregá-los de um arquivo, usando o bem nomeado parâmetro --file:

root@kitploit:~
./rdpscan --file ips.txt

O formato do arquivo é um endereço, nome ou faixa por linha. Ele também pode consumir o texto gerado pelo masscan. Espaços extras são removidos, linhas em branco ignoradas e quaisquer linhas de comentário são ignoradas. Um comentário é uma linha que começa com o caractere # ou com os caracteres //.

A saída é enviada para stdout, dando o status de VULNERABLE, SAFE, ou UNKNOWN. Pode haver motivos adicionais para cada um.

root@kitploit:~
149.129.120.24  - UNKNOWN - FIN received
45.60.213.160   - SAFE - not RDP but HTTP
208.43.229.89   - SAFE - CredSSP required
170.104.127.137 - UNKNOWN - FIN received
86.188.190.117  - UNKNOWN - connect timeout
62.15.34.157    - SAFE - Target appears patched
216.15.251.120  - VULNERABLE -- got appid
69.62.158.174   - VULNERABLE -- got appid
92.111.20.13    - SAFE - Target appears patched

Você pode processar isso com comandos unix adicionais como grep e cut. Para obter uma lista apenas das máquinas vulneráveis:

root@kitploit:~
./rdpscan 10.0.0.0/8 | grep 'VULN' | cut -f1 -d'-'

Os marcados como "UNKNOWN" provavelmente valem a pena ser escaneados depois, especialmente os com "FIN received", o que geralmente significa que o outro lado encerrou a conexão cedo por causa de atraso na Internet. Salve-os em um arquivo e leia-os novamente no próximo escaneamento com a opção --file.

Se "CredSSP required" (significando NLA obrigatório) é "SAFE" é discutível. Isso significa que é necessário um login com senha antes de podermos testar/acionar a vulnerabilidade. Pode estar sem correção e vulnerável a um usuário autenticado, só não é explorável por um worm ou usuário não autenticado.

Você deve sempre obter um único status no stdout para cada endereço IP que escanear. Claro, se você especificar um endereço IP várias vezes, receberá vários status para esse endereço.

No entanto, como este código é baseado no rdestkop, existem certos erros de protocolo que não geram um status. Se você tiver um endereço IP público na Internet que produza um desses erros, estou ansioso para corrigi-lo.

Informações de diagnóstico

Adicionar o parâmetro -d despeja informações de diagnóstico sobre as conexões em stderr.

root@kitploit:~
./rdpscan 62.15.34.157 -d

[+] [62.15.34.157]:3389 - connecting...
[+] [62.15.34.157]:3389 - connected from [10.1.10.133]:49211
[+] [62.15.34.157]:3389 - SSL connection
[+] [62.15.34.157]:3389 - version = v4.8
[+] [62.15.34.157]:3389 - Sending MS_T120 check packet
[-] [62.15.34.157]:3389 - Max sends reached, waiting...
62.15.34.157    - SAFE - Target appears patched

No macOS/Linux, você pode redirecionar stdout e stderr separadamente para arquivos diferentes da maneira usual:

root@kitploit:~
./rdpscan --file ips.txt 2> diag.txt 1> results.txt

SOCKS5 e Tor por diversão

Então ele inclui suporte a SOCKS5:

root@kitploit:~
./rdpscan --file ips.txt --socks5 localhost --socks5port 9050

Isso piora os problemas de conexão, então você obtém muito mais resultados "UNKNOWN".

Baixar ferramenta