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
Raccine — Un semplice vaccino contro il ransomware | Kitploit
Strumenti/GitHubGitHub/neo23x0/raccine
Strumenti DifensiviThreat IntelligenceRilevamento IntrusioniRisposta agli IncidentiRilevamento di AnomalieAnalisi dei Log
GitHubneo23x0/raccine

Raccine

Un semplice vaccino contro il ransomware

Vedi Repository
98212642 anni 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

Inactively Maintained

Raccine

Raccine

Una semplice protezione contro i ransomware

Perché

Vediamo spesso ransomware eliminare tutte le copie shadow usando vssadmin. E se potessimo semplicemente intercettare quella richiesta e terminare il processo che la invoca? Proviamo a creare un semplice vaccino.

Ransomware Process Tree

Come funziona

Registriamo un debugger per vssadmin.exe (e wmic.exe), che è il nostro raccine.exe compilato. Raccine è un binario che prima raccoglie tutti i PID dei processi padre e poi tenta di terminare tutti i processi padre.

Vantaggi:

  • Il metodo è piuttosto generico
  • Non dobbiamo sostituire un file di sistema (vssadmin.exe o ), il che potrebbe causare problemi di integrità e rompere la nostra raccinazione a ogni patch day
Scarica lo strumento
wmic.exe
  • Scansione flessibile dei parametri della riga di comando tramite regole YARA per attività dannose
  • Le modifiche sono facili da annullare
  • Funziona su Windows 7 / Windows 2008 R2 o versioni successive
  • Nessun eseguibile in esecuzione o servizio aggiuntivo richiesto (senza agente)
  • Svantaggi / Punti ciechi:

    • L'uso legittimo di vssadmin.exe delete shadows (o qualsiasi altra combinazione in lista nera) non è più possibile
    • Termina persino i processi che hanno tentato di invocare vssadmin.exe delete shadows, che potrebbero essere un processo di backup
    • Questo non intercetta i metodi in cui il processo dannoso non è uno dei processi nell'albero che ha invocato vssadmin.exe (ad es. tramite schtasks)

    Il processo

    1. L'invocazione di vssadmin.exe (e wmic.exe) viene intercettata e passata a raccine.exe come debugger (vssadmin.exe delete shadows diventa raccine.exe vssadmin.exe delete shadows)
    2. Elaboriamo quindi gli argomenti della riga di comando e cerchiamo combinazioni dannose usando le regole YARA.
    3. Se non viene trovata alcuna combinazione dannosa, creiamo un nuovo processo con i parametri originali della riga di comando.
    4. Se viene trovata una combinazione dannosa, raccogliamo tutti i PID dei processi padre e iniziamo a terminarli (dovrebbero essere i processi malware come mostrato negli screenshot sopra). Raccine mostra una finestra della riga di comando con i PID terminati per 5 secondi, registra l'evento nel registro eventi di Windows e poi termina se stesso.

    Combinazioni dannose:

    • delete e shadows (vssadmin, diskshadow)
    • resize e shadowstorage (vssadmin)
    • delete e shadowstorage (vssadmin)
    • delete e shadowcopy (wmic)
    • delete e catalog e -quiet (wbadmin)
    • win32_shadowcopy o un elemento da un elenco di comandi codificati (powershell)
    • recoveryenabled (bcedit)
    • ignoreallfailures (bcedit)

    ^ elenco obsoleto: controlla la regola YARA corrispondente

    Elenco di comandi codificati di PowerShell: JAB, SQBFAF, SQBuAH, SUVYI, cwBhA, aWV4I, aQBlAHgA e molti altri

    Esempio

    Emotet senza Raccine - Link

    Emotet without Raccine

    Emotet con Raccine - Link (ignora l'attività di processo correlata all'installazione di Raccine)

    Emotet with Raccine

    L'infezione viene stroncata sul nascere.

    Attenzione !!!

    USALO A TUO RISCHIO!

    Non potrai più eseguire comandi che utilizzano i comandi in lista nera su una macchina raccinata finché non applichi la patch di disinstallazione raccine-reg-patch-uninstall.reg. Questo potrebbe rompere varie soluzioni di backup che eseguono quel comando specifico durante il loro lavoro. Non bloccherà solo quella richiesta, ma terminerà tutti i processi in quell'albero, inclusa la soluzione di backup e il processo che la invoca.

    Se disponi di un solido monitoraggio della sicurezza che registra tutte le esecuzioni dei processi, puoi controllare i tuoi log per vedere se vssadmin.exe delete shadows, vssadmin.exe resize shadowstorage ... o le altre righe di comando bloccate vengono usate frequentemente o sporadicamente per scopi legittimi; in tal caso dovresti evitare di usare Raccine.

    Cronologia versioni

    • 0.1.0 - Versione iniziale che intercettava e bloccava tutte le esecuzioni di vssadmin.exe
    • 0.2.0 - Versione che blocca solo le esecuzioni di vssadmin.exe che contengono delete e shadows nella riga di comando e altrimenti passa tutti i parametri a un nuovo processo che invoca vssadmin con i suoi parametri originali
    • 0.2.1 - Rimosso explorer.exe dalla whitelist
    • 0.3.0 - Supporta il metodo wmic che chiama delete shadowcopy, nessun output per gli avvii di processi in whitelist (evita problemi con l'elaborazione dell'output di wmic)
    • 0.4.0 - Supporta la registrazione nel registro eventi di Windows per ogni tentativo bloccato, cerca ulteriori combinazioni di parametri dannose
    • 0.4.1 - Binari collegati staticamente
    • 0.4.2 - Correzioni di bug fornite da John Lambert
    • 0.5.0 - Rimossa la registrazione nel registro eventi (le informazioni di base non erano necessarie; causava una maggiore complessità; può essere ottenuta anche tramite la registrazione della creazione dei processi), supporto per il filtraggio di wbadmin
    • 0.5.1 - Miglioramenti di @JohnLaTwC
    • 0.5.2 - Controllo aggiuntivo per delete shadowstorage di @JohnLaTwC, revisione del codice di @_hillu, icona dell'applicazione
    • 0.5.3 - Installatore batch
    • 0.6.0 - Controlli aggiuntivi per bcdedit.exe /set {default} bootstatuspolicy ignoreallfailures e bcdedit.exe /set {default} recoveryenabled no
    • 0.7.0 - Controlli aggiuntivi per powershell.exe e win32_shadowcopy o un elenco di comandi codificati
    • 0.7.1 - Miglioramenti di @JohnLaTwC
    • 0.7.2 - Utilizzo di percorsi assoluti nelle patch del registro
    • 0.8.0 - Crea un file di log con tutte le richieste intercettate e le azioni eseguite C:\ProgramData\Raccine_log.txt
    • 0.9.0 - Registra nel registro eventi di Windows grazie a @JohnLaTwC
    • 0.10.0 - Solo modalità simulazione
    • 0.10.1 - Correzione per la modalità simulazione
    • 0.10.2 - Include il comando diskshadow.exe delete shadows
    • 0.10.3-5 - Correzioni minori e aggiunte
    • 1.0 BETA - Elementi GUI e scansione tramite regole YARA dei parametri della riga di comando
    • 1.1 BETA - Corrispondenza delle regole YARA con variabili esterne, funzioni di risoluzione dei problemi
    • 1.2 BETA - Aggiornatore firme
    • 1.3 BETA - Scansione YARA in memoria del processo padre che invoca
    • 1.4 BETA - Supporto x86 completo, spostate le stringhe statiche nelle regole YARA per evitare rilevamenti AV, log delle esecuzioni accettate, installazione di .NET Framework nell'installer
    • 1.4.2 BETA - Correzione del codice di uscita (trasmissione del codice di uscita restituito dal programma intercettato), intercetta taskkill.exe

    Installazione

    Requisiti

    • Runtime VC++ per la scansione YARA (l'installer contiene il pacchetto di setup da https://aka.ms/vs/16/release/VC_redist.x64.exe)
    • .NET Framework 4.5
    • Accesso a Internet per gli aggiornamenti delle regole YARA
    • Windows 7 / Windows 2008 R2 o versioni successive

    Sia il pacchetto Visual C++ Redistributable che .NET Framework verranno installati automaticamente eseguendo install-raccine.bat.

    Installazione automatica

    1. Scarica Raccine.zip dalla sezione Release
    2. Estrailo
    3. Esegui raccine-installer.bat come amministratore

    Windows Batch Installer

    L'installatore batch include un'opzione di "disinstallazione".

    Disinstallazione manuale

    Da amministratore, esegui:

    1. Esegui raccine-reg-patch-uninstall.reg
    2. Rimuovi le cartelle %ProgramFiles%\Raccine e %ProgramData%\Raccine
    3. Esegui reg delete HKCU\Software\Raccine /F
    4. Esegui taskkill /F /IM RaccineSettings.exe
    5. Esegui reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /V "Raccine Tray" /F
    6. Esegui schtasks /DELETE /TN "Raccine Rules Updater" /F

    Aggiornamenti

    Aggiornamento del programma

    Consigliamo di disinstallare e reinstallare per l'aggiornamento. Una disinstallazione rimuove tutte le chiavi di registro con le configurazioni.

    Aggiornamento firme

    Raccine ha un aggiornatore firme integrato dalla versione 1.2. Questo programma, chiamato RaccineRulesSync.exe, è configurato per essere eseguito una volta al giorno tramite un'attività pianificata. Puoi eseguire un aggiornamento firme manualmente usando l'opzione nel menu dell'icona nell'area di notifica.

    Corrispondenza YARA

    Dalla versione 1.0, Raccine usa inoltre regole YARA per determinare se la riga di comando di un processo o il processo padre è dannoso o meno. Raccine usa 2 serie di regole per due scopi diversi.

    1. ./yara - regole che vengono applicate alla riga di comando con tutti i parametri, ad es. WMIC.exe delete justatest
    2. ./yara/in-memory - regole che vengono applicate alla memoria del processo padre del nostro processo intercettato, ad es. ransomware.exe che esegue il nostro processo intercettato vssadmin.exe

    Variabili esterne YARA

    Dalla versione 1.1 passiamo un elenco di variabili esterne nel processo di corrispondenza YARA per consentire regole YARA molto più complesse e intelligenti che tengano conto degli attributi del processo e del suo padre.

    VariabileDescrizioneValore di esempio
    FromRaccinetrue
    NameNome immagineWMIC.exe
    ExecutablePathPercorso completo del binarioC:\Windows\System32\wbem\WMIC.exe
    CommandLineRiga di comando completa con parametriWMIC.exe delete justatest
    PriorityPriorità del processo32
    ParentNameNome immagine del padrecmd.exe
    ParentExecutablePathPercorso completo dell'eseguibile padreC:\Windows\System32\cmd.exe
    ParentCommandLineRiga di comando completa del padre con parametriC:\WINDOWS\system32\cmd.exe
    ParentPriorityPriorità del processo padre32

    Il processo di corrispondenza si presenta così sulla riga di comando:

    root@kitploit:~
    "C:\Program Files\Raccine\yara64.exe" -d FromRaccine="true" -d Name="WMIC.exe" -d ExecutablePath="C:\Windows\System32\wbem\WMIC.exe" -d CommandLine="WMIC.exe delete justatest" -d  Priority=32 -d FromRaccine="true" -d ParentName="cmd.exe" -d ParentExecutablePath="C:\Windows\System32\cmd.exe" -d ParentCommandLine="'C:\WINDOWS\system32\cmd.exe' " -d ParentPriority=32 C:\ProgramData\Raccine\yarayara\mal_emotet.yar C:\ProgramData\Raccine\yara\Rac1C6A.tmp
    

    Il seguente elenco mostra un esempio di regola YARA che utilizza le variabili esterne nella sua condizione.

    root@kitploit:~
    rule env_vars_test {
        condition:
            Name contains "WMIC.exe"
            and CommandLine contains "delete justatest"
            and ParentPriority >= 8
            and (
                ParentCommandLine contains "cmd"
                or ParentCommandLine contains "powershell"
            )
    }
    

    Distribuzione della configurazione tramite GPO

    La cartella GPO include Raccine.ADMX e Raccine.ADML. Nella distribuzione, il file Raccine.ADMX va in C:\Windows\PolicyDefinitions. Il file Raccine.ADML corrispondente va in C:\Windows\PolicyDefinitions\en-US.

    Per usarla: apri GPEDIT.MSC > Configurazione computer > Modelli amministrativi > Sistema > Raccine

    Dopo aver configurato le modifiche, potrebbe essere necessario forzare l'aggiornamento del GPO eseguendo gpupdate.exe.

    File di log

    Un file di log con tutte le intercettazioni e le azioni eseguite viene scritto in C:\ProgramData\Raccine\Raccine_log.txt

    Log File

    Registro eventi di Windows

    Una voce viene generata per ogni evento di blocco nel registro eventi Application.

    Eventlog

    Gli ID che Raccine genera

    • EventId 1 - Attività di installazione
    • EventId 2 - Attività dannosa rilevata
    • EventId 3 - Attività benigna rilevata

    Modalità simulazione

    Dalla versione 0.10.0, Raccine può essere installato in "modalità simulazione", che attiva tutti i trigger, registra tutte le azioni ma non termina nulla. Questa modalità dovrebbe essere usata in ambienti in cui soluzioni di backup o altri software legittimi vengono eseguiti per un periodo di tempo ragionevole per verificare se Raccine interferirebbe con altro software. L'idea è installare Raccine in modalità simulazione, lasciarlo registrare per una settimana o un mese e poi controllare i log per vedere se avrebbe bloccato software legittimo usato nell'organizzazione.

    Kill Run

    Schermata

    Esegui raccine.exe e osserva l'albero dei processi padre morire (screenshot della v0.1)

    Kill Run

    GUI

    Disponibile e richiesta dalla versione 1.

    GUI

    GUI

    GUI

    Pivot

    Nel caso in cui il ransomware che stai attualmente gestendo usi un determinato nome di processo, ad es. taskdl.exe, puoi semplicemente modificare la patch .reg per intercettare le chiamate a quel nome e lasciare che Raccine termini tutti i processi padre dell'albero del processo che invoca.

    Aiuto richiesto

    Mi piacerebbe estendere Raccine ma mi mancano le competenze di programmazione in C++, soprattutto sulla piattaforma Windows.

    Aiuto - Il mio sistema è rotto

    Se succede qualcosa alla tua installazione, ad es. messaggi di errore improvvisi, servizi danneggiati o programmi che non si avviano più, esegui il file raccine-reg-patch-uninstall.reg nella sottocartella reg-patches. Questo dovrebbe riportare tutto alla normalità.

    Dopodiché dovresti anche essere in grado di eseguire una disinstallazione completa usando install-raccine.bat.

    Altre informazioni

    La pronuncia corretta è "Rax-Een".

    Crediti

    • Florian Roth @cyb3rops
    • John Lambert @JohnLaTwC
    • Eran Yom-Tov @eran_yom_tov
    • Ollie Whitehouse @ollieatnccgroup
    • Branislav Đalić @LordOfThePies4
    • Hilko Bengen @hillu