Read without ads and support Scribd by becoming a Scribd Premium Reader.
 
Commentmonordinateuravoteamaplace   
(et amoninsu) 
LaurentG EGOIR
laurent.gregoire@gmail.com
27mai201
R´esum´e
EnMai2012,lesfran caisresidant al'etrangerontlapossibilitedvoterviaInternetpourlesdeuxtoursdeselectionslegislatives.L'objectidecetarticleestdemontrerenquoilesystemedevoteutiliseestsensible uneattaquedetype\hommedumilieu"
\maninthemiddleattack
)paruneinjectiondecode;commentlarealiserdanslesfaits;etune demonstrationd'uneattaquereussie,lorsd'unvote,enconditionsreelles
Table des mati`eres
2.1Generalites..............................2. Etapesenimage...........................2.3Recuperationduprogrammeclient.................2.4Decompilationetanalyseduprogrammeclient..........2.5Modicationduprogrammeclient.................2.6Modicationdel'environnementd'executiondelamachinevirtuelle13 2.7Programmed'injection\ achaud"..................1
 
1 Introduction
Uneconditionnecessaire|maispassusante|, alasecuriteduvoteparIn- ternetestlanecessited'avoirunsystemeabledeboutenbout,toutaulongde lacha^nedetraitementdel'information.Cettecha^nedetraitementsecomposdestroiselementsprincipauxsuivants{Leclient:cequis'executesurl'ordinateurdel'electeur, {Lacommunicationentreleclientetleserveur{Leserveur:cequis'executechezl'organisateurdel'election,ouunprestatairprive. Latechnologieutiliseepourlapartiecliente,danslecadredeceselections,esunprogrammeJava,signe,telechargeviauneliaisonsecurisee(protocol
http
depuisleserveurdevote,etquis'executeatraverslenavigateurclient,vialmecanism
Javaweb-start 
,dansunenvironnementd'executionlocal.Cetenvironnementd'executionestcequel'onappelleun
machinevirtuelleJava 
(oJVM
JavaVirtualMachine 
),quipermetd'executerdefa con\securisee" 
ducodeJavacompile,aussiappel
bytecode 
Lasecuritedeboutenboutnecessiteuneconanceetunema^triseabsoluedu systemesurlequels'executeleprogrammeclient.Danscertainscas,l'electeur peut-^etreameneautiliserunordinateurqu'ilnecontrolepaslui-m^eme,communordinateurpublicouunpostesursonlieudetravail.Cen'estmalheureusementpaslecas,departlanaturem^emedestechnologiesutilisees,etdufaiblniveaudesecuritedel'ordinateuretdusystemed'exploitationclient. L'attaquemiseenuvreicipresupposequel'ordinateursurlequell'electeur votepeut^etr
compromi
.Parcompromis,onentendqu'unprogrammemalicieuxfonctionneal'insudel'utilisateur,commelefontleschevauxdeTroieou leslogicielsespions.Ceprogrammepeut-^etreinstallepartoutepersonneayant unaccesphysique alamachine,ouplussimplementvialetelechargementpar l'utilisateurd'unprogrammemalicieux,deguisesousuneformeanodine,commparexempleuneconomiseurd'ecranouunjeu. Pourrappel,uneetudedatantde2010montreque,sur22millionsd'ordinateurs analyses,presde48%sontinfectesparcegenredeprogramm
.Malheureuse
1.nousverronsplusloinceque\securise"signie..2.http://zd.net/cM9btD 
 
ment,lamajoritedesutilisateursn'ensontpasconscient,etneprennentpas touteslesmesuresdesecuriteadequatespourevitercesproblemes.D'autrepartd'unpointdevue alafoisdemocratiqueetd'organisation,onpeutdicilement n'autoriseravoterquelesseulselecteurspouvantassurerlasecuritedeleur ordinateur. Pourcetteetude,ilaetenecessairedechoisirdeuxcandidatsd'exemple.Lchoixducandidatdupartipirateestunclind'ilcarcecandidatafaitpardesonoppositionradicaleauvoteelectronique.Celaneprejugenidelarealitdesfaits,nidechoixpersonnels
2 Mise en œuvre
2.1 en´eralies
L'attaqueserealiseentroisetapes1.Ladecompilationetl'analyseducodeclientutilisepourlevote, 2.Lamodicationdelapartieducodepermettantdemodierlechoixde l'electeur asoninsu, 3.L'injectionducodeainsimodiedanslamachinevirtuelle. Lesdeuxpremieresetapessefontparl'attaquant,unefoispourtoutes,sur n'importequellemachinequidisposed'uncompted'electeur.Latroisiemeetaps'eectueparunprogrammeinstallesurlesordinateursdevotecompromisL'utilisationdecodeJavanousfacilitelatachesurtouteslesetapesduprocessus. Premierement,lebytecodeJavaestunerepresentationcompleteettresfacile- mentdecompilableducodesourceinitial.LelanguageJavaetantunlanguage reexif,l'integraliteducodesource|sauflescommentaires,dontonpeutspasser|estpresentdanslecodecompile.Ceciinclutlesnomsdeclasses,lenomsdevariables,ainsiquetoutelastructuresemantiqueduprogramm
.IestainsiaisedereconstituerlecodesourceinitialEnsecond,lesmachinesvirtuellespossedentenstandardunmodedefonctionnementspecial,ditd
debogage 
,o ul'onouvreuncanaldecommunication avecl'exterieur,permettant aunprogrammeurd'inspecteretdemodierl
3.Pour^etretoutafaitprecis,ilexistequelquescasrares(boucles 
fo
e
whil
)quisontsur jectifsparrapportalatransformationdecompilation,danslesenso udeuxstructuressources dierentesproduisentlem^emebytecode.Maiscecasn'estpasg^enant,carlasemantiquedu codesourceestidentiquedanslesdeuxcas
Search History:
Searching...
Result 00 of 00
00 results for result for
  • p.
  • Notes
    Load more