
Strumento di post-sfruttamento per server di gestione della configurazione.
Copyright 2020 National Technology & Engineering Solutions of Sandia, LLC (NTESS). Secondo i termini del contratto DE-NA0003525 con NTESS, il governo degli Stati Uniti conserva determinati diritti su questo software
MOSE è uno strumento di post-exploitation che aiuta i professionisti della sicurezza a sfruttare i sistemi di configuration management (CM) dopo un compromesso. Strumenti CM come Puppet, Chef, Salt e Ansible possono eseguire comandi su grandi flotte, ma i loro DSL e flussi di lavoro sono spesso lenti da apprendere sotto pressione. MOSE ti consente di descrivere cosa vuoi eseguire, quindi costruisce per te i payload specifici per il CM.


Installa quanto segue:
Golang - testato con 1.12.7 fino a 1.15.2
Docker - testato con 18.09.2 fino a 19.03.12
Ottieni il codice senza dover clonare il repository:
go get -u -v github.com/master-of-servers/mose
Installa tutte le dipendenze specifiche di go e compila il binario (assicurati di eseguire cd nel repository prima di eseguire questo comando):
make build
Usage:
github.com/master-of-servers/mose [command]
Available Commands:
ansible Create MOSE payload for ansible
chef Create MOSE payload for chef
help Help about any command
puppet Create MOSE payload for puppet
salt Create MOSE payload for salt
Flags:
--basedir string Location of payloads output by mose
(default "/Users/l/programs/go/src/github.com/master-of-servers/mose")
-c, --cmd string Command to run on the targets
--config string config file (default is $PWD/.settings.yaml)
--debug Display debug output
--exfilport int Port used to exfil data from chef server
(default 9090, 443 with SSL) (default 9090)
-f, --filepath string Output binary locally at <filepath>
-u, --fileupload string File upload option
-h, --help help for github.com/master-of-servers/mose
-l, --localip string Local IP Address
--nocolor Disable colors for mose
-a, --osarch string Architecture that the target CM tool is running on
-o, --ostarget string Operating system that the target CM server is on (default "linux")
-m, --payloadname string Name for backdoor payload (default "my_cmd")
--payloads string Location of payloads output by mose
(default "/Users/l/programs/go/src/github.com/master-of-servers/mose/payloads")
--remoteuploadpath string Remote file path to upload a script to
(used in conjunction with -fu)
(default "/root/.definitelynotevil")
-r, --rhost string Set the remote host for /etc/hosts in the chef workstation container (format is hostname:ip)
--ssl Serve payload over TLS
--tts int Number of seconds to serve the payload (default 60)
--websrvport int Port used to serve payloads
(default 8090, 443 with SSL) (default 8090)
Use "github.com/master-of-servers/mose [command] --help" for more information about a command.
Genera e utilizza un certificato TLS firmato da un'Autorità di Certificazione attendibile.
Un certificato auto-firmato e una chiave ti vengono forniti, anche se non dovresti usarli. Questa chiave e certificato sono ampiamente distribuiti, quindi non puoi aspettarti privacy se scegli di usarli. Si trovano nella directory data.
Puoi trovare alcuni esempi su come eseguire MOSE in EXAMPLES.md.
I laboratori di test che possono essere eseguiti con MOSE si trovano in questi indirizzi:
MOSE è destinato a test di sicurezza e ricerca autorizzati. Assicurati di avere il permesso esplicito per operare su qualsiasi ambiente.
Le seguenti risorse sono state utilizzate per motivare la creazione di questo progetto: