Étude de la vulnérabilité du kernel Linux 64bits (local root de septembre 2010)

icon

18

pages

icon

Catalan

icon

Documents

Le téléchargement nécessite un accès à la bibliothèque YouScribe Tout savoir sur nos offres

icon

18

pages

icon

Catalan

icon

Documents

Le téléchargement nécessite un accès à la bibliothèque YouScribe Tout savoir sur nos offres

Rappels Contexte de la vulnerabilite Aspect technique de la vulnerabilite Historique de la vulnerabilite Analyse d’un exploit ReferencesEtude de la vulnerabilite du kernel Linux 64bits(local root de septembre 2010)Christophe Roquette, Jeremy Subtil, Feili Liu et Romain BezutUniversite de Technologie de CompiegneSR06 { A10Christophe Roquette, Jeremy Subtil, Feili Liu et Romain Bezut Universite de Technologie de CompiegneEtude de la vulnerabilite du kernel Linux 64bits (local root de septembre 2010)Rappels Contexte de la vulnerabilite Aspect technique de la vulnerabilite Historique de la vulnerabilite Analyse d’un exploit ReferencesPlanRappelsRappel de la loiLes registresLes appels systemeContexte de la vulnerabiliteAspect technique de la vulnerabiliteD’ou vient la vulnerabilite ?Exploitation par ptrace(2) Patch de 2007 du cas ptraceHistorique de la vulnerabiliteCVE-2007-4573CVE-2010-3301Regression de 2008Analyse d’un exploitReferencesChristophe Roquette, Jeremy Subtil, Feili Liu et Romain Bezut Universite de Technologie de CompiegneEtude de la vulnerabilite du kernel Linux 64bits (local root de septembre 2010)Rappels Contexte de la vulnerabilite Aspect technique de la vulnerabilite Historique de la vulnerabilite Analyse d’un exploit ReferencesRappel de la loiRappel de la loiArticle 323-1 du Code penal (21 juin 2004).I Le fait d’acceder ou de se maintenir, frauduleusement, dans ...
Voir icon arrow

Publié par

Langue

Catalan

RappelsContexteedaluvnle´aribileAt´ecspecttiqhnedeuuvale´nlibareHislit´quedtorilu´nlevalitirebaysalAn´expneuedfe´Rtiolsecnere´hpReqoeutt,e´JreChristomoRteuiLtuzeBniabtSumy´eliei,Filgoeinhlopm`iedoCersiUniveTect´edt´liuked´elnbiraededuvalengeutE´otdesept(localroxu46ibstreenLlni
SR06 – A10
Universit´edeTechnologiedeCompie`gne
ChristopheRoquette,J´er´emySubtil,FeiliLiuetRomainBezut
´ Etudedelavulne´rabilite´dukernelLinux64bits (local root de septembre 2010)
)0102erbme
lLinux64edukernelaortoedibstl(co01e2
Plan Rappels Rappel de la loi Les registres Lesappelssyst`eme Contextedelavulnerabilite´ ´ Aspecttechniquedelavuln´erabilit´e Do`uvientlavulnerabilit´e? ´ Exploitation par ptrace(2) Patch de 2007 du cas ptrace Historiquedelavuln´erabilit´e CVE-2007-4573 CVE-2010-3301 R´egressionde2008 Analyse d’un exploit Re´ferences ´
0)ptsebremavuledeltextsConppleaRabern´ulHi´eitileuqirotsnluvaledabiln´erAspeit´ehcintcetlevauqdeerf´ceens´erabilit´eAnalyesdnuxelpioRte´ainBtRomLiueeililiF,uStbe´ym´Jree,ttueoqeRphtoisrhCrabilit´lavuln´eE´utededpm`igeenieogCodeeceTolhnisrede´ttuzevinU
ibile´arsiot´tHeedelriqun´eravule´tilibadesylanAloxpneu´eefR´itRpaepsloCntextedelavuln´eibar´tilpsAettcehnecueiqladelnvuncreesolhnieogedt´eceTengeutE´oCed`ipmLiuetRomil,FeilinUvireisiaBnzetuueoqeRphtoishrCtbuSyme´re´J,ett)0
Rappel de la loi
Article323-1duCodep´enal(21juin2004). I Lefaitdacce´deroudesemaintenir,frauduleusement,danstout oupartiedunsyste`medetraitementautomatise´dedonn´eesest puni de deux ans d’emprisonnement et de 30000 euros d’amende. I Latentativedesd´elits[...]estpuniedesmeˆmespeines.
Rappel de la loi
stib46xuorlacol(ptsedeot01e2bremaluvededaribnle´eduklit´lLinerne
46ibstl(colaortot´edukernpeplRLaisnCuexl
Les registres
Les registres
sedeempte2br0)01reneecsoitR´ef´dunexplanAeesylibar´tilvula´elniqordeueiHtstie´bali´nreavuledelniqutechtcepsAe´tilibaren´ulaveledxtteondelavuln´erabilioCpm`igeenE´utedeTedhnecogoldeiezeBnnUturevi´tisliLi,FeiomaiuetRree´,e´JtbliymuSphtoishrttueoqeRC
lit´eAnaln´erabieuedaluviHtsroqiscef´´eenerlpxeRtioesylnudChr,FilbtSumy´eerJ´,etteuqoRehpotsippaRrebalu´ne´sAlitionteelsCelavxtedre´nluvae´tilibachtectpeeledquni
Lesappelssyst`eme
Lesappelssyste`me
lieiueLiomtRnBaituzeE´uteded´elnvulat´libiraenrekude46xuniLl(locbitsotdealromerbestp)0
Universite´deTechnologiedeCompi`egne
2e10
iLun6xb4udeknrleabilit´eavuln´er0102
I KernelLinuxx8664-bitsavecmodedecompatibilit´e32-bitsactiv´e. I Survientlorsdunappelsyste`me32-bits( int 0 x80 en assembleur). I Ve´ricationsurEAXmaisutilisationdeRAX,cequiautorise`aaller chercherlaroutinedesyscalldanslespacem´emoireutilisateur. I Exe´cutionduneroutinecre´e´eparlutilisateurenmodekernel. I Changement des UID, GID, . . . du programme en cours. I Exe´cutionde /bin/sh . I Got root.
Contextedelavulne´rabilit´e
)etpeerbmoolrestds(itcaloRexntdetepeapColsaribil´taluvnle´echniqueeAspecttilibare´nluvaledeledquritoiseHt´tie´bali´nrevaluxplouneysedAnalef´eitR´esrencetJ,uqteehoRtspol,FeubtiemyS´er´riChigdeCemoeThconolEtudedelpi`egne´amoReBniLiliteuiitrsde´etUzuveni
stor´eHidelaiquelu´nlevalitirebadselynaoiplexunare´nluvAe´tilibppelsContextedelaRpeAstectnichedquluvare´nlibae´ticeens´etRerf´rnkeLielx6nuit4b´nlubaretiliude´´EtudedelavtoRteuiLiuzeBniamySubr´emFeiltil,oRuqpoehJ,e´teethCtsir
Cependantimpossiblea`exploiterdansuncasnormaldutilisationa`cause du zero-extending :
m o v l % eax ,% eax
1
Cequiassurequelamoiti´esupe´rieurede rax est toujours a zero. ` ´
´ Emulationdesappelssyste`me32-bitsdanslekernel:
c m p l $ ( I A 3 2 _ _ y l l s -1) ,% eax N R s s c a ja i a 3 2 _ b a d s y s i a 3 2 d o c a l l : _ _ _ _ I A 3 2 A R G F I X U P c _ s y _ l _ t a b l e ( ,% rax ,8) a l l * i a 3 2 s c a l
1 2 3 4 5
epestdoolrcalos(
Do`uvientlavuln´erabilit´e?
Dou`vientlavulne´rabilit´e?
Universit´edeTechnologiedeCompi`egne
)0102erbmet
oRuqpoehirtshCtsiHqiroedeuuval´elnbirat´linaeAeptcethcinuqdeleavuln´erabilit´ednuylesioRtxelperen´ef´cesJl,eeC´stneoeettStyxbdue´lremveaFuelinl´teirla,beitlRioti´LeiAusuzeBniamsrevinUtTede´eitgilonpopcRhadeCemoipe`ng´etEudedelavuln´erabtiliude´nrekiLlex6nuit4blos(lrcare20tembesepootd
Exploitation par ptrace(2)
Exploitation par ptrace(2)
Qu’est ce que ptrace(2) ? I Appelsyt`mepermettanta`unprocessusparentdobserveretde s e controˆlerlexe´cutiondunprocessusls. I Syscallutilise´parlesd´ebogueurstelsqueGDBnotamment. Exploitation dans notre cas : I D´eboguerleprocessuslslorsdunappelsyst`emeavec: ptrace ( PTRACE_SYSCALL , pid , 1, 0); I Changerlavaleurderaxdulsavantlappelsyste`me32-bits (etdoncapre`sle movl % eax ,% eax ).
01)
Voir icon more
Alternate Text