Skip to content

Releases: mrhenrike/MikrotikAPI-BF

v1.16

15 Apr 05:10

Choose a tag to compare

📦 v1.16 - Abril de 2025

🧠 Novidades e Funcionalidades

  • Compatibilidade ampliada com Python 3.12+:

    • Implementada verificação automática de versão mínima e máxima suportada (>=3.8 e <3.13).
    • Exibe aviso para versões não testadas (ex: Python 3.13+), com opção de continuar mesmo assim.
  • Suporte completo a verificação de serviços (validação pós-login):

    • Adicionados testes dinâmicos para:
      • FTP
      • SSH
      • TELNET
      • REST-API (HTTP ou HTTPS)
    • Verificações feitas apenas se as respectivas portas estiverem abertas no alvo.
  • Novo resumo final de serviços (SERVICE SUMMARY):

    • Exibe status de teste por serviço (OK, ERROR, NOT TESTED)
    • Mostra as portas reais testadas e se foram válidas ou não
    • Consolida os resultados ao final do script com contagem total por categoria
  • Melhoria no tratamento de wordlists e credenciais:

    • Correções na renderização de campos com largura dinâmica na tabela final
    • Tratamento adequado de wordlists duplicadas
  • Organização e UX CLI refinados:

    • argparse agora exibe valores padrão nas descrições
    • Melhor explicação sobre cada flag de uso
    • Argumento --validate agora aceita ftp, ssh, telnet com ou sem definição de porta (ftp=2121)

🐛 Correções de Bugs

  • Corrigido erro de renderização com f-strings para colunas USERNAME e PASSWORD
  • Corrigido erro de execução no Linux onde telnetlib foi removido no Python 3.13+
  • Corrigido erro de digitação em restapi quando --ssl está ativado sem a porta 443 acessível
  • Corrigido crash na renderização de tabela final quando algum serviço estava com status None

⚠️ Notas Importantes

  • Python 3.13+ não é oficialmente suportado devido à remoção de bibliotecas padrão (ex: telnetlib)
  • Recomendado uso de Python 3.12.x
    • Scripts de instalação automática foram incluídos:
      • install-python-3.12.sh (Linux)
      • install-python-3.12.ps1 (Windows)

🧪 Testado em

  • ✅ Kali Linux (Python 3.12 via script)
  • ✅ Windows 11 (PowerShell + Python 3.12 via instalador oficial)
  • ✅ ParrotSec OS
  • ✅ Ubuntu Desktop 22.04+

v1.15

12 Apr 08:10

Choose a tag to compare

🚀 v1.15 — "Kill-Switch + Service Summary Edition"
Release date: [inserir data]
Focus: Robustez de execução, checagem de portas e relatório final

🧱 Core Changes
✅ Verificação automática de portas antes do ataque (HTTP, API, REST, SSL)
💣 Kill-switch: se API ou HTTP estiverem fechadas, o script aborta imediatamente
🔒 Serviços com porta fechada são ignorados (sem perda de tempo testando o que está offline)

✨ New Features
🔎 Nova função check_service_ports() com status de cada serviço
🔁 Serviços ftp, ssh, telnet, rest-api testados somente se estiverem abertos
🧪 Porta de cada serviço agora dinâmica por parâmetro, com valores default corretamente documentados

💬 Log Refinement
-v exibe: succ, info, warn, fail, skip
-vv exibe tudo: debug, error, fail, succ, info, warn, skip

🧼 Other Improvements
📦 Reorganização dos argumentos CLI (argparse) com novos help texts
📚 Novos exemplos de uso incluídos no help menu
💡 Mensagens de log agora informam explicitamente se determinado serviço foi "SKIPPED"

v1.12

12 Apr 02:41

Choose a tag to compare

✅ v1.12 — "REST Awakens"
Release date: [inserir data]
Focus: Integração REST-API e validação de serviços adicionais

✨ New Features
✅ Suporte completo a REST-API via HTTP e HTTPS (--ssl)
🌐 Flag --ssl-port para definir porta customizada do REST-API via HTTPS
🔍 Adicionado suporte à biblioteca requests com HTTPBasicAuth para testar /rest/system/identity
🔐 Bypass automático de validação de certificado TLS inválido (com verify=False)
🧠 Melhorias nas mensagens de erro para identificar quando uma conta REST precisa também da permissão "api"

🛠️ Improvements
🔁 Verificação REST-API mesmo se API tradicional falhar
🧼 Logs mais limpos e inteligentes (verbose somente quando habilitado)
📜 Checagem refinada de usuários com permissão parcial
🧪 Estrutura de testes REST extraída para função isolada test_restapi_login()

v1.11

12 Apr 01:41

Choose a tag to compare

Full Changelog: v1.9...v1.11

v1.10

12 Apr 01:27

Choose a tag to compare

📦 MikrotikAPI-BF – Release Notes v1.10
📅 Data de lançamento
11 de abril de 2025

✨ Novidades e Funcionalidades
✅ Validação de serviços após brute-force
Agora, após o sucesso no login via API, é possível validar se as mesmas credenciais funcionam em outros serviços da RouterOS (inicialmente: ftp).

🔗 Flag --validate com suporte a múltiplos serviços
Nova flag para ativar validações complementares:

Sintaxe simples: --validate ftp

Sintaxe com porta customizada: --validate ftp=1021,ssh=2222

🧠 Deduplificação real de credenciais
Agora as credenciais válidas são armazenadas como dicionários com chaves únicas, evitando repetições mesmo em execuções paralelas.

📊 Tabela de saída expandida com coluna SERVICES
Mostra quais serviços além da API foram autenticados com a mesma credencial.

🪵 Sistema de logs com níveis configuráveis

-v ativa logs FAIL e WARN

-vv ativa logs DEBUG e ERROR

Todos os logs agora são coloridos via colorama para melhor leitura.

🚀 Novo banner centralizado via _log.py
O banner ASCII da ferramenta agora é chamado diretamente de Log.banner() e impresso no início da execução, resolvendo problemas de renderização em sistemas limitados.

🧪 Debug dos testes de login via -vv
Para cada tentativa de login (API ou serviço externo), o modo -vv agora mostra qual user:pass está sendo testado, além do motivo do erro quando falhar.

🧱 Refatorações Técnicas
Remoção de prints soltos no fluxo principal.

Padronização do uso de ThreadPoolExecutor para controle de workers.

Função de parsing de --validate com fallback para portas default.

Função Log.debug() adicionada e integrada com os novos testes pós-login.

v1.9

11 Apr 23:58

Choose a tag to compare

🚀 Versão 1.9
Resumo: Início do suporte à validação de serviços além da API Mikrotik.

✅ Novidades:
Novo parâmetro --validate ftp,... para validação de serviços pós-ataque.

Primeiro serviço suportado: FTP.

Validações de serviço ocorrem após o brute-force, testando apenas credenciais com sucesso.

Nova coluna na tabela final: SERVICES, indicando onde a credencial é válida (ex: api, ftp).

🧠 Técnicas implementadas:
Teste de conexão via ftplib.FTP() no IP de destino com usuário e senha validados.

Timeouts curtos para evitar travamentos na validação.

Exibição limpa da tabela com dinamismo de tamanho nas colunas USERNAME, PASSWORD e SERVICES.

v1.8

11 Apr 23:55

Choose a tag to compare

🛠 Versão 1.8
Data: (conforme seus testes no histórico recente)
Resumo: Estabilização da ferramenta, controle de threads e melhorias de output.

✅ Novidades:
Remoção de duplicatas entre threads paralelas (uso de index_lock e get_next_combo()).

Tabela final de credenciais expostas com colunas alinhadas dinamicamente (USERNAME, PASSWORD).

Mensagens de log organizadas por nível ([SUCC], [FAIL], [INFO], [WARN], [DEBB]).

Adição de flags de controle de verbosidade:

-v / --verbose: ativa FAIL e WARN.

-vv / --verbose-all: ativa DEBB e ERRO.

Threads limitadas: mínimo 2, máximo 15.

♻️ Melhorias:
Removido (success) e (failed) do final das linhas de teste.

Consolidação dos logs centralizada no _log.py, tirando redundância do script principal.

Manuseio robusto de wordlists e arquivos combo (user:pass).

v1.5

11 Apr 23:48

Choose a tag to compare

💥 v1.5 — Modos de Ataque e Layout CLI Refinado
🎛️ Introduzidas opções:
-U / --user → username único
-P / --passw → password único
-u / -p / -d → leitura de wordlist individual ou combinada (user:pass)

📌 Correções no argparse para evitar conflitos entre parâmetros.
🔁 Lógica de execução refinada para evitar repetição inútil de testes.
📈 Inclusão de progressos no terminal com contagem de tentativas.
🧪 A base para --validate começou a ser estudada, mas ainda não estava presente.

v1.4

11 Apr 23:46

Choose a tag to compare

🚀 v1.4 — Threading & Logs com Timestamp
⚙️ Adicionado suporte a execução paralela com ThreadPoolExecutor.

📊 Logs agora incluem timestamps no formato [HH:MM:SS].

🎨 Começo da padronização de logs com cores (colorama).

⌛ Adicionada opção de delay entre tentativas (-s, --seconds).

🔐 Melhorada a deduplicação de combos na wordlist.

📎 Correções de parsing para wordlists inválidas.

v1.3

11 Apr 23:42

Choose a tag to compare

📦 v1.3 — CLI Improvements & Structure Fix
🧱 Refatoração da estrutura principal do script.

🧾 Implementado argparse para melhorar o manuseio dos parâmetros via terminal.

📂 Suporte a wordlists básicas (usuário fixo + senhas, ou vice-versa).

⚠️ Tratamento de erros simples na leitura de arquivos.

❌ Ainda não havia suporte a threads ou validação de serviços.

🐞 Log rudimentar sem padronização ou controle de verbosidade.