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
Loki — Scanner basato su IOC e YARA per il rilevamento di indicatori di compromesso tramite regex su nomi di file, firme YARA, corrispondenza di hash e controlli di back-connect C2 sugli endpoint. | Kitploit
Strumenti/GitHubGitHub/neo23x0/loki
Gestione degli Indicatori di Compromissione (IOC)Scanner di VulnerabilitàAnalisi HashInformatica ForenseAnalisi MalwareDigital ForensicsThreat IntelligenceRisposta agli Incidenti
GitHubneo23x0/loki

Loki

Scanner basato su IOC e YARA per il rilevamento di indicatori di compromesso tramite regex su nomi di file, firme YARA, corrispondenza di hash e controlli di back-connect C2 sugli endpoint.

Vedi Repository
3.8k6127 mesi faRevisionato da Kitploit

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
Sito web

Not Maintained

Ho scritto un nuovo scanner YARA Open Source chiamato LOKI RS (Rust). LOKI (Python) è ora ufficialmente deprecato.

Nota Importante

Questo progetto è ora in modalità di manutenzione inattiva. Ciò significa che, sebbene accetti pull request per correzioni di bug e problemi semplici, attualmente non ho tempo per aggiungere nuove funzionalità o espandere quelle esistenti. Per anni, la mia attenzione è stata rivolta allo sviluppo di uno scanner più avanzato, THOR, che offre una serie di miglioramenti rispetto a questo progetto. Una versione gratuita, THOR Lite, è disponibile; è più veloce, più stabile e rigorosamente testata nei nostri ambienti CI—semplicemente una soluzione migliore. Puoi trovare un confronto degli scanner open-source, gratuiti e commerciali qui.

Ho anche iniziato a lavorare su una versione basata su Rust di LOKI chiamata LOKI 2. Tuttavia, non sono sicuro di quando raggiungerà la parità di funzionalità con l'attuale rilascio di LOKI. Inoltre, ho creato un diagramma di flusso per aiutarti a decidere quale scanner soddisfi meglio le tue esigenze.

Logo

Loki - Semplice Scanner IOC e YARA

Scanner per Indicatori Semplici di Compromissione

Il rilevamento si basa su quattro metodi di rilevamento:

root@kitploit:~
1. IOC basato sul nome file
   Corrispondenza regex sul percorso/nome file completo

2. Controllo regole YARA
   Corrispondenza firma YARA sui dati del file e sulla memoria dei processi

3. Controllo hash
   Confronta hash dannosi noti (MD5, SHA1, SHA256) con i file scansionati

4. Controllo connessione C2
   Confronta gli endpoint di connessione dei processi con gli IOC C2 (nuovo dalla versione v.10)

Controlli aggiuntivi:

root@kitploit:~
1. Controllo del filesystem di Regin (tramite --reginfs)
2. Controllo anomalie dei processi (basato su [Sysforensics](http://goo.gl/P99QZQ))
3. Scansione di file SWF decompressi (nuovo dalla versione v0.8)
4. Controllo dump SAM

Il binario Windows è compilato con PyInstaller e dovrebbe funzionare come applicazione x86 su sistemi sia x86 che x64.

Come Eseguire LOKI e Analizzare i Rapporti

Esecuzione

  • Scarica l'ultima versione di LOKI dalla sezione releases
  • Estrai il pacchetto del programma
  • Esegui loki-upgrader.exe su un sistema con accesso a Internet per recuperare le firme più recenti
  • Porta la cartella del programma sul sistema di destinazione da scansionare: supporto rimovibile, condivisione di rete, cartella sul sistema di destinazione
  • Apri un prompt dei comandi "cmd.exe" come Amministratore ed eseguilo da lì (puoi anche eseguire LOKI senza privilegi amministrativi ma alcuni controlli saranno disabilitati e gli oggetti rilevanti sul disco non saranno accessibili)

Rapporti

  • Il rapporto risultante mostrerà una riga di risultato VERDE, GIALLA o ROSSA.
  • Analizza tu stesso i risultati:
    1. Caricando campioni non riservati su Virustotal.com
    2. Cerca sul web il nome del file
    3. Cerca sul web parole chiave dal nome della regola (ad es. EQUATIONGroupMalware_1 > cerca "Equation Group")
    4. Cerca sul web l'hash MD5 del campione
  • Segnala eventuali falsi positivi tramite la sezione "Issues", accessibile dalla barra laterale destra (menziona l'indicatore del falso positivo come un hash e/o nome file e il nome della regola che lo ha attivato)

Requisiti

Nessun requisito se usi l'EXE compilato.

Se vuoi compilarlo da solo:

  • yara : Si consiglia di utilizzare la versione più recente dei pacchetti compilati per Windows (x86) - Scaricalo da qui: https://github.com/VirusTotal/yara-python/releases
  • colorama : per colorare l'output
  • psutil : controlli dei processi
  • pywin32 : conversioni di percorsi (PyInstaller issue; solo Windows)

Utilizzo

root@kitploit:~
usage: loki.py [-h] [-p path] [-s kilobyte] [-l log-file] [-r remote-loghost]
               [-t remote-syslog-port] [-a alert-level] [-w warning-level]
               [-n notice-level] [--allhds] [--alldrives] [--printall]
               [--allreasons] [--noprocscan] [--nofilescan] [--vulnchecks]
               [--nolevcheck] [--scriptanalysis] [--rootkit] [--noindicator]
               [--dontwait] [--intense] [--csv] [--onlyrelevant] [--nolog]
               [--update] [--debug] [--maxworkingset MAXWORKINGSET]
               [--syslogtcp] [--logfolder log-folder] [--nopesieve]
               [--pesieveshellc] [--nolisten]
               [--excludeprocess EXCLUDEPROCESS] [--force]

Loki - Simple IOC Scanner

argomenti facoltativi:
  -h, --help            mostra questo messaggio di aiuto ed esci
  -p path               Percorso da scansionare
  -s kilobyte           Dimensione massima del file da controllare in KB (default 5000 KB)
  -l log-file           File di log
  -r remote-loghost     Sistema syslog remoto
  -t remote-syslog-port Porta syslog remota
  -a alert-level        Punteggio di allerta
  -w warning-level      Punteggio di avviso
  -n notice-level       Punteggio di notifica
  --allhds              Scansiona tutti i dischi rigidi locali (solo Windows)
  --alldrives           Scansiona tutte le unità (incluse unità di rete e supporti rimovibili)
  --printall            Stampa tutti i file scansionati
  --allreasons          Stampa tutti i motivi che hanno causato il punteggio
  --noprocscan          Salta la scansione dei processi
  --nofilescan          Salta la scansione dei file
  --vulnchecks          Esegue i controlli delle vulnerabilità
  --nolevcheck          Salta il controllo della distanza di Levenshtein
  --scriptanalysis      Analisi statistica per script per rilevare codice offuscato (beta)
  --rootkit             Salta il controllo dei rootkit
  --noindicator         Non mostrare un indicatore di progresso
  --dontwait            Non attendere all'uscita
  --intense             Modalità di scansione intensiva (scansiona anche tipi di file sconosciuti e tutte le estensioni)
  --csv                 Scrivi formato log CSV su STDOUT (elaborazione automatica)
  --onlyrelevant        Stampa solo avvisi o allerte
  --nolog               Non scrivere un file di log locale
  --update              Aggiorna le firme dal sotto-repository "signature-base"
  --debug               Output di debug
  --maxworkingset MAXWORKINGSET Dimensione massima del working set dei processi da scansionare (in MB, default 100 MB)
  --syslogtcp           Usa TCP invece di UDP per la registrazione syslog
  --logfolder log-folder Cartella da usare per la registrazione quando il file di log non è specificato
  --nopesieve           Non eseguire scansioni pe-sieve
  --pesieveshellc       Esegue la scansione shellcode pe-sieve
  --nolisten            Non mostrare le connessioni in ascolto
  --excludeprocess EXCLUDEPROCESS Specifica un nome eseguibile da escludere dalle scansioni, può essere usato più volte
  --force               Forza la scansione su una cartella specifica (anche se esclusa con esclusione forzata nel codice di LOKI

Firme e IOC

Dalla versione 0.15 le firme YARA risiedono nel sotto-repository signature-base. Non otterrai il sotto-repository scaricando LOKI come file ZIP. Sarà incluso quando clonerai il repository.

I file IOC per hash e nomi file sono memorizzati nella cartella './signature-base/iocs'. Tutti i file '.yar' posizionati nella cartella './signature-base/yara' verranno inizializzati insieme al set di regole già incluso. Usa il valore 'score' per definire il livello del messaggio in caso di corrispondenza di firma.

Puoi aggiungere IOC di hash, c2 e nomi file aggiungendo file nella sottocartella './signature-base/iocs'. Tutti gli IOC di hash e i file IOC di nomi file devono essere nel formato usato da LOKI (vedi i file predefiniti). I file devono avere le stringhe "hash", "filename" o "c2" nel loro nome per essere caricati durante l'inizializzazione.

Per IOC di hash (divisi da nuova riga; il tipo di hash è rilevato automaticamente)

root@kitploit:~
Hash;Description [Reference]

Per IOC di nomi file (divisi da nuova riga)

root@kitploit:~
# (opzionale) Description [Reference]
Filename as Regex[;Score as integer[;False-positive as Regex]]

Esclusioni di scansione definite dall'utente

Dalla versione v0.16.2 LOKI supporta la definizione di esclusioni definite dall'utente tramite "excludes.cfg" nella nuova cartella "./config". Ogni riga rappresenta un'espressione regolare che viene applicata al percorso completo del file durante l'attraversamento delle directory. In questo modo puoi escludere determinate directory indipendentemente dal nome dell'unità, estensioni di file in certe cartelle e tutti i file e directory che appartengono a un prodotto sensibile alla scansione antivirus.

Il file '''exclude.cfg''' si presenta così:

root@kitploit:~
# Excluded directories
#
# - add directories you want to exclude from the scan
# - double escape back slashes
# - values are case-insensitive
# - remember to use back slashes on Windows and slashes on Linux / Unix / OSX
# - each line contains a regex that matches somewhere in the full path (case insensitive)
#   e.g.:
#   Regex: \\System32\\
#   Matches C:\Windows\System32\cmd.exe
#
#   Regex: /var/log/[^/]+\.log
#   Matches: /var/log/test.log
#   Not Matches: /var/log/test.gz
#

# Useful examples
\\Ntfrs\\
\\Ntds\\
\\EDB[^\.]+\.log
Sysvol\\Staging\\Nntfrs_cmp
\\System Volume Information\\DFSR

Schermate

Scansione Loki

Screen

Corrispondenze Regin

Screen

Falsi positivi Regin

Screen

IOC basati su hash

Screen

IOC basati su nome file

Screen

File di log generato

Screen

Contatti

Scanner LOKI sulla homepage della nostra azienda https://www.nextron-systems.com/loki/

Twitter @cyb3rOps @thor_scanner

Se sei interessato a una soluzione aziendale per la scansione APT, dai un'occhiata al fratello maggiore di Loki, THOR.

Compilare lo Scanner

Scarica PyInstaller, passa alla directory del programma pyinstaller ed esegui:

root@kitploit:~
python ./pyinstaller.py -F C:\path\to\loki.py

Questo creerà un loki.exe nella sottocartella ./loki/dist.

Consiglio avanzato (opzionale)

Per includere msvcr100.dll e migliorare la compatibilità del sistema operativo di destinazione, modifica la riga nel file ./loki/loki.spec che contiene a.binaries, con la seguente:

root@kitploit:~
a.binaries + [('msvcr100.dll', 'C:\Windows\System32\msvcr100.dll', 'BINARY')],

Usare LOKI su Mac OS X (o successivi) o Linux

  • Inizializza un ambiente virtuale Python per loki. Per fare ciò devi assicurarti di avere il modulo Python venv, quindi esegui python -m venv path/to/venv dove path/to/venv è il percorso del tuo ambiente virtuale. Testa il tuo ambiente virtuale eseguendo path/to/venv/bin/python --version. Aggiorna i moduli dell'ambiente virtuale per pip, setuptools e wheel eseguendo path/to/venv/bin/python -m pip install --upgrade pip setuptools wheel.
  • Installa le librerie path/to/venv/bin/python -m pip install colorama yara-python psutil rfc5424-logging-handler netaddr
  • Esegui loki-upgrader.py path/to/venv/bin/python path/to/loki/loki-upgrader.py dove path/to/loki è il percorso del repository di Loki.
  • Esegui loki sudo path/to/venv/bin/python loki.py

Fonti YARA

Scarica i sorgenti YARA da qui

Antivirus - Falsi Positivi

Lo scanner compilato potrebbe essere rilevato dai motori antivirus. Ciò è dovuto al fatto che lo scanner è uno script Python compilato che implementa alcune funzionalità di scansione del file system e dei processi che sono anche utilizzate nel codice malware compilato.

Se non ti fidi dell'eseguibile compilato, per favore compilalo tu stesso.

Licenza

Loki - Semplice Scanner IOC Copyright (c) 2015 Florian Roth

Questo programma è software libero: puoi ridistribuirlo e/o modificarlo secondo i termini della GNU General Public License come pubblicata dalla Free Software Foundation, versione 3 della Licenza, o (a tua scelta) qualsiasi versione successiva.

Questo programma è distribuito nella speranza che sia utile, ma SENZA ALCUNA GARANZIA; senza nemmeno la garanzia implicita di COMMERCIABILITÀ o IDONEITÀ PER UN PARTICOLARE SCOPO. Vedere la GNU General Public License per maggiori dettagli.

Dovresti aver ricevuto una copia della GNU General Public License insieme a questo programma. In caso contrario, consultare http://www.gnu.org/licenses/

Scarica lo strumento