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
norimaci — Sandbox leggero per analisi malware su macOS che monitora l'attività di sistema tramite OpenBSM o Monitor.app, generando report dettagliati e cronologie degli eventi di file, processi e rete. | Kitploit
Strumenti/GitHubGitHub/mnrkbys/norimaci
Analisi Dinamica (Sandboxing)Informatica ForenseAnalisi Malware
GitHubmnrkbys/norimaci

norimaci

Sandbox leggero per analisi malware su macOS che monitora l'attività di sistema tramite OpenBSM o Monitor.app, generando report dettagliati e cronologie degli eventi di file, processi e rete.

Vedi Repository
7166 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

Norimaci

"Norimaci" è una sandbox leggera e semplice per l'analisi di malware su macOS. Questo strumento è stato ispirato da "Noriben". Norimaci utilizza le funzionalità di OpenBSM o Monitor.app per monitorare l'attività di sistema su macOS invece di Sysinternals Process Monitor (procmon).

Norimaci è composto da 3 script Python.

  • norimaci.py : Script principale
  • openbsmconv.py : Convertitore di log di audit OpenBSM
  • monitorappconv.py : Convertitore di dati di Monitor.app

OpenBSM è un framework per audit delle attività su macOS. Consultare il loro sito web per i dettagli.

Monitor.app è uno strumento gratuito creato da FireEye. Consultare il loro sito web per i dettagli.

Perché "Norimaci"?

Il mio ex collega (@cci_forensics) ha suggerito questo nome.

"Norimaci" è una parola composta che unisce "Noriben" e "Macintosh". Si pronuncia "Norimaki" e rappresenta "のり巻き" in giapponese. In inglese significa "sushi roll".

Noriben è un pranzo al sacco in stile giapponese composto da ingredienti minimi. Gli ingredienti del norimaki sono simili a quelli del noriben (alghe, riso e altri ingredienti a piacere).

Quindi, ho deciso di chiamare questo strumento "Norimaci".

Requisiti

  • OS X 10.6 o successivo (ho testato su macOS 10.13 - 10.15)
  • VMware Fusion, Parallels, VirtualBox, ecc.
  • Python 3.5 o successivo

Requisiti opzionali

  • Monitor.app

Nota: Monitor.app supporta solo macOS 10.12 - 10.14. Non è necessario installarlo se si desidera eseguire malware su macOS 10.15 o successivo. In tal caso, è necessario utilizzare OpenBSM al suo posto.

Se si utilizza Norimaci con Monitor.app, è necessario installare le seguenti librerie dai loro repository sorgente o tramite pip.

  • py-applescript
  • PyObjC
  • dnslib

Preparazione

Costruire macchine virtuali per eseguire malware

È necessario creare una VM macOS per eseguire i campioni di malware. Inoltre, è altamente consigliato costruire un'altra VM per connessioni Internet false. Molti malware tentano di connettersi ai loro server (ad es. server C2).

PolarProxy e INetSim sono strumenti molto utili per fornire servizi HTTP/HTTPS e DNS falsi. Fare riferimento al blog NETRESEC per costruire un Internet falso.

Modificare /etc/security/audit_control

Se si utilizza OpenBSM per monitorare le attività di sistema, è necessario modificare il file /etc/security/audit_control come mostrato di seguito. OpenBSM registra per impostazione predefinita solo i log di audit relativi a login e autenticazione. Ma Norimaci necessita di più tipi di log di audit (creazione file, eliminazione file, esecuzione processi, rete, ecc.).

Il computer deve essere riavviato dopo la modifica per applicare l'impostazione.

root@kitploit:~
#
# $P4: //depot/projects/trustedbsd/openbsm/etc/audit_control#8 $
#
dir:/var/audit
flags:lo,aa,fc,fd,pc,nt,ex      <- modificare qui in questo modo
minfree:5
naflags:lo,aa,fc,fd,pc,nt,ex    <- modificare qui in questo modo
policy:cnt,argv
filesz:2M
expire-after:10M
superuser-set-sflags-mask:has_authenticated,has_console_access
superuser-clear-sflags-mask:has_authenticated,has_console_access
member-set-sflags-mask:
member-clear-sflags-mask:has_authenticated

Utilizzo

Utilizzo base con OpenBSM (utilizzo più standard)

  1. Eseguire norimaci.py con sudo.
  2. Eseguire un campione di malware (è possibile eseguire qualsiasi tipo di malware. Ad esempio, DMG, PKG, binario Mach-O, ecc.).
  3. Attendere un po' (finché il malware non raggiunge il suo obiettivo).
  4. Premere "Ctrl + C" al momento opportuno nel terminale in cui è in esecuzione Norimaci.
  5. Vengono generati 2 tipi di report (Norimaci_dd_Mon_yy__hh_mm_ffffff.txt e Norimaci_dd_Mon_yy__hh_mm_ffffff_timeline.csv).
  6. Controllare i report con i propri strumenti preferiti (ad es. editor di testo, grep, less, ecc.).
root@kitploit:~
$ sudo python3 ./norimaci.py -m openbsm -o ./out/
Password:

--===[ Norimaci v0.1.0
--===[ Minoru Kobayashi [@unkn0wnbit]
[*] Launching OpenBSM agent...
[*] When runtime is complete, press CTRL+C to stop logging.
^C
[*] Termination of OpenBSM agent commencing... please wait
[*] Converting OpenBSM data ...
[*] Loading converted macOS activity data ...
[*] Saving report to: /Users/macforensics/tools/norimaci/out/Norimaci_14_Jan_20__15_55_093219.txt
[*] Saving timeline to: /Users/macforensics/tools/norimaci/out/Norimaci_14_Jan_20__15_55_093219_timeline.csv

Utilizzo base con Monitor.app

Nota: Monitor.app non può essere eseguito su macOS 10.15, ma funziona correttamente su macOS 10.14 o precedente.

  1. Eseguire norimaci.py con sudo.
  2. Inserire una password dopo che Norimaci avvia Monitor.app (Monitor.app necessita di una password per installare il suo kext).
  3. Eseguire un campione di malware (è possibile eseguire qualsiasi tipo di malware. Ad esempio, DMG, PKG, binario Mach-O, ecc.).
  4. Attendere un po' (finché il malware non raggiunge il suo obiettivo).
  5. Premere "Ctrl + C" al momento opportuno nel terminale in cui è in esecuzione Norimaci.
  6. Vengono generati 2 tipi di report (Norimaci_dd_Mon_yy__hh_mm_ffffff.txt e Norimaci_dd_Mon_yy__hh_mm_ffffff_timeline.csv).
  7. Controllare i report con i propri strumenti preferiti (ad es. editor di testo, grep, less, ecc.).

Aiuto degli script

  • norimaci.py
root@kitploit:~
$ python3 ./norimaci.py -h

--===[ Norimaci v0.1.0
--===[ Minoru Kobayashi [@unkn0wnbit]
usage: norimaci.py [-h] [-m MONITOR] [-j JSON] [-bl OPENBSM_LOG] [-p PROCLIST]
                   [-ml MONITORAPP_LOG] [-o OUTPUT] [--force] [--debug]

Light weight sandbox which works with OpenBSM or Fireeye's Monitor.app

optional arguments:
  -h, --help            show this help message and exit
  -m MONITOR, --monitor MONITOR
                        Specify a program to monitor macOS activity. You can
                        choose 'openbsm' or 'monitorapp'.
  -j JSON, --json JSON  Path to a JSON file which is converted by
                        'openbsmconv.py' or 'monitorappconv.py'.
  -bl OPENBSM_LOG, --openbsm-log OPENBSM_LOG
                        Path to an OpenBSM log file.
  -p PROCLIST, --proclist PROCLIST
                        Path to a process list file to process OpenBSM log
                        file. A file which has ".proclist" extnsion would be
                        used, if this option is not specified.
  -ml MONITORAPP_LOG, --monitorapp-log MONITORAPP_LOG
                        Path to a Monitor.app data file.
  -o OUTPUT, --output OUTPUT
                        Path to an output directory.
  --force               Enable to overwrite output files.
  --debug               Enable debug mode.
  • openbsmconv.py
root@kitploit:~
$ python3 ./openbsmconv.py -h
usage: openbsmconv.py [-h] [-f FILE] [-p PROCLIST] [-o OUT] [-c] [-rp]
                      [--with-failure] [--with-failure-socket] [--force]
                      [--debug]

Converts OpenBSM log file to JSON format.

optional arguments:
  -h, --help            show this help message and exit
  -f FILE, --file FILE  Path to a bsm log file
  -p PROCLIST, --proclist PROCLIST
                        Path to a process list file
  -o OUT, --out OUT     Path to an output file
  -c, --console         Output JSON data to stdout.
  -rp, --use-running-proclist
                        Use current running process list instead of a existing
                        process list file. And, the process list is saved to a
                        file which places in the same directory of '--file' or
                        to a file which specified '--proclist'.
  --with-failure        Output records which has a failure status too.
  --with-failure-socket
                        Output records which has a failure status too (related
                        socket() syscall only).
  --force               Enable to overwrite an existing output file.
  --debug               Enable debug mode.
  • monitorappconv.py
root@kitploit:~
$ python3 ./monitorappconv.py -h
usage: monitorappconv.py [-h] [-f FILE] [-o OUT] [-c] [--force] [--debug]

Parses data of Fireeye Monitor.app and converts it to JSON format. Please note
that strings in JSON data are saved as UTF-8.

optional arguments:
  -h, --help            show this help message and exit
  -f FILE, --file FILE  Path to a saved data of Monitor.app.
  -o OUT, --out OUT     Path to an output file.
  -c, --console         Output JSON data to stdout.
  --force               Enable to overwrite an output file.
  --debug               Enable debug mode.

Demo

Analisi di AppleJeus.A su macOS 10.15 Catalina con Norimaci. Questo video dimostrativo è stato realizzato per la Japan Security Analyst Conference 2020 (JSAC2020)

Norimaci demo

Installazione

root@kitploit:~
git clone https://github.com/mnrkbys/norimaci.git

Lavori futuri

  • Scansione YARA
  • Scansione VirusTotal

Autore

Minoru Kobayashi

Licenza

Apache License, Version 2.0

Scarica lo strumento