posts - 644, comments - 2003, trackbacks - 137

My Links

News

Raffaele Rialdi website

Su questo sito si trovano i miei articoli, esempi, snippet, tools, etc.

Archives

Post Categories

Image Galleries

Blogs

Links

Integry Level nei processi e negli oggetti in Vista

La sessione di Chris Corio inizia spiegando come funziona l'intergrity level in Windows Vista. Gli Integrity level sono quelli usati da IE per lavorare in protected mode che consente di mitigare eventuali attacchi di injection o similari.

In pratica i processo con privilegi più bassi non può accedere a processi di livello più alto, mentre può accedere in sola lettura ad oggetti (file, registry, heandle in genere) che siano di livello più elevato.

L'inofrmazione degli integrity level è dentro le SACL (normalmente usate per l'auditing) per non rompere le compatibilità con le DACL (le classiche ACL delle permission).

La nuova ICacls (command prompt) e Accesscheck (di systinternals) sono le due utility per mostrare i livelli dei processi.

Poi si passa a come lanciare una applicazione a livllo Low (il default è medium). L'API da chiamare è CreateProcessAsUser con il sid dell'integrity process level desiderato. Ogni livello ha infatti un apposito SID che permette di sfruttare questa nuova feature in Vista.

DSCN0804   DSCN0805

Per permettere l'elevazione di privilegi, IE usa un oggetto COM che chiama due (nuovi) processi che fungono da broker per eseguire operazioni più privilegiate. Chissà quanti test sono stati fatti su questo meccanismo!

SI passa poi alla descrizione delle limitazioni che evitano a processi nello stesso processo di poter interagire tramite, ad esempio, le SendMessage, che diversamente permetterebbero l'elevazione di privilegi.

Dopo un'ampia spiegazione su come queste tecniche siano implementate in Internet Explorer per Vista, Chris parla delle problematiche del sandboxing rimandando al blog di David Le Blanc (coautore di Writing Secure Code).

Print | posted on giovedì 8 novembre 2007 19:00 |

Feedback

Gravatar

# re: Integry Level nei processi e negli oggetti in Vista

Ciao realtebo,
credo che capirai che scrivere mentre lo speaker parla, non permette di aggiungere tanti dettagli.
Per capire SACL e DACL devi guardare bene l'architettura di Windows, per esempio nel libro Windows Internals. Nel Security Tour di due e tre anni ho avuto modo di entrare nel dettaglio su questo argomento.
In pratica ogni oggetto Windows (file, thread, registry, mutex, etc. etc.) ha una serie di descrittori che specificano la lista delle cose a cui l'utente ha accesso (DACL) e la lista delle cose che il sistema operativo deve tracciare quando l'utente accede all'oggetto (SACL) ==> Auditing.
http://www.pluralsight.com/wiki/default.aspx/Keith.GuideBook/WhatIsAnAccessControlList.html
10/11/2007 20:49 | Raffaele Rialdi
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET