GUI Python per eseguire capemon in una VM standalone. Fornisce un sottoinsieme dell'elaborazione e dei risultati di CAPE (Configuration And Payload Extraction).

L'interfaccia
- Schede in alto: Start, poi una per ogni vista dei risultati (Info, Behavior, Signatures, Payloads,
Yara, Configs, Strings, Debugger, JS Log, Network).
- La scheda Start raggruppa la selezione del target, le opzioni del pacchetto, i flag di monitor e logging in
card; le azioni (Launch, Kill, report, Zip Results) restano fissate in fondo alla
finestra, così non scorrono via.
- Temi scuro e chiaro, attivabili dalla barra di stato in basso a destra o dalle Impostazioni.
La scelta viene scritta in
cfg.ini e ripristinata all'esecuzione successiva.
- Elabora Payloads e Configs prima di Signatures. Una signature vede solo ciò che è nei
risultati nel momento in cui viene eseguita, e diverse leggono i dati di payload, config e yara - eseguire
prima quel passaggio porterebbe silenziosamente a risultati incompleti anziché a un errore. Il pulsante Signatures resta disabilitato
finché quelle schede non sono state eseguite e il suo tooltip indica quali mancano.

Lavorare sull'interfaccia
-
tools/uidev/ costruisce i pannelli reali off screen e li salva in PNG, così una modifica al layout
può essere verificata e catturata in screenshot senza avviare un'analisi. Vedi
tools/uidev/README.md.
-
Gli stessi script vengono eseguiti in CI a ogni pull request, su un runner Windows, e caricano i
render come artifact.
-
Crea una VM Windows 10 adatta all'esecuzione di malware.
-
Installa Python nella VM, testato su versioni Python a 64 bit 3.11, 3.12 e 3.12. Aggiungi Python al path.
-
Scarica e installa entrambi i Microsoft Visual C++ Redistributable:
-
Installa CAPEsolo.
-
Crea uno snapshot della VM.
Avvio rapido
- Apri una finestra di comando come amministratore.
- Digita capesolo per eseguire.
In alternativa, crea un collegamento a CAPEsolo.exe,
che si troverà nella sottodirectory Scripts nella stessa posizione del tuo file python.exe.
- In Avanzate, seleziona 'Esegui come amministratore'
- Un file icona è disponibile nella cartella di installazione di CAPEsolo sotto site-packages.
I risultati dell'analisi si trovano in C:\Users\Public\CAPEsolo\analysis.
- Configurabile in C:\Users\Public\CAPEsolo\cfg.ini
- Le impostazioni presenti lì sovrascrivono i valori predefiniti inclusi nel pacchetto in python-path\site-packages\CAPEsolo\cfg.ini,
e sopravvivono a
pip install --upgrade CAPEsolo, che sovrascrive la copia inclusa nel pacchetto.
- Includi solo le chiavi che vuoi modificare; le altre ricadono sui valori predefiniti del pacchetto.
Signature della community
- CAPEsolo include solo le proprie signature. Le signature della community CAPEv2 / CAPESandbox vanno in
C:\Users\Public\CAPEsolo\signatures (accanto a cfg.ini), senza modifiche. Update (sotto) può riempire
la sua sottocartella
community da https://github.com/CAPESandbox/community, oppure puoi copiare i file lì
manualmente.
- Le sottocartelle vengono scansionate;
deprecated e linux vengono saltate. I file aggiunti o modificati vengono rilevati
al passaggio successivo delle signature, senza riavvio.
- Una signature presente lì sostituisce una inclusa con lo stesso nome. Una tua, al di fuori di
community, batte anche una con lo stesso nome al suo interno.
- Una signature che richiede un modulo CAPEv2 che CAPEsolo non ha viene saltata, e il log dell'analisi
indica il modulo mancante. Una che legge una sezione dei risultati che CAPEsolo non produce (Suricata,
per esempio) viene caricata ma non trova mai corrispondenze.
- I file di dati opzionali che quelle signature cercano sotto la root di CAPEv2 (
extra/msft-public-ips.csv,
data/dga.bloom) vengono letti da C:\Users\Public\CAPEsolo.
Regole YARA
- CAPEsolo include le proprie regole CAPE. Le tue regole vanno in C:\Users\Public\CAPEsolo\yara, e
le regole della community vanno nella sua sottocartella
community. Entrambe vengono scansionate insieme alle regole CAPE.
Quando due file hanno lo stesso nome: vince Desktop\custom, poi la tua cartella, poi community, poi
le regole precompilate.
pip install --upgrade CAPEsolo ripristina le regole precompilate.
Aggiornamento (scheda Start)
- Chiede cosa scaricare:
- Regole YARA - CAPEsolo (selezionata per impostazione predefinita) e CAPEv2 ricostruiscono le regole precompilate (le
regole CAPE e le regole del monitor che capemon usa nel guest) da quelle selezionate. Dove
entrambe hanno un file, viene usata quella di CAPEsolo.
- Regole YARA - Community sostituisce
yara\community con data/yara/CAPE di CAPESandbox/community.
- Firme - Community sostituisce
signatures\community con modules/signatures/windows e
all di CAPESandbox/community.
- I tuoi file, e la regola salvata dalla scheda Debugger, non vengono mai toccati. Tutto viene scaricato
prima che qualsiasi cosa venga sostituita, quindi un aggiornamento fallito conserva ciò che c'era.
- Le stesse scelte sono disponibili come
capesolo --update_yara capesolo,capev2,community (nessun valore
significa capesolo), capesolo --update_signatures, e lo strumento MCP capesolo_update_yara.
Report (scheda Start)
- Report genera il report JSON e/o HTML (entrambi selezionati per impostazione predefinita) da un'unica passata sull'
analisi. Ciascuno viene scritto sul Desktop e nella directory dell'analisi.
Ripristina la VM dopo ogni analisi.