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
LDAP-Monitoring-Watchdog — LDAP Watchdog: Uma ferramenta de monitoramento LDAP em tempo real compatível com Linux para detectar alterações no diretório, fornecendo visibilidade sobre adições, modificações e exclusões para administradores e pesquisadores de segurança. | Kitploit
Ferramentas/GitHubGitHub/megamansec/ldap-monitoring-watchdog
Inteligência de AmeaçasResposta a IncidentesAnálise de LogsArchived
GitHubmegamansec/ldap-monitoring-watchdog

LDAP-Monitoring-Watchdog

LDAP Watchdog: Uma ferramenta de monitoramento LDAP em tempo real compatível com Linux para detectar alterações no diretório, fornecendo visibilidade sobre adições, modificações e exclusões para administradores e pesquisadores de segurança.

Ver Repositório

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
19416há 4 mesesRevisado pelo Kitploit

LDAP Watchdog

Visão Geral

O LDAP Watchdog é uma ferramenta projetada para monitorar mudanças de registros em um diretório LDAP em tempo real. Ele fornece um mecanismo para rastrear e visualizar modificações, adições e remoções em entradas de usuários e grupos, permitindo que os usuários correlacionem mudanças esperadas com mudanças reais e identifiquem possíveis incidentes de segurança. Foi criado pensando em OpenLDAP e Linux, no entanto pode funcionar em outras implementações de LDAP. É escrito em Python e requer apenas a biblioteca ldap3.

Este software foi escrito por Joshua Rogers.

Se você está interessado em algum dos seguintes, então o LDAP Watchdog é para você:

  • Saber o que está acontecendo no seu diretório LDAP sob demanda com integração com webhook do Slack.
  • Ver novas contratações, desligamentos e promoções assim que aparecerem no LDAP.
  • Monitorar quando e o que o RH está fazendo.
  • Detectar mudanças não autorizadas no LDAP.
  • Monitorar dados vazados acidentalmente.
  • Detectar quando usuários estão fazendo login e logout no LDAP.

Além de monitorar modificações, adições e remoções em um diretório LDAP, ele pode ser configurado para ignorar atributos específicos, ou até mesmo ajustado para ignorar atributos granulares dependendo de seus valores antigos/novos.

As mudanças monitoradas podem ser encaminhadas para um webhook do Slack ou exibidas no terminal (ou ambos). A saída colorida opcional também é suportada.

Anteriormente chamado de LDAP-Stalker (porque monitorar mudanças em um diretório LDAP é uma excelente maneira de espiar mudanças em uma empresa: aprender sobre promoções antes de serem anunciadas, novas contratações, desligamentos, etc.), um post de blog sobre os detalhes e a história deste projeto pode ser encontrado aqui.

Exemplos (Sem Filtragem)

Nota: nos exemplos abaixo, entryCSN e modifyTimestamp podem ser completamente ignorados definindo LDAP_WATCHDOG_IGNORED_ATTRIBUTES=entryCSN,modifyTimestamp.

Saída no terminal (com cor):

Exemplo da saída do LDAP Watchdog

Saída no Slack:

Exemplo da saída do LDAP Watchdog no Slack

Funcionalidades

  1. Monitoramento em Tempo Real: O LDAP Watchdog monitora continuamente um diretório LDAP em busca de mudanças em entradas de usuários e grupos.

  2. Comparação de Mudanças: A ferramenta compara mudanças entre buscas LDAP consecutivas, destacando adições, modificações e exclusões.

  3. Verificação de Usuário de Controle: O LDAP Watchdog suporta um mecanismo de usuário de controle, disparando um erro se as mudanças do usuário de controle não forem encontradas.

  4. Filtragem LDAP Flexível: Os usuários podem personalizar a filtragem LDAP usando a variável de ambiente LDAP_WATCHDOG_SEARCH_FILTER para focar em classes de objeto ou atributos específicos.

  5. Integração com Slack: Receba notificações em tempo real no Slack para entradas LDAP adicionadas, modificadas ou excluídas.

  6. Saída Personalizável: A saída do console fornece indicações claras e coloridas de adições, modificações e exclusões para fácil visualização.

  7. Entradas e Atributos Ignorados: Os usuários podem especificar UUIDs e atributos a serem ignorados durante o processo de comparação.

  8. Atributos Ignorados Condicionais: A filtragem condicional permite que os usuários ignorem atributos específicos com base no tipo de mudança (adições, modificações, exclusões).

Requisitos

  • Python 3.7+.
  • O pacote ldap3. Se estiver usando um webhook do Slack, o pacote requests também é necessário.

Instalação

PyPI

root@kitploit:~
pip install LDAP-Monitor

Para incluir suporte a webhook do Slack:

root@kitploit:~
pip install LDAP-Monitor[slack]

Docker

root@kitploit:~
docker pull megamansec/ldap-monitor

Ou do GitHub Container Registry:

root@kitploit:~
docker pull ghcr.io/megamansec/ldap-monitoring-watchdog

A partir do Código Fonte

root@kitploit:~
git clone https://github.com/MegaManSec/LDAP-Monitoring-Watchdog.git
cd LDAP-Monitoring-Watchdog
pip install ".[slack]"

Uso

Executando com pip install

root@kitploit:~
export LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan'
export LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com'
export LDAP_WATCHDOG_USERNAME='Emily'
export LDAP_WATCHDOG_PASSWORD='qwerty123'
ldap-watchdog

Ou usando python -m:

root@kitploit:~
python -m ldap_watchdog

Executando com Docker

root@kitploit:~
docker run -d \
  -e LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan' \
  -e LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com' \
  -e LDAP_WATCHDOG_USERNAME='Emily' \
  -e LDAP_WATCHDOG_PASSWORD='qwerty123' \
  -e SLACK_WEBHOOK_URL='https://hooks.slack.com/services/[...]' \
  -e LDAP_WATCHDOG_IGNORED_ATTRIBUTES='modifyTimestamp,phoneNumber,officeLocation,gecos' \
  megamansec/ldap-monitor

Instalação no Systemd (baseado em Debian)

Um script de instalação baseado em Debian, install.sh, é fornecido. Quando executado como root, este script:

  1. Cria (se necessário) um ambiente virtual Python em /opt/ldap-watchdog.
  2. Instala o LDAP Watchdog do PyPI nesse ambiente virtual.
  3. Cria um arquivo de ambiente em /etc/ldap-watchdog.env para configuração.
  4. Instala e ativa um serviço systemd (/etc/systemd/system/ldap-watchdog.service) que executa o ldap-watchdog em segundo plano.
  5. Configura a geração de logs para /var/log/ldap-watchdog.log e /var/log/ldap-watchdog-error.log.
  6. Configura a rotação de logs em /etc/logrotate.d/ldap-watchdog.

Você pode opcionalmente passar um único argumento para install.sh para definir a SLACK_WEBHOOK_URL:

root@kitploit:~
sudo ./install.sh "https://hooks.slack.com/services/[...]"

Após a instalação, edite /etc/ldap-watchdog.env para configurar as definições de conexão LDAP e reinicie o serviço:

root@kitploit:~
sudo systemctl restart ldap-watchdog

Configuração

Toda a configuração é feita através de variáveis de ambiente. As seguintes variáveis são suportadas:

Configurações Gerais

Usuário de Controle

Variável de AmbienteDescriçãoPadrão
LDAP_WATCHDOG_CONTROL_UUID

Integração com Slack

Variável de AmbienteDescriçãoPadrão
SLACK_WEBHOOK_URL

Entradas e Atributos Ignorados

Atributos Ignorados Condicionais

A variável LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES aceita uma string JSON onde as chaves são nomes de atributos e os valores são listas de valores a serem ignorados:

root@kitploit:~
export LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES='{
  "objectClass": ["posixAccount"],
  "memberOf": ["cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com", "cn=interns,ou=Accessgroups,dc=mouse,dc=com"],
  "organizationalStatus": ["researcher"]
}'

Exemplo de Configuração

root@kitploit:~
export LDAP_WATCHDOG_CONTROL_UUID='a71c6e4c-8881-4a03-95bf-4fc25d5e6359'
export LDAP_WATCHDOG_SERVER='ldaps://ldaps.intra.lan'
export LDAP_WATCHDOG_BASE_DN='dc=mouse,dc=com'
export LDAP_WATCHDOG_USERNAME='Emily'
export LDAP_WATCHDOG_PASSWORD='qwerty123'
export LDAP_WATCHDOG_USE_SSL='true'
export LDAP_WATCHDOG_REFRESH_RATE='60'
export LDAP_WATCHDOG_DISABLE_COLOR_OUTPUT='false'
export LDAP_WATCHDOG_IGNORED_UUIDS='e191c564-6e6d-42c1-ae51-bda0509fe846,8655e0d9-ecdc-46ce-ba42-1fa3dfbf5faa'
export LDAP_WATCHDOG_IGNORED_ATTRIBUTES='modifyTimestamp,phoneNumber,officeLocation,gecos'
export LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES='{"objectClass":["posixAccount"],"memberOf":["cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com","cn=interns,ou=Accessgroups,dc=mouse,dc=com"],"organizationalStatus":["researcher"]}'
export SLACK_WEBHOOK_URL='https://hooks.slack.com/services/[...]'

ldap-watchdog

Limitações

  1. A configuração LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES pode infelizmente ocultar mudanças importantes que não deveriam ser ocultadas. Isso pode acontecer se um atributo tiver um único valor que é alterado. Isso ocorre porque atributos ignorados condicionalmente ocultarão alterações no atributo tanto quando o valor for alterado para bem como de o valor ignorado; por exemplo, se um usuário é memberOf cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com e isso é alterado para cn=super-administrator,ou=Accessgroups,dc=mouse,dc=com, a mudança será perdida.
  2. Semelhante ao #1, não há uma maneira real de determinar se uma mudança é realmente uma mudança em alguns casos, ou uma remoção seguida de adição no mesmo momento. Em teoria, isso não importa, no entanto é importante notar.

Licença

Este projeto é licenciado sob a GPL3.0.

Baixar ferramenta
Variável de AmbienteDescriçãoPadrão
LDAP_WATCHDOG_SERVERURL do servidor LDAP (ex.: ldaps://ldaps.intra.lan)""
LDAP_WATCHDOG_BASE_DNNome Distinto Base para buscas LDAP""
LDAP_WATCHDOG_USERNAMENome de usuário LDAP para autenticação. Deixe vazio para bind anônimo.""
LDAP_WATCHDOG_PASSWORDSenha LDAP para autenticação. Deixe vazio para bind anônimo.""
LDAP_WATCHDOG_USE_SSLDefina como true para usar SSL, false caso contráriotrue
LDAP_WATCHDOG_SEARCH_FILTERFiltro LDAP para entradas de usuários e grupos(&(|(objectClass=inetOrgPerson)(objectClass=groupOfNames)))
LDAP_WATCHDOG_SEARCH_ATTRIBUTELista separada por vírgulas de atributos a recuperar. Por padrão, usa *,+ para incluir atributos operacionais.*,+
LDAP_WATCHDOG_REFRESH_RATEIntervalo de tempo em segundos entre buscas LDAP consecutivas60
LDAP_WATCHDOG_DISABLE_COLOR_OUTPUTDefina como true para desabilitar a saída colorida no terminalfalse
UUID de um usuário de controle cujas mudanças disparam um erro se não forem encontradas. Se definido, esse usuário deve sempre ter algum tipo de mudança quando o diretório LDAP for recuperado.
""
LDAP_WATCHDOG_CONTROL_USER_ATTRIBUTEAtributo específico para verificar mudanças no usuário de controle. Se definido, esse atributo deve ter sido alterado para o UUID de controle.""
URL do webhook do Slack para notificações. Requer o extra slack (pip install LDAP-Monitor[slack]).
None
LDAP_WATCHDOG_SLACK_BULLETPOINTCaractere de ponto usado na saída do Slack e do console\u2022
Variável de AmbienteDescriçãoPadrão
LDAP_WATCHDOG_IGNORED_UUIDSLista separada por vírgulas de UUIDs a ignorar durante a comparação""
LDAP_WATCHDOG_IGNORED_ATTRIBUTESLista separada por vírgulas de atributos a ignorar durante a comparação""
LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTESString JSON de atributos para ignorar condicionalmente (veja abaixo){}