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
douglas-042-HQ — Console centrale per i collector di Douglas-042 HEADQUARTERS. Analizza una flotta, correla i risultati tra gli host e gestisce i feed IOC e la consegna al SIEM da un unico posto. | Kitploit
Strumenti/GitHubGitHub/douglas-042/douglas-042-hq
Strumenti DifensiviGestione degli Indicatori di Compromissione (IOC)Analisi delle VulnerabilitàInformatica ForenseThreat IntelligenceRilevamento IntrusioniRisposta agli IncidentiAnalisi dei Log
GitHubdouglas-042/douglas-042-hq

douglas-042-HQ

Console centrale per i collector di Douglas-042 HEADQUARTERS. Analizza una flotta, correla i risultati tra gli host e gestisce i feed IOC e la consegna al SIEM da un unico posto.

1425 giorni faNon ancora revisionato

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 →
Vedi Repository
Condividi

Douglas-042 HEADQUARTERS

Threat hunting e incident response basati su agent, per ambienti che non dispongono di un EDR.

Scansiona una flotta di host Windows e Linux alla ricerca di segni di compromissione, decidi cosa conta davvero e agisci di conseguenza — da un'unica console, con un solo comando per host.

Python FastAPI Agents Rules License

Douglas-042 console — fleet posture at a glance

Cosa fa

Una caccia non è una scansione. Douglas raccoglie gli artefatti che un analista raccoglierebbe a mano — processi, servizi, attività pianificate, autorun, connessioni, account, driver, log eventi, cron, systemd, cronologia shell, web root — ed esegue 201 detection integrate su di essi, più le tue regole Sigma, YARA e personalizzate.

Poi fa le parti che la maggior parte degli strumenti lascia a te: dice quali risultati richiedono ancora una decisione, quale dei sessanta indirizzi esterni guardare per primo, e ti permette di fare qualcosa al riguardo senza aprire una sessione RDP.

root@kitploit:~
   deploy one command  ──▶  hunt  ──▶  findings appear live
                                            │
                     ┌──────────────────────┼──────────────────────┐
                     ▼                      ▼                      ▼
              IOC feed match          reputation score        response actions
              "this is a known C2"    "92/100, 340 reports"   isolate · kill · collect

Perché esiste

Gli ambienti che hanno più bisogno di essere cacciati sono spesso quelli senza un EDR: qualche decina di server, nessun budget per agent e un incidente iniziato tre giorni fa. La scelta è di solito tra una piattaforma commerciale che nessuno ha approvato e una cartella di script PowerShell che qualcuno esegue a mano.

Douglas si colloca tra i due. Nulla viene installato sull'host che stai investigando — il collector viene eseguito una volta e termina — e ogni risultato finisce in un'unica console che puoi consegnare a chiunque riprenda in mano l'incidente successivamente.


Triage: cosa richiede ancora una decisione

I risultati sono facili da produrre e costosi da leggere. Questa schermata esiste per mantenere la coda abbastanza corta che qualcuno la stia ancora leggendo al terzo passaggio.

Triage — open work by severity, and the noisiest rules

Tre esiti, e la differenza tra loro conta sei mesi dopo:

DecisioneCosa fa
ConfermatoReale. Rimane nel punteggio di rischio, l'host rimane rosso.
Falso positivoEsce dal punteggio solo per quell'host.
SoppressioneUna regola permanente che nasconde lo stesso risultato in ogni scansione futura.

Nulla viene mai eliminato. Ritira una soppressione e tutto ciò che ha nascosto ritorna. Regole più rumorose si trova in fondo perché metterle a punto libera la coda più velocemente che lavorarla risultato per risultato.


Detection che puoi leggere, mettere a punto e disattivare

Tutte le 201 detection sono raggruppate in 15 categorie — disattivabili una alla volta o un'intera famiglia in una volta. Clicca su qualsiasi regola per leggere cosa verifica, come si attiva legittimamente e cosa fare dopo.

Built-in detections, grouped into categories

La distinzione che la schermata chiarisce, perché sbagliarla è comune:

Disattivare una regola non è la stessa cosa che sopprimerla. Disattivata significa che il collector non esegue mai il controllo — nulla viene prodotto e non c'è nulla da rivedere. Una soppressione registra il risultato e lo contrassegna come una decisione che qualcuno ha preso, con una motivazione allegata.

Usa disattivata per una famiglia di rumore che hai accettato. Usa soppressione per un pattern specifico su un host specifico.

Un trattino sotto Attivata è di solito la risposta sana: DGL-014 si attiva solo quando un log sembra cancellato. La lista è ciò che lo strumento verifica, non ciò che è sbagliato.


Scrivi le tue regole, come testo

Il modulo è più veloce per la tua prima regola e più lento per la ventesima. Quindi le regole possono anche essere scritte come testo — verificate mentre digiti, rispetto a 11 tabelle di artefatti e 13 operatori.

Writing a rule as text, with live validation

Il riquadro sottostante svolge due funzioni. Quando la regola è sbagliata indica la riga, non la regola:

root@kitploit:~
line 7: Condition 1: 'is_maybe' is not an operator.

Quando è corretta, dice cosa corrisponderà effettivamente la regola — perché una regola che si convalida e poi corrisponde a qualcosa di diverso da ciò che il suo autore intendeva è il fallimento che vale la pena cogliere:

Valida — ACME-001 Legge Services e corrisponde quando Signed è false e PathName non contiene 'Program Files' e PathName non contiene 'System32'

Importa ed esporta in JSON, YAML o CSV. Il round-trip è garantito — la nostra stessa esportazione supera il nostro stesso validatore in tutti e tre i formati.


I feed di indicatori e la reputazione rispondono a domande diverse

DomandaQuandoRisultato
Feed IOCC'è qualcosa da questa lista C2 sui miei host?Durante la cacciaDGL-IOC — una corrispondenza confermata, non un punteggio
ArricchimentoQuesto host ha comunicato con 60 indirizzi — quali per primi?Dopo la caccia92/100, 340 segnalazioni, C2 Cobalt Strike noto

Quindici fonti di feed sono pronte all'uso — Feodo, ThreatFox, URLhaus, TweetFeed, USOM, SSL Blacklist, Emerging Threats, OpenPhish, MISP — più un Feed personalizzato che legge qualsiasi URL che restituisca dati a forma di indicatore.

Quattro provider di reputazione: AbuseIPDB, VirusTotal, ThreatFox (livelli gratuiti) e GreyNoise (a pagamento, disattivato per impostazione predefinita). I verdetti non vengono mai fusi in un unico numero — AbuseIPDB conta le segnalazioni, VirusTotal conta i motori, ThreatFox conosce l'infrastruttura, e una media di questi è una cifra che nessuno di loro difenderebbe. Il badge mostra il verdetto peggiore con il provider che l'ha fornito.

I livelli gratuiti sono protetti: risultati in cache per 12 ore, 40 indirizzi per esecuzione e un contatore giornaliero che si ferma prima del provider. Gli indirizzi privati non vengono mai inviati.


Risposta, dalla console

Undici azioni in tre gruppi — osserva, agisci, contieni. Le cinque di sola lettura sono contrassegnate diversamente dalle sei che modificano l'host, e ogni azione mutante richiede una motivazione scritta.

L'isolamento mantiene la console raggiungibile di proposito: un host tagliato fuori dal proprio agent non può essere rilasciato da remoto, e qualcuno dovrebbe camminare fino ad esso. I target che romperebbero la macchina invece di contenere l'intrusione — lsass.exe, systemd, pid 1, Administrator, /bin/bash — vengono rifiutati, non avvisati, perché il momento in cui questo viene usato è il momento in cui nessuno sta leggendo gli avvisi.

L'output ritorna come schede strutturate anziché come un dump del terminale, e le righe sono azionabili: una lista di processi ha un pulsante Kill per riga, un indirizzo ha Reputation.


Sigma e YARA, su entrambe le piattaforme

WindowsLinux
SigmaEvent Log + Sysmonauditd execve + auth/cron/syslog
YARAcontenuto filecontenuto file

Le regole Sigma Linux la cui sorgente di log non può essere letta vengono rifiutate al caricamento con una motivazione, anziché caricate e lasciate non attivarsi mai — un risultato vuoto da una regola che non poteva essere eseguita appare esattamente come un host pulito.

L'agent Linux verifica se auditd è installato, in esecuzione e ha regole caricate, poi dice cosa manca e quanto costa:

root@kitploit:~
   Detection capabilities on this host
     auditd    : NOT RUNNING
                 Nothing records what executes on this host, so execution
                 rules cannot fire and a clean result only means the sweep
                 could not look. Install it:
                   apt install auditd && systemctl enable --now auditd

Invia dove le persone già guardano

Undici destinazioni in tre gruppi:

  • SIEM — Wazuh/JSON, Splunk HEC, Microsoft Sentinel, Elasticsearch, QRadar LEEF, CEF, NDJSON
  • Notifica — Slack, Microsoft Teams, PagerDuty
  • Case — TheHive

Le destinazioni di chat e paging mostrano una frase anziché un record, e limitano quanti risultati vanno in un singolo messaggio: un canale in cui vengono incollate cento righe è un canale che le persone silenziano.


Avvio rapido

root@kitploit:~
git clone https://github.com/YOURNAME/douglas-042.git
cd douglas-042
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000

Oppure con Docker:

root@kitploit:~
docker compose up -d

Apri http://your-server:8000

Login predefinito

Username: admin Password: douglas

La console forza un cambio di password al primo accesso — un valore predefinito integrato in un pacchetto non deve sopravvivere inosservato. Imposta DOUGLAS_CONSOLE_PASSWORD in .env prima del primo avvio se preferisci scegliere la tua.

.env viene letto solo mentre il database è vuoto. Dopo il primo avvio, reimposta con python3 -m app.manage passwd admin.

All'avvio ottieni il token di registrazione per il passaggio successivo:

root@kitploit:~
Created the initial admin account: admin
The default password is still in use. Change it at first sign-in.
Enrollment token ready: dgl-enroll-xBAk8...
Douglas-042 console 1.0 ready

Aggiungere un host

Deploy → scegli la piattaforma → copia un comando.

Windows — PowerShell con privilegi elevati:

root@kitploit:~
iex (irm 'http://console:8000/api/v1/reports/deploy/script?token=YOUR_TOKEN')

Linux — come root:

root@kitploit:~
curl -sSL 'http://console:8000/api/v1/reports/deploy/script?token=YOUR_TOKEN&platform=linux' | sudo bash

Sei passaggi scorrono nel terminale: download, registrazione, recupero del collector, installazione del servizio, conferma che è attivo, primo check-in. Se la registrazione fallisce, nulla viene installato, e lo dice.


Prima ora

#SchermataFai questoOttieni
1Feed IOCAggiungi Feodo Tracker, premi RefreshRilevamento C2 — nessuna regola da scrivere
2Threat intelIncolla una chiave AbuseIPDB gratuita, premi TestOrdine di triage sul grafo
3FlottaSeleziona un host, Avvia cacciaRisultati, in tempo reale
4Log ed eventiCerca errori dei moduliSe la scansione ha potuto effettivamente guardare
5TriageLavora la coda, metti a punto le regole più rumoroseUna lista che qualcuno legge ancora
6Le mie regoleCarica i 6 esempi, aprine unoCome scrivere le tue
7IntegrazioniWebhook Slack, soglia a HIGHNe vieni a conoscenza senza guardare

Architettura

root@kitploit:~
┌──────────────────────────────────────────────────────────┐
│  Console — FastAPI + SQLite, one process, no queue        │
│  triage · findings · graph · rules · response · reports   │
└───────────────▲──────────────────────────────────────────┘
                │ agents poll: heartbeat 20s, actions 5s
┌───────────────┴──────────────────────────────────────────┐
│  Agent  (PowerShell / shell)                              │
│    └── Collector — runs, reports, exits                   │
│          201 built-in rules + Sigma + YARA + your rules   │
└──────────────────────────────────────────────────────────┘
  • Nulla viene installato sull'host in fase di indagine. Il collector viene eseguito e termina; l'agent è un'attività pianificata o un'unità systemd che recupera il lavoro.
  • La console non si connette mai verso l'interno. Gli agent eseguono polling, quindi un host dietro NAT o un firewall unidirezionale funziona comunque.
  • SQLite, un file. Nessun broker, nessun cluster, nessun database esterno. Le migrazioni dello schema vengono eseguite all'avvio e solo in aggiunta.
Schermate della console

Dashboard · Cases · Fleet · Hunts · Response · Findings · Triage · Frequency · Graph · MITRE matrix · Timeline · Diff · Built-in rules · My rules · Sigma · YARA · IOC feeds · Threat intel · Integrations · Schedules · Users · Deploy · Logs & events

Categorie di detection

Integrità della raccolta · Autorun e avvio · Processi e rete · Servizi e attività · Meccanismi di persistenza · Postura di sicurezza · Driver e kernel · Evidenze di esecuzione · Autenticazione e account · Accesso remoto · Sysmon, Kerberos e AD · File, webshell ed esfiltrazione · Attività utente e fiducia · Rootkit e memoria · Corrispondenze di indicatori

Cosa legge il collector

Entrambi: account e gruppi locali · processi in esecuzione con firme e hash · connessioni TCP ed endpoint esterni · servizi · file scritti di recente · codice in memoria · web root e pattern di webshell

Windows: log eventi · attività pianificate · autorun · persistenza nel registro · sottoscrizioni WMI · driver · condivisioni SMB · Prefetch · archivi di certificati

Linux: cron · unità systemd · file di avvio della shell · LD_PRELOAD · binari setuid · authorized_keys e configurazione sshd · cronologia shell · log di autenticazione · taint del kernel · WordPress

Requisiti

Console: Python 3.11+, sei dipendenze (FastAPI, uvicorn, SQLAlchemy, pydantic, python-multipart, PyYAML). Funziona su una VM da 1 GB.

Host Windows: PowerShell 5.1+, amministratore. Nient'altro.

Host Linux: bash e curl. python3 abilita il progresso in tempo reale e le regole sul contenuto dei file; auditd abilita le detection di esecuzione. La console ti dice quali mancano su quale host.


Note di sicurezza

  • Cambio password forzato al primo accesso; gli account si bloccano dopo ripetuti fallimenti.
  • Le chiavi di sessione vengono generate al primo avvio con permessi 0600 — una chiave fissa inclusa in un pacchetto sarebbe condivisa da tutti coloro che l'hanno scaricato.
  • Le azioni di risposta sono soggette a ruoli, registrate e rifiutano target che romperebbero l'host.
  • Gli indirizzi privati non vengono mai inviati ai provider di reputazione.
  • Le esportazioni delle regole neutralizzano l'iniezione di formule nei fogli di calcolo.

📄 Technical Report (PDF) — 14 pagine che coprono l'architettura, ogni schermata della console, tutti i 37 moduli del collector, il modello di detection, le azioni di risposta e il modello di sicurezza.

Licenza

Concesso in licenza sotto la MIT License. Vedi LICENSE.


Costruito per gli ambienti che hanno più bisogno di essere cacciati e possono permetterselo meno.
Scarica lo strumento