250 likes | 374 Views
Analysing TLS Using the Strand Spaces Model ( Kamil,Lowe ). Dormenco Ion(MSI1). 1.Introducere :.
E N D
Analysing TLS Using the Strand Spaces Model (Kamil,Lowe) Dormenco Ion(MSI1)
1.Introducere: • In ultimavreme,verificareaformala a protocoalelelor de securitate a fostintensstudiatasidezvoltata(BAN89). Aceasteverificari au fostaplicate cu succesprotocoalelorstandardeinsaele nu pot fi sistemele de securitate practice. • Acestesisteme nu pot fi verificate din cauza ca elesuntproiectate ca arhitecturi de securitatemari. • Un protocol de securitateeste o secventa de mesajetrimiseintreunulsaumai multi agentipentru a satisface un obiectiv de securitate predefinit.Obiectivulprestabilittrebuieatinschiarsi in prezentaunuiintrus . • IntrusulDolev-Yao esteintrusul standard in analizareaprotocoalelor de securitate. • Intrusuldetinecontrolulcompletasuprareteleisipoateintercepta,injectaoricemesaj din retea • Intrusul nu poate face criptanalizamesajelorcriptate din cauza ca se presupunecriptografiaperfecta
1.Introducere(continuare) • Problemeintalnite la analiza TLS • Marimea: protocolul TLS este de 10-15 orimai mare decatmajoritateaprotocoalelorcanonice • Complexitateacriptografica: majoritateatehnicilor de verificare nu pot verifauneleoperatiifolosite in TLS ex: cheile de sesiune generate cu ajutorul PRF • Interactiunea multi-nivel: panaacumnimeni nu a verificatcombinatia a douanivelesiposibilitateainteractiuniiintreele • Pentru a verificaacest protocol autorii au simplificatmesajeletransmise in TLS,auredusnumarulsilungimealor
2.TLS(Ian. 1999) • Principalulobiectiv al TLS-uluieste de a ofericonfidentialitatecomunicariiintredouaaplicatii care comunica de asemeneaasiguraintegritateadatelor. • Server/client suntrolurileasignatepartilor care comunica .Clientulinitiazacomunicareasecurizata,iarserverulraspundecererii
2.Subprotocoale a TLS • Handshake Protocol : folosit de patile care dorescsacomunicepentru a stabiliparametriicriptografici care vor fi folositi in sesiunea initiate • ChangeChipherSpecprotocol:folosit de entitatea care trimitepentru a notificaentitatea care primeste ca mesajeleulterioaretrebuiesccriptate cu parametriistabilitifoloseste un singur byte cu valoarea 1 pt a indictranzitia • Alert protocol : asiguratratareaexceptiilor din conexiunile SSL .Mesajulindicagravitateaexceptiei (warning,fatal) sidescrieexceptia • Record Layer protocol : primestemesajele de la protocoalele de nivelinaltincluzand Handshake, ChangeCipherSpec,Alertsi Transaction protocol.Imparte in pachetedatelecetrebuiesctrimisesi le protejeazafolosindparametrii de securitatestabilitiapoi le transmite TCP pentru a fi trimise
2.1 Autehentification Handshake • FiecaremesajHandShakecontine 3 campuri: • message_type: indicatipulmesajuluiex:ClientHello,ServerHello,CertificateRequestetc • message_length: indicalungimeamesajului • Content Parameters:continutulmesajului handshake • Message_no:numaul de ordine al mesajului • A si B entitatileintre care are loccomunicarea
2.1 ClientHello • Specificaserveruluipreferinteleclientului • client_version:versiunea TLS ceamai mare suportata de client • chipher_suite:listaalgoritmilorcriptograficisuportati de client • compression_methods: listaalgoritmilor de compresiesuportati de client
2.1:ServerHello,ServerCertificate • Serverulisi face alegereapreferinteloroferite de client • ReturneazasessionID!=0 dacadorestesarestabileascasesiuneaanterioara • Serverulreturneaza un lant de certificate X.509 primul certificate din lantfiindcertificatulserveruluiastfelserverul se autentificaclientului
2.1ServerKeyExchange • Acestmesaj include parametriiserveruluipentruschimbul de chei • parameters estegoldacacertificatuloferit de ServerCertificatepoate fi folositpentrucriptaresiverificareasemnaturilor • signed_parameters
2.1 CertificateRequest,ServerHelloDone • Acestmesajeste optional siestefolositdoaratuncicandserverulcereclientuluilistasa de certificate • Mesajtrimisdoarpentru a anuntaclientul ca handshake a luatsfarsit
2.1ClientCertificate,ClientKeyExchange • Acestmesajestetrimis de client atuncicandclientulprimesteServerHelloDone • acestmesajoferainformatii care vor fi folosite la generareacheilor de sesiune
2.1CertificateVerify,ClientFinished • Clientuldemonstreaza ca el face procesareasi nu alt cineva se decripteaza cu cheiapublicaoferita de client in ClientCertificate Clientulconfirma ca handshake a avutloc cu succes
2.1ServerFinished • Ultimulmesaj din HandshakeProtocolprin care serveruldemonstreazaclientului ca comunicarea a avutloc cu succes.
2.2Record Layer • Record layer tindesastabileasca o conexiune peer-to-peer sisaofereurmatoarele: • Confidentialitate : criptografiesimetricaestefolositapentru a criptadatele ,cheilesuntunicesisunt generate din parametriisecretinegociati de TLS in Handshake Protocol • Integritateamesajului: Record Layer include o verificare a integritatiimesajelorfolosind un MAC criptat.Functii hash suntfolositepentru a calcula MAC (SHA,MD5)
3.TLS simplificat • Pentru a puteaverifica TLS autorii au aplicatuneletransformariasupra TLS si au obtinuturmatorul TLS simplificat
3.TLS simplificat • Mesajele record layer au forma :
4.Analiza TLS utilizandspatii strand • Fie Agent multimeatuturoragentilorimpartita in douasubseturiHonest si Dishonest. • Comunicareaestedescrisa in termenul a douacanale : • send.A.B.s.mreprezinta Transaction Layer la A trimitemesajum m catre TLS ca sa fie trimislui B ca parte a sesiunii s • receive.B.A.s.mreprezinta TLS trimitandmesajul m (aparent) de la A catre Transaction Layer la B ca parte a sesiunii s • In fiecaresesiuneintre A si B mesajulacceptat de RecordL Layer a lui B ca fiind de la A estegarantat ca este de la A si ca estepentru B.
4.1Presupuneri Initiale • Valorile fresh folosite in TLS suntunice
4.3Garantiile Clientului • Cheia de sesiuneramanesecreta • cheile de sesiune G0..G3 suntsigure
4.3Garantiile Clientului • serverul se autentifica la client sisunt de accord cu identitatile ,nonce-urisiparametriisecreti
4.4Garantiile serverului • autentificareaclientului la server siprotejareacheilor de sesiunefolosite de server parametrul pm folosit la generarea de cheieste secret(similar ca la client)
5.Concluzii • In aceastalucrareautorii au analizatsiverificat TLS simplificandmesajesimplificate. • Autorii au ajuns la concluzia ca TLS estecorectsiasigura:autentificaremutual,steamautentification,confidentialitatesiindependenta de sesiuni • Referinte: • http://www.cs.ox.ac.uk/files/188/TLSanalysis.pdf • http://profs.info.uaic.ro/~cbirjoveanu/web/Ps/Lecture%20Notes/Strand%20Spaces.pdf