Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
LDAP-Monitoring-Watchdog — LDAP Watchdog: Uno strumento di monitoraggio LDAP in tempo reale compatibile con Linux per rilevare le modifiche alla directory, fornendo visibilità su aggiunte, modifiche ed eliminazioni per amministratori e ricercatori di sicurezza. | Kitploit
Strumenti/GitHubGitHub/megamansec/ldap-monitoring-watchdog
Threat IntelligenceRisposta agli IncidentiAnalisi dei LogArchived
GitHubmegamansec/ldap-monitoring-watchdog

LDAP-Monitoring-Watchdog

LDAP Watchdog: Uno strumento di monitoraggio LDAP in tempo reale compatibile con Linux per rilevare le modifiche alla directory, fornendo visibilità su aggiunte, modifiche ed eliminazioni per amministratori e ricercatori di sicurezza.

Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
194164 mesi faRevisionato da Kitploit

LDAP Watchdog

Panoramica

LDAP Watchdog è uno strumento progettato per monitorare le modifiche ai record in un directory LDAP in tempo reale. Fornisce un meccanismo per tracciare e visualizzare modifiche, aggiunte e rimozioni di voci utente e di gruppo, consentendo agli utenti di correlare le modifiche previste con quelle effettive e identificare potenziali incidenti di sicurezza. È stato creato pensando a OpenLDAP e Linux, tuttavia potrebbe funzionare con altre implementazioni di LDAP. È scritto in Python e richiede solo la libreria ldap3.

Questo software è stato scritto da Joshua Rogers.

Se sei interessato a uno dei seguenti, allora LDAP Watchdog è ciò che fa per te:

  • Sapere cosa succede nel tuo directory LDAP su richiesta con l'integrazione webhook di Slack.
  • Vedere nuove assunzioni, uscite e promozioni non appena compaiono in LDAP.
  • Monitorare quando e cosa sta facendo le HR.
  • Rilevare modifiche non autorizzate in LDAP.
  • Monitorare la fuga accidentale di dati.
  • Rilevare quando gli utenti effettuano l'accesso e la disconnessione da LDAP.

Oltre a monitorare modifiche, aggiunte e rimozioni in un directory LDAP, può essere configurato per ignorare attributi specifici, o anche ottimizzato per ignorare attributi granulari a seconda dei loro vecchi/nuovi valori.

Le modifiche monitorate possono essere inoltrate a un webhook di Slack o visualizzate sul terminale (o entrambi). È supportato anche un output opzionale a colori.

Precedentemente chiamato LDAP-Stalker (perché monitorare le modifiche di un directory LDAP è un ottimo modo per spiare i cambiamenti in un'azienda: scoprire promozioni prima che siano annunciate, nuove assunzioni, uscite, ecc.), un post sul blog con i dettagli e la storia di questo progetto può essere trovato qui.

Esempi (Nessun Filtraggio)

Nota: negli esempi seguenti, entryCSN e modifyTimestamp possono essere completamente ignorati impostando LDAP_WATCHDOG_IGNORED_ATTRIBUTES=entryCSN,modifyTimestamp.

Output del terminale (a colori):

Example of the output from LDAP Watchdog

Output su Slack:

Example of the output from LDAP Watchdog in Slack

Caratteristiche

  1. Monitoraggio in tempo reale: LDAP Watchdog monitora continuamente un directory LDAP per rilevare modifiche nelle voci utente e di gruppo.

  2. Confronto delle modifiche: Lo strumento confronta le modifiche tra ricerche LDAP consecutive, evidenziando aggiunte, modifiche e cancellazioni.

  3. Verifica dell'utente di controllo: LDAP Watchdog supporta un meccanismo di utente di controllo, generando un errore se le modifiche dell'utente di controllo non vengono trovate.

  4. Filtraggio LDAP flessibile: Gli utenti possono personalizzare il filtraggio LDAP utilizzando la variabile d'ambiente LDAP_WATCHDOG_SEARCH_FILTER per concentrarsi su classi di oggetti o attributi specifici.

  5. Integrazione Slack: Ricevi notifiche in tempo reale su Slack per voci LDAP aggiunte, modificate o eliminate.

  6. Output personalizzabile: L'output della console fornisce indicazioni chiare e colorate di aggiunte, modifiche e cancellazioni per una facile visibilità.

  7. Voci e attributi ignorati: Gli utenti possono specificare UUID e attributi da ignorare durante il processo di confronto.

  8. Attributi ignorati condizionalmente: Il filtraggio condizionale consente agli utenti di ignorare attributi specifici in base al tipo di modifica (aggiunte, modifiche, cancellazioni).

Requisiti

  • Python 3.7+.
  • Il pacchetto ldap3. Se si utilizza un webhook di Slack, è necessario anche il pacchetto requests.

Installazione

PyPI

root@kitploit:~
pip install LDAP-Monitor

Per includere il supporto per webhook Slack:

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

Docker

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

Oppure da GitHub Container Registry:

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

Da sorgente

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

Utilizzo

Esecuzione con 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

Oppure usando python -m:

root@kitploit:~
python -m ldap_watchdog

Esecuzione con 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

Installazione Systemd (basato su Debian)

Viene fornito uno script di installazione basato su Debian, install.sh. Quando eseguito come root, questo script:

  1. Crea (se necessario) un ambiente virtuale Python in /opt/ldap-watchdog.
  2. Installa LDAP Watchdog da PyPI in quell'ambiente virtuale.
  3. Crea un file di ambiente in /etc/ldap-watchdog.env per la configurazione.
  4. Installa e abilita un servizio systemd (/etc/systemd/system/ldap-watchdog.service) che esegue ldap-watchdog in background.
  5. Configura la registrazione in /var/log/ldap-watchdog.log e /var/log/ldap-watchdog-error.log.
  6. Imposta la rotazione dei log in /etc/logrotate.d/ldap-watchdog.

Puoi opzionalmente passare un singolo argomento a install.sh per impostare SLACK_WEBHOOK_URL:

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

Dopo l'installazione, modifica /etc/ldap-watchdog.env per configurare le impostazioni di connessione LDAP, quindi riavvia il servizio:

root@kitploit:~
sudo systemctl restart ldap-watchdog

Configurazione

Tutta la configurazione avviene tramite variabili d'ambiente. Le seguenti variabili sono supportate:

Impostazioni generali

Utente di controllo

Variabile d'ambienteDescrizionePredefinito

Integrazione Slack

Variabile d'ambienteDescrizionePredefinito

Voci e attributi ignorati

Attributi ignorati condizionalmente

La variabile LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES accetta una stringa JSON dove le chiavi sono nomi di attributi e i valori sono elenchi di valori da ignorare:

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"]
}'

Configurazione di esempio

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

Limitazioni

  1. La configurazione LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTES può purtroppo nascondere modifiche importanti che non sono destinate a essere nascoste. Questo può accadere se un attributo ha un singolo valore che viene modificato. Questo perché gli attributi ignorati condizionalmente nasconderanno le modifiche all'attributo sia quando il valore viene cambiato in così come da il valore ignorato; ad esempio, se un utente è memberOf cn=mailing-list-user,ou=Accessgroups,dc=mouse,dc=com che viene cambiato a cn=super-administrator,ou=Accessgroups,dc=mouse,dc=com, verrà perso.
  2. Simile a #1, non esiste un modo reale per determinare se una modifica sia davvero una modifica in alcuni casi, o una rimozione e poi aggiunta nello stesso momento. In teoria, non ha molta importanza, ma è importante notarlo.

Licenza

Questo progetto è concesso in licenza sotto GPL3.0.

Scarica lo strumento
Variabile d'ambienteDescrizionePredefinito
LDAP_WATCHDOG_SERVERURL del server LDAP (es. ldaps://ldaps.intra.lan)""
LDAP_WATCHDOG_BASE_DNNome distinto di base per le ricerche LDAP""
LDAP_WATCHDOG_USERNAMENome utente LDAP per l'autenticazione. Lascia vuoto per bind anonimo.""
LDAP_WATCHDOG_PASSWORDPassword LDAP per l'autenticazione. Lascia vuoto per bind anonimo.""
LDAP_WATCHDOG_USE_SSLImposta a true per usare SSL, false altrimentitrue
LDAP_WATCHDOG_SEARCH_FILTERFiltro LDAP per le voci utente e di gruppo(&(|(objectClass=inetOrgPerson)(objectClass=groupOfNames)))
LDAP_WATCHDOG_SEARCH_ATTRIBUTEElenco separato da virgole degli attributi da recuperare. Per impostazione predefinita viene usato *,+ per includere attributi operativi.*,+
LDAP_WATCHDOG_REFRESH_RATEIntervallo di tempo in secondi tra ricerche LDAP consecutive60
LDAP_WATCHDOG_DISABLE_COLOR_OUTPUTImposta a true per disabilitare l'output colorato del terminalefalse
LDAP_WATCHDOG_CONTROL_UUID
UUID di un utente di controllo le cui modifiche attivano un errore se non trovate. Se impostato, questo utente dovrebbe avere sempre qualche tipo di modifica quando il directory LDAP viene recuperato.
""
LDAP_WATCHDOG_CONTROL_USER_ATTRIBUTEAttributo specifico da controllare per le modifiche nell'utente di controllo. Se impostato, questo attributo deve essere cambiato per l'utente UUID di controllo.""
SLACK_WEBHOOK_URL
URL del webhook Slack per le notifiche. Richiede l'extra slack (pip install LDAP-Monitor[slack]).
None
LDAP_WATCHDOG_SLACK_BULLETPOINTCarattere punto elenco usato nell'output di Slack e della console\u2022
Variabile d'ambienteDescrizionePredefinito
LDAP_WATCHDOG_IGNORED_UUIDSElenco separato da virgole di UUID da ignorare durante il confronto""
LDAP_WATCHDOG_IGNORED_ATTRIBUTESElenco separato da virgole di attributi da ignorare durante il confronto""
LDAP_WATCHDOG_CONDITIONAL_IGNORED_ATTRIBUTESStringa JSON di attributi da ignorare condizionalmente (vedi sotto){}