Privilege escalation e Ripollet: differenze tra le pagine

(Differenze fra le pagine)
Contenuto cancellato Contenuto aggiunto
 
RolloBot (discussione | contributi)
m Bot: Correzione di uno o più errori comuni
 
Riga 1:
{{S|centri abitati della Catalogna}}
In informatica, si intende con '''''privilege escalation''''' (inteso come ''sorpasso delle autorizzazioni'' ) lo sfruttamento di una [[bug|falla]], di un errore di progetto o di configurazione di un [[software]] applicativo o di un [[sistema operativo]] al fine di acquisire il controllo di risorse di macchina normalmente precluse a un utente o a un'applicazione.
{{Divisione amministrativa
Un'applicazione con maggiori autorizzazioni di quelle previste dallo sviluppo originale o fissate dall'amministratore di sistema può, ovviamente, mettere in opera azioni impreviste e non autorizzate.
|Nome = Ripollet
|Nome ufficiale =
|Panorama = Ripollet99.JPG
|Didascalia =
|Stemma = Coat of Arms of Ripollet.svg
|Bandiera = Bandera de Ripollet.svg
|Stato = ESP
|Grado amministrativo = 3
|Divisione amm grado 1 = Catalogna
|Divisione amm grado 2 = Barcellona
|Amministratore locale =
|Partito =
|Data elezione =
|Data istituzione =
|Superficie =
|Note superficie =
|Abitanti = 37151
|Note abitanti =
|Aggiornamento abitanti = 2010
|Sottodivisioni =
|Divisioni confinanti = [[Barberà del Vallès]], [[Cerdanyola del Vallès]], [[Montcada i Reixac]]
|Lingue =
|Prefisso =
|Codice statistico =
|Codice catastale =
|Nome abitanti = ripolletenc/ca
|Patrono =
|Festivo =
|Raggruppamento = [[Vallès Occidental]]
|Mappa =
|Didascalia mappa =
}}
'''Ripollet''' è un [[Comuni della Spagna|comune spagnolo]] di 37.151 abitanti situato nella [[Comunità autonome della Spagna|comunità autonoma]] della [[Catalogna]].
 
== CenniGeografia generalifisica ==
Il municipio di Ripollet è situato dentro della Depressione Prelitorale. Confina a nord con il municipio di [[Barberà del Vallès]], ad est e a sud con [[Montcada i Reixac]] e ad ovest con [[Cerdanyola del Vallès]].
La "scalata" verso un livello più alto di autorizzazioni è possibile in caso di progetto errato o di funzionalità di sistema mal gestite: ciò apre una falla nella sicurezza tramite la quale un utente o un software male intenzionato può mettere in opera azioni dei seguenti tipi:
 
La pianura di Ripollet, d'origine quaternaria come tutta la depressione, ha un'elevazione media di circa 70 metri e la parte più elevata è una montagnola di 131 m al limite con [[Barberà del Vallès]].
# '''Scalata verticale''': un utente accede a funzioni, autorizzazioni e privilegi più alti di quelli assegnatigli: per fare un esempio finanziario, un'utenza che accede a livelli di amministrazione.
Attraversa il suo territorio da nord-ovest a sud-ovest il [[Ripoll (fiume)|fiume Ripoll]]. Il [[fiume Sec (Vallès Occidental)|fiume Sec]] delimita il limite meridionale con Cerdanyola e confluisce dentro il Ripoll dentro del municipio.
## Come corollario, questo comporta anche la possibilità per l'utente divenuto amministratore di retrocedere i privilegi di altri amministratori al livello di semplice utente.
# '''Scalata orizzontale''': un utente a pari livello di autorizzazione di altri utenti, ma con accesso ad aree differenti rispetto a questi ultimi, guadagna accesso a dette aree.
Il territorio, che comprende la città capitale del municipio di Ripollet, praticamente unita ai paesi di Cerdanyola del Vallès e Montcada i Reixac, si è sviluppato lungo le principali arterie stradali della comarca: la statale N-150 da [[Barcellona]] a [[Sabadell]] e [[Terrassa]] (1852), la provinciale BV-1411 da Ripollet al quartiere Masrampinyo di Montcada i Reixac (1880) e la provinciale B-141 da Ripollet a Santa Perpètua de Mogoda passando per le zone industriali (1975). A ovest del nucleo principale ed a sinistra del fiume Ripoll, passa l'autostrada C-58 da Barcellona a Sabadell e Terrassa.
 
==Altri progetti==
==Vertical privilege escalation==
{{interprogetto}}
Questo tipo di privilege escalation esiste quando l’utente o il processo è in grado di ottenere un livello di accesso più alto di quello di un amministratore o di quello voluto dallo sviluppatore del sistema, possibilmente eseguendo operazioni a livello del kernel (kernel-level).
 
== Galleria d'immagini ==
===Esempi di vertical privilege escalation===
<div align="center">
In alcuni casi un’applicazione con alti privilegi si presume sarà soltanto provvista di input che vada bene con la sua specifica interfaccia, senza però convalidare l’input. Un [[Attacker]] può quindi essere in grado di utilizzare questo presupposto in modo che un codice non autorizzato giri con gli stessi privilegi dell’applicazione:
<gallery perrow="4">
# Alcuni servizi [[Windows]] sono configurati per girare sotto un account utente del [[Local System]]. Una vulnerabilità così come il [[buffer overflow]] può essere usata per eseguire un codice arbitrario con privilegi elevati nel [[Local System]]. In alternativa, un servizio di sistema che si sta spacciando per un utente minore può elevare i propri privilegi se durante tale operazione gli errori che ne conseguono non vengono maneggiati correttamente.
File:15-10-28-Ripollet-RalfR-WMA 3014.jpg
# Sotto alcune passate versioni del sistema operativo [[Microsoft Windows]], tutti gli [[Salvaschermo|screensaver]] di tutti gli utenti girano sotto l’account [[Local System]], ogni account che può sostituire il corrente screensaver binario nel [[file system]] o [[Registro di sistema|Registro]] può perciò aumentare i privilegi.
File:15-10-28-Ripollet-RalfR-WMA 3007.jpg
# '''*''' In certe versioni del [[kernel]] di [[Linux]] era possibile scrivere un programma che dovrebbe posizionare la sua directory corrente in <code>/etc/cron.d</code>, per richiedere che un [[core dump]] sia capace in caso di crash che esso stesso venga ucciso da un altro processo. Il file [[core dump]] dovrebbe essere posizionato nella directory corrente del programma, cioè, <code>/etc/cron.d</code>, e <code>[[cron]]</code> dovrebbe essere trattato come un file di testo istruendo esso a far girare programmi su schedule. Poiché i contenuti dei file dovrebbero essere sotto il controllo dell’attacker, esso dovrebbe essere capace di eseguire qualunque programma con i privilegi di [[root (informatica)|root]].
File:15-10-28-Ripollet-RalfR-WMA 3000.jpg
# [[Cross Zone Scripting]] è un tipo di attacco privilege escalation nel quale un sito web sovverte il modello di sicurezza dei browser del web così che può girare codice malevolo sui computer di tipo [[client]]..
File:15-10-28-Ripollet-RalfR-WMA 3031.jpg
# Un [[jailbreak (informatica)|jailbreak]] è l’atto o lo strumento usato per effettuare l’evasione [[chroot]] o [[jail]] in sistemi operativi tipo [[UNIX]] o bypassando i digital rights management ([[Digital rights management|DRM]]). Nel primo caso, esso permette all’utente di vedere file esterni al [[file system]] che l’amministratore intende rendere disponibili per le applicazioni o su richiesta degli utenti. Nel contesto del DRM, ciò permette che l’utente faccia girare arbitrariamente un codice definito su dispositivi gravati dal DRM così pure da evadere le restrizioni del tipo [[chroot]]. I dispositivi gravati dal DRM come l’[[Xbox]], [[PlayStation Portable|PSP]], [[iPhone]], e [[iPod touch]] sono state ripetutamente soggetti a jailbreaks, permettendo l’esecuzione di codice arbitrario, ma hanno avuto i jailbreaks disabilitati dagli updates dei rispettivi venditori.
File:15-10-28-Ripollet-RalfR-WMA 3018.jpg
* In particolare l’[[iPhone]] è stato un terreno fertile di battaglia. Il gruppo di hacker dell’[[iPod Touch]]/[[iPhone]] tuttavia, risponde ai più recenti updates dei venditori creando nuovi modi per abilitare applicazioni di terzi quasi istantaneamente. È stato solo quando aumentò la popolarità dell’[[iPhone]] che il termine jailbreaking diventò ben noto in tutto il mondo.
File:15-10-28-Ripollet-RalfR-WMA 3039.jpg
* Un metodo simile di [[jailbreaking]] esiste per la piattaforma [[S60]] degli [[smartphones]], il quale richiede l’installazione di patch softmod-style, che richiede il patching di certi file [[Read Only Memory|ROM]] mentre sono caricati nella [[RAM]] o il firmware editato (simile all’[[M33]] firmware hackato usato per la [[PlayStation Portable]]) per raggirare le restrizioni su codice non firmato. [[Nokia]] ha rilasciato degli updates per mettere un freno ai jailbreaking non autorizzati, in maniera simile ad [[Apple]].
File:15-10-28-Ripollet-RalfR-WMA 3024.jpg
# Ci sono anche situazioni dove un’applicazione può usare altri servizi con alti privilegi e assunzioni incorrette su come un client potrebbe manipolare l’uso di questi servizi. Un'applicazione che può eseguire una [[Command line]] o una [[shell (informatica)|shell]] di comandi potrebbe avere una vulnerabilità [[Shell Injection]] se usa input invalidati come parte di un comando eseguito. Un attacker dovrebbe essere in grado di far girare comandi di sistema usando i privilegi delle applicazioni.
</gallery>
# I calcolatori della [[Texas Instruments]] (in particolare il [[TI-85]] e il [[TI-83]]) furono originariamente progettati per usare solo programmi interpretati scritti nella dialettica del [[TI-BASIC]]; tuttavia, dopo che gli utenti scoprirono dei bug che potrebbero essere utilizzati per permettere al codice nativo [[Z-80]] di girare su l’hardware del calcolatore, i [[Texas Instruments]] pubblicarono i dati necessari alla programmazione (programming data) per supportare lo sviluppo di terzi. (Ciò non manda avanti gli [[ARM-based]] [[TI-Nspire]], per i quali i jailbreaks non sono stati ancora trovati con successo.)
</div>
 
== Collegamenti esterni ==
===*Esempio famoso di attacco usando il Demone Cron===
* {{Collegamenti esterni}}
Un esempio famoso era un programma che faceva uso del [[demone cron]] che consentiva agli utenti la [[schedulazione]] del lavoro. In genere veniva eseguito come [http://root root] avendo quindi libero accesso a tutti i file di sistema e a tutti gli account utente. Principalmente l’attacco avveniva in questo modo:
 
{{Comuni della provincia di Barcellona}}
# L’attaccante crea un programma che avrà come directory di lavoro proprio quella del demone cron.
{{Controllo di autorità}}
# Dopo di che serve che venga creato un core dump e questo può avvenire in 2 modi, o va in errore così da generare un [[core dump]] o si lascia uccidere così da ottenere lo stesso un [[core dump]].
{{Portale|Spagna}}
# I [[core dump]] sono generati nella directory di lavoro che coincide in questo caso con quella del [[demone cron]]. Poiché i [[dump]] sono fatti dal sistema possono essere scritti senza che venga fermato dal sistema di protezione. L’immagine della memoria del programma attaccante aveva una struttura tale da essere formata da un insieme valido di comandi per il [[demone cron]] che poteva eseguirli come [[root (utente)|root]] di sistema avendo massimi privilegi.
# A questo punto l’attaccante si ritrovava un codice arbitrario che era in esecuzione come [[superuser]].
Fortunatamente questo particolare bug è stato risolto ma rimane sempre un ottimo esempio di questo tipo di attacco.
 
[[Categoria:Ripollet| *]]
===Strategie per ridurre il rischio===
I sistemi operativi e gli utenti possono usare le seguenti strategie per ridurre il rischio di privilege escalation:
# [[Data Execution Prevention]]
# [[Address space layout randomization]] (per rendere più difficile i [[buffer overruns]] ed eseguire istruzioni privilegiate su indirizzi conosciuti in memoria)
# Facendo girare applicazioni con il minimo privilegio (per esempio facendo girare [[Internet Explorer]] con la SID dell’Amministratore disattivata nel processo di [[tokenizzazione]]) in modo da ridurre l’abilità dell’azione [[buffer overrun]] di abusare dei privilegi di un utente elevato.
# Richiedendo che il codice in [[kernel-mode]] abbia la firma digitale
# Fare l’ up-to-date del [[software]] [[antivirus]]
# Facendo il [[Patching]]
# Usando compilatori che ingannino il [[buffer overruns]]
# Criptando il [[software]] e/o i componenti del [[firmware]]
 
==Horizontal privilege escalation==
[[Horizontal privilege escalation]] accade quando un’applicazione permette all’attacker di guadagnare l’accesso alle risorse le quali normalmente dovrebbere essere state protette da un’applicazione o da un utente. Il risultato è che l’applicazione esegue azioni con lo stesso ma differente contesto di sicurezza di quello inteso dalla sviluppatore dell’applicazione o dall’amministratore del sistema; ciò è effettivamente una forma limitata di privilege escalation (specificatamente, il non autorizzato presupposto sulle capacità di imitare altri utenti).
 
===Esempi di horizontal privilege escalation===
Questo problema capita spesso nelle applicazioni web. Consideriamo il seguente esempio:
# Utente A ha accesso all’account della banca in un’applicazione di servizi bancari online.
# Utente B ha accesso all’account della banca nella medesima applicazione di servizi bancari online.
# La vulnerabilità si manifesta quando l’Utente A è in grado di accedere all’account dell’Utente B eseguendo qualche tipo di attività malevola.
Questa attività malevola può essere possibile dovuta a debolezze o vulnerabilità delle comuni applicazioni web.
Le potenziali vulnerabilità dell’applicazione web che possono portare a questa condizione includono:
# La prevedibile [[session ID]]'s nel [[HTTP cookie]] dell’utente
# [[Session fixation]]
# [[Cross-site Scripting]]
# La semplice intuizione delle [[password]]
 
==Voci correlate==
* [[Principle of least privilege]]
* [[Privilege separation]]
* [[Privilege revocation]]
* [[Defensive programming]]
* [[World Wide Web#Security|World Wide Web security]]
* [[GetAdmin]]
 
==Bibliografia==
* James Quintana Pearce (2007-09-27), IPhone Hackers, Forbes, http://www.forbes.com/technology/2007/09/27/apple-orange-iphone-tech-cx_pco_0927paidcontent.html, retrieved 2008-08-04
* http://www.computerworld.com/s/article/9054719/Reports_Next_iPhone_update_will_break_third_party_apps_bust_unlocks?taxonomyId=11&intsrc=hm_topic
* http://symbianism.blogspot.com/2009/02/helloox-103-one-step-hack-for-symbian.html
* http://thinkabdul.com/2007/10/29/tutorial-bypass-symbian-signed-install-unsigned-sisxj2me-midlets-on-nokia-s60-v3-with-full-system-permissions/
* "Microsoft Minimizes Threat of Buffer Overruns, Builds Trustworthy Applications". Microsoft. September 2005. http://download.microsoft.com/documents/customerevidence/12374_Microsoft_GS_Switch_CS_final.doc. Retrieved 2008-08-04. [dead link]
* Andrew S.Tenenbaum "I moderni sistemi operativi" Pearson 3ª ed.
* http://www.pillolhacking.net/2010/07/10/vulnerabilita-pam-local-privilege-escalation-in-ubuntu-9-10-e-10-04/
* http://www.citi.umich.edu/u/provos/papers/privsep.pdf
 
[[Categoria:Tecniche di attacco informatico]]
 
[[de:Rechteausweitung]]
[[en:Privilege escalation]]
[[fr:Élévation des privilèges]]
[[pl:Eskalacja uprawnień]]
[[ru:Повышение привилегий]]