Come utilizzare le funzionalità di virtualizzazione di Windows 7 per impedire la fiducia transitiva delle credenziali dell'amministratore?

4

Sto esplorando usando VMs per separa le mie azioni amministrative dalle azioni utente standard in Windows 7. L'obiettivo è limitare il rischio e l'esposizione quando utilizzo" RunAs "per aprire un'applicazione o una condivisione file e separarla da qualsiasi altra applicazione o file che potrebbe essere sulla mia macchina.

What is the technical process to get Windows 7 into this configuration?

Mi sembra che se riesco a caricare i miei strumenti amministrativi su una VM, sul mio ufficio e sulle applicazioni di sviluppo in una seconda VM, posso eseguire l'avvio in base alle necessità. Se ho bisogno dell'accesso temporaneo a un ambiente dall'altra, posso semplicemente avviare la VM e il multitasking corrispondenti tutti sapendo che i miei ambienti sono separati.

Voglio impedire che il "trust transitivo" si formi quando I RunAs acceda ad una condivisione di file, ad esempio, e quindi un sito Web dannoso infetta tale unità.

    
posta random65537 29.09.2011 - 22:59
fonte

1 risposta

5

Inoltre, non sono del tutto sicuro di aver capito - quindi lasciatemi offrire alcune soluzioni possibili:

  1. Utilizza tre macchine virtuali separate come descritto qui da una sicurezza piuttosto famosa ricercatore. In sostanza, ogni macchina virtuale è un ambiente completamente separato, idealmente parlando come se avessi tre computer separati. Per fare ciò, avrai bisogno di una soluzione di virtualizzazione di qualche forma (virtualbox, vmware ecc.)
  2. Utilizza account diversi e non utilizzare RunAs. Rischiate di perdere i dati in questo modo, ma è molto più semplice della rotazione della macchina virtuale richiesta.
  3. Utilizza RunAs e accetta il rischio.
  4. Non utilizzare RunAs.

Dovrei parlare brevemente di quelle funzioni di virtualizzazione. Queste funzionalità sono fornite per consentire alla modalità XP di funzionare tramite VirtualPC di Microsoft.

Chiaramente, non usare RunAs non è accettabile e usare tre VM potrebbe essere un po 'doloroso, dato che si disconnette costantemente come in 2. Potrebbe esserci un modo per far funzionare questo per tre:

In termini di account di amministratore correnti, ciò che effettivamente accade è che la tua capacità di agire come amministratore è ridotta dai livelli di privilegio. Tre componenti entrano in gioco: UIPI , Controllo di integrità obbligatorio e desktop separati tramite CreateDesktop . Il modo in cui interagiscono è complicato:

  1. MIC dice che ogni processo è Alta, Media o Bassa Sicurezza. Penso che includa anche un livello di DRM - e so che include anche un livello di sistema. In entrambi i casi, l'idea è che un oggetto Medio non possa interferire con un oggetto Alto. Vedi qui e here . Allo stesso modo un oggetto High non può leggere un oggetto medio - questo non è un write up / nessun read down in azione.
  2. UIPI dice che solo alcuni messaggi possono essere inviati da processi Low to Medium e Medium to High. L'intero modello della GUI risolve l'invio di messaggi; se l'hardware genera un evento, questo è un messaggio nella routine di elaborazione dei messaggi (di solito chiamato WndProc ).
  3. CreateDesktop crea un desktop completamente nuovo vuoto. Il rootkitrevealer di Sysinternal lo fa, così come KeePass , come fa consent.exe , il tuo processo di dialogo UAC.

Ciò che rende consent.exe sicuro è la combinazione - non solo il processo viene eseguito come NT AUTHORITY\SYSTEM (che normalmente non sarebbe una barriera per un utente amministratore) ma viene eseguito anche su un desktop separato (richiede uno screenshot di il desktop attuale e lo appallisco per ottenere quell'effetto credo) e funziona come un livello di privilegio HIGH, il che significa che non solo i media / altri processi non possono ottenerlo se eseguito come amministratore, ma il desktop è unico e non c'è nient'altro su di esso per inviare messaggi ad esso.

Quindi, puoi usare i controlli di integrità obbligatori per isolare alcuni dei tuoi processi. Uno svantaggio è che non puoi utilizzare facilmente il meccanismo CreateDesktop te stesso: è un'istruzione di programmazione. È comunque possibile combinare MIC con account separati su un singolo desktop. Ti potrebbe piacere leggere alcuni pensieri su questo della famosa sicurezza menzionata in precedenza ricercatore. Con un po 'di sperimentazione potresti essere in grado di adattarlo alle tue esigenze.

    
risposta data 24.11.2011 - 18:42
fonte