
Zero-day-scanning é um scanner de vulnerabilidades de controladores de domínio, que atualmente inclui verificações para Zero-day-scanning (CVE-2020-1472), MS-PAR/MS-RPRN e SMBv2 Signing.
O Zeroscan é um scanner de vulnerabilidades do Controlador de Domínio, que atualmente inclui verificações para Zerologon (CVE-2020-1472), MS-PAR/MS-RPRN e SMBv2 Signing.
CVE-2020-1472:
Utiliza um script embutido para verificar o Zerologon (CVE-2020-1472), mas NÃO tenta explorar o alvo, é simplesmente um scanner de vulnerabilidades. Código base emprestado de: https://github.com/Anonymous-Family/CVE-2020-1472.git
MS-PAR / MS-RPRN:
Utiliza um wrapper em torno do rpcdump do Impacket para verificar se os serviços de impressão MS-PAR e MS-RPRN estão acessíveis remotamente. Essa verificação pode ajudar a determinar se o alvo é vulnerável ao CVE-2021-1675.
SMBv2 Signing:
Utiliza um wrapper em torno do script 'smb2-security-mode' do Nmap Scripting Engine (NSE) para identificar a configuração de assinatura SMBv2 do alvo.
Instalação:
git clone https://github.com/Anonymous-Family/Zero-day-scanning.git
cd Zero-day-scanning/
virtualenv -p /usr/bin/python3.9 venv
source venv/bin/activate
python3 -m pip install -r requirements.txt
Menu:
Zeroscan
--------------------------------------------------
Uso:
python3 zeroscan.py -t dc01 192.168.1.10
python3 zeroscan.py -iL /caminho/para/arquivo-alvos.txt
python3 zeroscan.py -iL /caminho/para/arquivo-alvos.txt --database
python3 zeroscan.py -iL /caminho/para/arquivo-alvos.txt --drop-table
python3 zeroscan.py -iL /caminho/para/arquivo-alvos.txt -r
python3 zeroscan.py -iL /caminho/para/arquivo-alvos.txt -v
Opções principais:
-t TARGET TARGET Alvo único usando netbiosname e ipaddress. Ex: "dc01 192.168.1.10"
-iL TARGETSFILE Arquivo que contém um alvo por linha usando netbiosname e ipaddress. Ex: "dc01 192.168.1.10"
Opções secundárias:
--database DATABASE Caminho do arquivo de banco de dados.
--drop-table Descarta a tabela do banco de dados.
-r, --rpc-message Ativa mensagens de resposta RPC para CVE-2020-1472, útil para solucionar problemas de conectividade.
-v, --verbose Ativa a verbosidade, útil para depuração do código.
-h, --help Mostra esta mensagem de ajuda e sai.
Exemplo de Saída:
╔════════════════════════════════════════════════════════ ZEROSCAN ═════════════════════════════════════════════════════════╗
╚═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝
Impacket v0.9.23
./zeroscan.py -iL targets.txt
CVE-2020-1472
DC01 192.168.160.134 - AUTH-ATTEMPTS: 26
DC02 192.168.160.133 - AUTH-ATTEMPTS: 1
DC03 192.168.160.137 - AUTH-ATTEMPTS: 2000
Impacket v0.9.23
rpcdump.py @ipaddress
MS-PAR/MS-RPRN
DC01 192.168.160.134 - MS-PAR: False, MS-RPRN: False
DC02 192.168.160.133 - MS-PAR: False, MS-RPRN: False
DC03 192.168.160.137 - MS-PAR: True, MS-RPRN: True
Nmap 7.91
nmap -Pn --script smb2-security-mode -p 445 -iL ./outputfiles/targets.txt -oX ./outputfiles/xml/smb2-security-mode.xml
SMB2-SECURITY-MODE
192.168.160.134 - MESSAGE SIGNING ENABLED BUT NOT REQUIRED
192.168.160.137 - MESSAGE SIGNING ENABLED AND REQUIRED
Zeroscan Database
╔══════════╤═════════════════╤════════════════╤════════╤═════════╤══════════════════════════════════════════╗
║ Hostname │ IP Address │ CVE_2020_1472 │ MS_PAR │ MS_RPRN │ SMBv2_Signing ║
╟──────────┼─────────────────┼────────────────┼────────┼─────────┼──────────────────────────────────────────╢
║ DC01 │ 192.168.160.134 │ VULNERABLE │ False │ False │ Message signing enabled but not required ║
║ DC02 │ 192.168.160.133 │ NA │ False │ False │ NA ║
║ DC03 │ 192.168.160.137 │ NOT VULNERABLE │ True │ True │ Message signing enabled and required ║
╚══════════╧═════════════════╧════════════════╧════════╧═════════╧══════════════════════════════════════════╝
Demonstração - Múltiplos alvos:
