Versija 6 nuo 2014-11-16 14:24:00

Išvalyti žinutę
Locked History Actions

SSL/TLS

Žodis angliškai

SSL/TLS protocols

Santrumpa

Žodis Lietuviškai

SSL/TLS protokolai


Apibrėžimas

SSL (Secure Socket Layer) ir TLS (Transport Layer Security) - tai kriptografiniai protokolai, skirti saugiai keistis internetu perduodamais duomenims. Veikia taikomąjame TCP/IP modelio lygmenyje.


Įvadas

Vis daugiau darbo sričių persikelia į virtualią erdvę. Dažnai pasitaiko duomenų, kuriais reikia apsikeisti internete, tačiau jie turi išlikti slapti nuo pašalinių. Šia problema susirūpinta jau seniai. Perduodamus slaptus duomenis imta šifruoti, pradėti spręsti apsikeitimo raktais klausimai. Nors ir ankstyvi metodai iš pirmo žvilgsnio gali pasirodyti saugūs, tačiau laikui einant vis randama būdų, kaip juos nulaužti. Galiausia atsirado TLS protokolas, kuris tobulinamas iki šių laikų ir taikomas saugiai keistis informacija internete. Jis naudojamas dažnai su HTTP protokolu, el. paštu, VoIP ir kt. Saugiųjų susijungimų sluoksnio (Secure Socket Layer – SSL) ir iš jo išsivystęs Transporto lygmens saugumo (Transport Layer Security – TLS) yra kriptografiniai protokolai, skirti saugiai keistis duomenimis internete. Jie autentikacijai naudoja X.509 sertifikatus, veikia virš TCP (nors yra ir realizacijų kitiems protokolams, veikiantiems datagramų pagrindu, tokiems kaip UDP). Šiuo atveju aukštesnių lygmenų protokolai (kaip HTTP) gali būti palikti be pakeitimų ir vistiek palaikyti saugų susijungimą, pavyzdžiui, virš SSL sluoksnio HTTPS protokolas yra visiškai identiškas HTTP protokolui. Kai SSL/TLS naudojamas teisingai, viskas, ką įsilaužėlis gali pagauti kabelyje – IP ir prievado numeriai, per kuriuos klientas bendrauja su serveriu, apytiksliai, kiek duomenų yra perduodama, koks šifravimo ir koks suspaudimo algoritmas yra naudojamas. Jis taip pat gali nutraukti susijungimą, tačiau ir klientas, ir serveris supras, kad susijungimą nutraukė trečioji šalis. Įprastai naudojant, įsilaužėlis taip pat galės išsiaiškinti prie kokio (host name) vartotojas yra prisijungęs (tačiau tik vardą, o ne visą URL): nors pats HTTPS neatskleidžia vardo (hostname), tačiau naršyklė įprastai turės užklausti DNS, kad pagal vardą sužinotų IP, į kurį reikės kreiptis. DNS užklausos nėra šifruojamos.

Šifravimo ir apsikeitimo raktais idėja

SSL/TLS autentikacijai naudoja X.509 sertifikatus ir todėl asimetrinę kriptografiją (taip nurodyta X.509 specifikacijose). Autentikacijos metu su kolega, apsikeičiama simetriniu raktu. Kuom skiriasi asimetrinė nuo simetrinės kriptografijos? Asimetrinė kriptografija dar yra vadinama viešojo rakto (angl. public key) kriptografija, naudoja du atskirus raktus, iš kurių vienas yra privatus (slaptas, angl. private), o kitas – viešas (public). Nepaisant to, kad šie raktai yra skirtingi, matematiškai jie yra susiję. Viešas raktas yra skirtas, kad užšifruoti atvirą tekstą (plaintext) arba patikrinti skaitmeninį parašą, o privatus raktas naudojamas, kad dešifruoti šifruotą tekstą (ciphertext) arba siekiant sukurti skaitmeninį parašą. Terminas „asimetrinis“ kilęs iš to, kad skirtingi raktai naudojami atlikti priešingas funkcijas. Simetrinė kriptografija naudoja tą patį raktą atlikti abiems veiksmams arba gali užtekti paprastos transformacijos, kad iš vieno rakto gauti kitą. Nenuspėjamas (įprastai didelis ir atsitiktinis) skaičius yra naudojamas, kad pradėti generuoti tinkamą raktų porą, kuri galės būti naudojama su asimetrinio rakto algoritmu (1 pav). Viešojo rakto algoritmai remiasi tokiais matematiniais uždaviniais, kurie, tikimasi, kad neturi jokio efektyvaus sprendimo būdo: skaičių skaidymo į pirminius (angl. integer factorization arba prime factorisation), diskrečiojo logaritmo ir elipsinių kreivių (y2=x3+ax+b) sąryšiai. Vartotojas nesunkiai gali susigeneruoti savo viešąjį ir privatų rakta ir tuomet juos naudoti šifravimui ir dešifravimui. Algoritmo patikimumas slypi tame, kad, jei yra gerai sugeneruotas privatus raktas, yra neįmanoma (matematiškai neišeina) jo sužinoti iš viešo rakto. Todėl viešas raktas gali būti viešinamas be jokios saugumo rizikos, kuomet privatus raktas privalo būti laikomas slaptai, neatskleidžiamas niekam, kam negalima skaityti šifruotų duomenų ar atlikti skaitmeninius parašus. Viešojo rakto algoritmai, priešingai nei simetrinių raktų algoritmai, nereikalauja saugaus pradinio susijungimo, kad apsikeisti vienu (ar keletu) saugių raktų tarp vartotojų. 2 pav. vaizduojama, kaip du vartotojai (Bobas ir Alisa) slapta bendrauja, naudodami asimetrinį šifravimą. Pradžoje Bobas ir Alisa susigeneravo savo viešuosius ir privačius raktus. Tada apsikeitė viešaisiais raktais, kuriais galima tik šifruoti. Bobas parašo „Labas, Alisa“, tada šį pranešimą šifruoja jos viešuoju raktu. Šifruoto pranešimo pakeliui niekas negalės perskaityti, nes niekas negavo privataus rakto – jis niekad nesiunčiamas. Alisa gautą pranešimą dešifruoja savo privačiu raktu ir gautą pranešimą perskaito... Taigi, reikėtų įsiminti: kai naudojamas asimetrinio rakto šifravimo algoritmas, bet kas gali šifruoti pranešimą naudodamasis viešuoju raktu, tačiau tik privačiojo rakto savininkas(-ė) gali dešifruoti. Su viešu raktu galima tik šifruoti, bet dešifruoti neįmanoma.

Skaitmeninis parašas

Skaitmeninis parašas – matematinis būdas skaitmeninio pranešimo ar dokumento autentiškumo patvirtinimui. Skaitmeninis parašas gavėjui suteikia pasitikėjimą, kad dokumentas nėra suklastotas ir kad jo turinys nebuvo pakeistas nepageidaujamų asmenų. Skaitmeniniai parašai dažnai naudojami programinei įrangai platinti (software distribution), financinėms tranzakcijoms ir kt. Prieš išsiunčiant pranešimą yra paskaičiuojamas ho hešas, kuris tuomet šifruojamas privačiu raktu ir taip gaunamas skaitmeninis parašas (šifruotas hešas). Po to bet kas, kas turi viešąjį raktą, gavęs duomenis ir parašą, jį dešifruoti ir gauti hešą. Tada paskaičiuoti gautų duomenų hešą. Šiuos hešus gavėjas palygina (3 pav.). Jei jie lygūs tai, pranešimas nebuvo modifikuotas (liko autentiškas) nuo to laiko, kai jis buvo pasirašytas ir, laikant, kad pasirašiusiojo asmens privatus raktas vis dar yra paslaptyje (vis dar žinomas tik pasirašiusiajam), jį parašė būtent tas kas turėjo ir ne kasnors kitas.

PAVEIKSLIUKASąąąąąąąąąąąąąąą

Apie X.509 sertifikatus

Kriptografijoje X.509 yra ITU-T (ITU Telecommunication Standardization Sector) sukurtas standartas viešojo rakto infrastruktūrai (PKI – public key infrastructure – aparatinės ir programinės įrangos, žmonių, politikų ir procedūrų rinkinys, reikalingas tam, kad sukurti, tvarkyti, platinti, naudoti, saugoti ir atšaukti skaitmeninius sertifikatus) ir privilegijų tvarkymo infrastruktūrai (PMI – Privilege Management Infrastructure – vartotojų privilegijų/autorizacijų valdymas pagal X.509 rekomendacijas). X.509 kartu su kitais dalykais apibrėžia standartų formatus viešųjų raktų sertifikatams ir kt.

Kriptografijoje PKI yra tvarka, kurią nustato sertifikavimo centras (CA – Certification Authority), susiedamas viešuosius raktus su tam tikrais vartotojų identifikatoriais. Vartotojų identifikatoriai turi būti unikalūs kiekviename CA domene. Trečiųjų šalių esantis tikrinimo centras (VA – validation authority) gali šią informaciją pateikti CA vardu. Susiejimas yra atliekamas per registracijos ir išdavimo procedūras, kurios, priklausomai nuo susiejimo apdraudimo lygmens, gali būti atliktos CA programinės įrangos ar prižiūrint vartotojui (human supervision). Susiejimą atlieka registracijos centras (RA – registration authority), kuris užtikrina, kad viešas raktas yra susietas su tam tikru vartotoju. CA ir PKI tikrina sąryšį tarp sertifikato ir jo savininko, bei tam kad generuoti, pasirašyti ir administruoti, tvarkyti sertifikatų galiojimą.

X.509 sistemoje CA išduoda sertifikatą, susiejantį viešąjį raktą su tam tikru skiriamu vardu arba alternatyviuoju vardu, pavyzdžiui, email adresu ar DNS įrašu. Organizacijos patikimi šaktiniai sertifikatai (trusted root sertificates) gali būti išplatinti visiems darbuotojams, kad jie juos galėtų naudoti kompanijos PKI sistemoje. Populiariausios naršyklės, pavyzdžiui Firefox, Internet Explorer, Chrome ir kt., kai yra instaliuojamos, jau su savimi turi šakninių sertifikatų (root certificates) rinkinį, todėl sertifikatai iš stambesnių kompanijų veiks iš karto, nes naršyklių kūrėjai nustatė, kuriais CA trečiosios šalys gali pasitikėti. Šakninis sertifikatas (Root Certificate) – nepasirašytas viešojo rakto sertifikatas arba savo paties pasirašytas (self-signed) sertifikatas, kuris identifikuoja šakninį CA. Šakniniame sertifikate yra dalis PKI infrastrukturos. CA gali išduoti keletą sertifikatų, sudarančių medžio struktūrą. Šakninio sertifikato privatus raktas (žinomas tik išdavėjui), naudojamas visiems kitiems sertifikatams pasirašyti. Šakninis sertifikatas yra pačioje medžio viršūnėje. Visi kiti sertifikatai yra po šakninio sertifikato ir turi jo pasitikėjimą. Žemiau esantys sertifikatai taip pat laikomi patikimais aukštesnių. Dauguma programų laiko, kad šie šakniniai sertifikatai yra patikimi vartotojui. Pavyzdžiui, naršyklės juos naudoja, kad patikrintų serverio tapatybę SSL/TLS saugaus ryšio metu. Žinoma, tai reiškia, kad vartotojas pasitiki jo naudojamos naršyklės kūrėjais, pasitiki šakniniais sertifikatų centrais ir visais tarpiniais CA, kurie gavo sertifikatus iš aukščiau, ištikimybe ir ketinimais visų šalių, kurios yra sertifikatų savininkės. Šie tarpiniai sertifikatai pasitiki šakniniu ir atvirkščiai. Tai įprasta ir tokia yra X.509 sertifikatų grandinės idėja. SSL privalo laikytis X.509. Tai sertifikatų standartas. Kiekvieną sertifikatą pasirašo sertifikavimo institucija (CA – Certification Authority). Idėja ta, kad klientas žino kažkiek CA (tai yra „trust anchors“ arba „root certificates“), kuriom gali pasitikėti. Su šiais raktais klientas gali patikrinti parašą, kurį paskaičiavo jam CA ir turi su savimi su parašu, kuris yra serverio duotame sertifikate. Šis procesas gali vykti rekursyviai: CA gali išduoti sertifikatą kitai CA (t.y. pasirašyti sertifikatų struktūrą, kurioje yra kito CA vardas ir raktas). Sertifikatų grandinė prasideda šakniniu sertifikatu ir baigiasi serverio sertifikatu, tarp kurių yra dar tarpinių CA sertifikatai, kurių kiekvienas yra pasirašytas ankstesnio sertifikato viešuoju raku, kuris yra ankstesniame sertifikate. Tai ir vadinama sertifikatų grandine. Taigi, klientas yra linkęs elgtis taip: • Gauti sertifikatų grandinę, kuri užsibaigia serverio sertifikatu. „Certificate“ pranešimas iš serverio turėtų savyje turėti būtent tokią sertifikatų grandinę. • Patikrinti grandinę, t.y. patikrinti visus parašus ir vardus, ir įvairius X.509 bitus. Taip pat klientas turi patikrinti ar nėvienas iš grandinėje esančių sertifikatų nėra atšauktas, o tai yra sudėtinga ir lėta ( web naršyklės po truputį tai ima daryti, tačiau tik pradeda). • Patikrinti, kad serverio vardas yra įrašytas serverio sertifikate. Nes klientas ne tik nori patikrinti viešąjį raktą, bet ir įsitikinti, kad jis priklauso būtent tam serveriui. Detaliau apie tai HTTPS kontekste yra aprašyta RFC 2818. Sertifikavimo modelis su X.509 sertifikatais dažnai yra kritikuojamas, tačiau nevisai dėl techninių priežasčių, tačiau dėl politinių ir ekonominių priežasčių. Nes visa galia sukoncentruoja į kelių didelių žaidėjų rankas, kurie nebūtinai siekia gero, ar bent jau ne visada kompetetingi. Dabar jau vėl siūlomos kitos sistemos (pvz., Convergence ar DNSSEC) bet nei vienas neįgijo plataus pripažinimo (kolkas). Kai naudojama sertifikatų pagrindu veikianti kliento autentikacija, serveris pats sprendžia, ką jam daryti su kliento sertifikatu (ir taip pat su klientu, kuris atsisakė duoti sertifikatą). Kai naudojama Windows/IIS/Active Directory kliento sertifikate turėtų būti įrašytas sąskaitos vardas (account name) kaip „User PrincipalName“ (įrašytas „Subject Alt Name extension“ sertifikato plėtinyje); serveris jo ieško Active Directory serveryje. Šakinis sertifikatas yra tikrai patikimas, jei jis platinamas yra saugiose distribucijose, programose, kurias sukūrė gerai žinomos kompanijos. Pavyzdžiui, keletas iš žinomiausių šakninių sertifikatų yra platinami interneto naršyklėse jų kūrėjų. „Microsoft“ platina šakninius sertifikatus, priklausančius „Microsoft Root Certificate Program“ programos dalyviams savo „Windows“ ir „Windows Phone“ operacinėse sistemose.

X.509 sertifikatų struktūra

X.509 sertifikatų failų struktūra yra tokia:

  • Pats sertifikatas
  • Versija
  • Serijos Numeris
  • Algoritmo identifikatorius
  • Išdavėjas
  • Galiojimas
  • Subject
  • Subject viešojo rakto informacija
  • Išdavėjo unikalus identifikatorius (nebūtina)
  • Subject unikalus identifikatorius (nebūtina)
  • Plėtiniai (nebūtina)
    • ...
  • Sertifikato parašo algoritmas
  • Sertifikato parašas

Kiekvienas plėtinys (extension) turi savo ID, išreikštą kaip objekto identifikatorių, kuris yra reikšmių rinkinys, kartu su kritiniu arba nekritiniu indikatoriumi (jis kritinis ar ne). Sertifikatus naudojanti sistema privalo atmesti sertifikatą, jei jis turi kritinį plėtinį (critical extension), kurio jis neatpažįsta arba kritinį plėtinį, kuris turi informaciją, kurios sistema negali apdoroti. Nekritinis plėtinys gali būti ignoruotas, jei nebuvo atpažintas, bet privalo būti apdorotas, jei buvo atpažintas. Plėtinių galimybė buvo įvesta trečioje CA versijoje. CA gali naudoti plėtinius, kad išduoti sertifikatus kokiai nors specifinei sričiai, pavyzdžiui, skirtus tiktais pasirašyti skaitmeninius objektus (signing digital object arba kitaip code signing, t.y. skriptų ir programų vykdomųjų failų pasirašymas). Kiekvienas plėtinys gali būti kritinis ir nekritinis. Jei plėtinys yra kritinis ir sistema apdorodama sertifikatą jo neatpažino arba negali to plėtinio apdoroti, tai sistema tokį sertifikatą privalo atmesti. Nekritinis plėtinys jei nebuvo atpažintas arba negali būti apdorotas gali būti ignoruotas ir gali būti tęsiamas tolimesnis sertifikato apdorojimas [RFC 5280 section 4.2, retrieved 12 February 2013]. Visose versijose kiekvienam sertifikatui, išduotam CA, serijos numeris privalo būti unukalus. Tai minima RFC2459 [RFC 1422].

Plėtiniai, nurodantys specifinį sertifikato naudojimą:

RFC5280 (ir jo pirmtakai) apibrėžia kažkiek plėtinių, kurie nurodo, kaip sertifikatas turėtų būti naudojamas. Keletas populiariausių ["RFC 5280]: • Pagrindiniai apribojimai (Basic Constraints), { id-ce 19 } yra skirta nurodyti, ar sertifikatas priklauso CA. • Rakto naudojimas (Key Usage), { id-ce 15 } turi bitų rinkinį (bitmap), nurodantį kriptografines operacijas, kurios gali būti atliekamos naudojantis viešuoju raktu, kuris yra sertifikate, pavyzdžiui, jis gali rodyti, kad raktas turėtų būti naudojamas parašams, bet ne šifravimui. • Išplėstinis rakto naudojimas (Extended Key Usage), { id-ce 37 }, įprastai yra naudojamas lapo (leaf) sertifikate, kad nurodyti sertifikate esančio viešojo rakto paskirtį. Jis savyje turi sarašą objektų identifikatorių (OIDs), kurių kiekvienas nurodo leidžiamą naudojimą. Pavyzdžiui, { id-pkix 3 1 } nurodo, kad raktas gali būti naudojamas TLS ar SSL ryšyje, serverio pusėje; { id-pkix 3 4 } nurodo, kad raktas galibūti naudojamas saugiam el. paštui. Bendraja prasme, jei sertifikatas turi keletą plėtinių, kurie draudžia jo naudojimą, visi draudimai turi būti patenkinti , kad sertifikatas būtų naudojamas pagal paskirtį. RFC5280 pateikiamas specifinis pavyzdys sertifikato, kuris turi ir keyUsage, ir extendedKeyUsage plėtinius: šiuo atveju abudu turėtų būti apdorojami ir sertifikatas gali būti naudojamas tik tuo atveju , jei abudu plėtiniai yra susiję taip, kad gali nurodyti sertifikato paskirtį[????]

X.509 sertifikato pavyzdys:

Pateikiamas su OpenSSL sugeneruotas dekoduoto X.509 sertifikato pavyzdys, skirtas www.freesoft.org. Paties sertifikato dydis yra apie 1kB. Jį išdavė „Thawte“ (ją veliau nusipirko „VeriSign“ ir dabar ji priklauso kompanijai „Symantec“), ką nurodo laukas „issuer“ (išdavėjas). Jo „subject“ turi daug įrašų, bet svarbiausia yra bendras vardas (common name – CN), kadangi ši dalis turi sutapti su hostu , kuris bus autentikuojamas. Taip pat sertifikate yra RSA viešas raktas, po kurio seka parašas, apskaičiuotas imant pirmosios sertifikato dalies MD5 hešą ir jį (hešą) pasirašant (pritaikant šifravimo operaciją) su „Thawse“ RSA privačiu raktu.

$ openssl x509 -in freesoft-certificate.pem -noout -text

Certificate:

   Data:

       Version: 1 (0x0)

       Serial Number: 7829 (0x1e95)

       Signature Algorithm: md5WithRSAEncryption

       Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc,

               OU=Certification Services Division,

               CN=Thawte Server CA/emailAddress=server-certs@thawte.com

       Validity   

           Not Before: Jul  9 16:04:02 1998 GMT

           Not After : Jul  9 16:04:02 1999 GMT

       Subject: C=US, ST=Maryland, L=Pasadena, O=Brent Baccala,

                OU=FreeSoft, CN=www.freesoft.org/emailAddress=baccala@freesoft.org

       Subject Public Key Info:

           Public Key Algorithm: rsaEncryption

           RSA Public Key: (1024 bit)

               Modulus (1024 bit):

                   00:b4:31:98:0a:c4:bc:62:c1:88:aa:dc:b0:c8:bb:

                   33:35:19:d5:0c:64:b9:3d:41:b2:96:fc:f3:31:e1:

                   66:36:d0:8e:56:12:44:ba:75:eb:e8:1c:9c:5b:66:

                   70:33:52:14:c9:ec:4f:91:51:70:39:de:53:85:17:

                   16:94:6e:ee:f4:d5:6f:d5:ca:b3:47:5e:1b:0c:7b:

                   c5:cc:2b:6b:c1:90:c3:16:31:0d:bf:7a:c7:47:77:

                   8f:a0:21:c7:4c:d0:16:65:00:c1:0f:d7:b8:80:e3:

                   d2:75:6b:c1:ea:9e:5c:5c:ea:7d:c1:a1:10:bc:b8:

                   e8:35:1c:9e:27:52:7e:41:8f

               Exponent: 65537 (0x10001)

   Signature Algorithm: md5WithRSAEncryption

       93:5f:8f:5f:c5:af:bf:0a:ab:a5:6d:fb:24:5f:b6:59:5d:9d:

       92:2e:4a:1b:8b:ac:7d:99:17:5d:cd:19:f6:ad:ef:63:2f:92:

       ab:2f:4b:cf:0a:13:90:ee:2c:0e:43:03:be:f6:ea:8e:9c:67:

       d0:a2:40:03:f7:ef:6a:15:09:79:a9:46:ed:b7:16:1b:41:72:

       0d:19:aa:ad:dd:9a:df:ab:97:50:65:f5:5e:85:a6:ef:19:d1:

       5a:de:9d:ea:63:cd:cb:cc:6d:5d:01:85:b5:6d:c8:f3:d9:f7:

       8f:0e:fc:ba:1f:34:e9:96:6e:6c:cf:f2:ef:9b:bf:de:b5:22:

       68:9f

Kad patvirtinti šį sertifikatą reikalingas kitas sertifikatas, kuris atitinka išdavėją (šiuo atveju Thawte Server CA). Pirmiausia reikia patikrinti ar tas kitas sertifikatas yra CA rūšies, t.y. ar jis gali būti naudojamas kitų sertifikatų išdavimui. Tai atliekama peržiūrint plėtinio X509v3 viduje esančią CA atributo reikšmę. Tuomet RSA viešas raktas iš CA sertifikato yra panaudojamas pirmojo sertifikato parašo dešifravimui, kad būtų ištrauktas MD5 hešas, kuris turi sutapti su apskaičiuotu MD5 hešu. CA sertifikato, tinkančiam aukščiau pateiktam, pavyzdys:

$ openssl x509 -in thawte-ca-certificate.pem -noout -text

Certificate:

   Data:

       Version: 3 (0x2)

       Serial Number: 1 (0x1)

       Signature Algorithm: md5WithRSAEncryption

       Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc,

               OU=Certification Services Division,

               CN=Thawte Server CA/emailAddress=server-certs@thawte.com

       Validity

           Not Before: Aug  1 00:00:00 1996 GMT

           Not After : Dec 31 23:59:59 2020 GMT

       Subject: C=ZA, ST=Western Cape, L=Cape Town, O=Thawte Consulting cc,

                OU=Certification Services Division,

                CN=Thawte Server CA/emailAddress=server-certs@thawte.com

       Subject Public Key Info:

           Public Key Algorithm: rsaEncryption

           RSA Public Key: (1024 bit)

               Modulus (1024 bit):

                   00:d3:a4:50:6e:c8:ff:56:6b:e6:cf:5d:b6:ea:0c:

                   68:75:47:a2:aa:c2:da:84:25:fc:a8:f4:47:51:da:

                   85:b5:20:74:94:86:1e:0f:75:c9:e9:08:61:f5:06:

                   6d:30:6e:15:19:02:e9:52:c0:62:db:4d:99:9e:e2:

                   6a:0c:44:38:cd:fe:be:e3:64:09:70:c5:fe:b1:6b:

                   29:b6:2f:49:c8:3b:d4:27:04:25:10:97:2f:e7:90:

                   6d:c0:28:42:99:d7:4c:43:de:c3:f5:21:6d:54:9f:

                   5d:c3:58:e1:c0:e4:d9:5b:b0:b8:dc:b4:7b:df:36:

                   3a:c2:b5:66:22:12:d6:87:0d

               Exponent: 65537 (0x10001)

       X509v3 extensions:

           X509v3 Basic Constraints: critical

               CA:TRUE

   Signature Algorithm: md5WithRSAEncryption

       07:fa:4c:69:5c:fb:95:cc:46:ee:85:83:4d:21:30:8e:ca:d9:

       a8:6f:49:1a:e6:da:51:e3:60:70:6c:84:61:11:a1:1a:c8:48:

       3e:59:43:7d:4f:95:3d:a1:8b:b7:0b:62:98:7a:75:8a:dd:88:

       4e:4e:9e:40:db:a8:cc:32:74:b9:6f:0d:c6:e3:b3:44:0b:d9:

       8a:6f:9a:29:9b:99:18:28:3b:d1:e3:40:28:9a:5a:3c:d5:b5:

       e7:20:1b:8b:ca:a4:ab:8d:e9:51:d9:e2:4c:2c:59:a9:da:b9:

       b2:75:1b:f6:42:f2:ef:c7:f2:18:f9:89:bc:a3:ff:8a:23:2e:

       70:47

Tai save pasirašančio (self-signed) sertifikato pavyzdys, kadangi ir išdavėjas (issuer), ir subject yra tas pats. Nėra kito būdo patikrinti šį sertifikatą, nebent jį palyginti su savimi. Vietoje to šie šakniniai (top-level, t.y. medžio viršūnėje esantys) sertifikatai yra saugomi su kiekviena naršykle, kaip jau buvo minėta anksčiau. „Thawte“ yra viena iš šakninių (root) sertifikatų CA, pripažinta „Microsoft“, „Netscape“ ir kt. Šis sertifikatas yra instaliuojamas kartu su naršykle ir juo pasitikima pagal nutylėjimą. Šis sertifikatas egzistuoja jau ilgą laiką ir juo yra globaliai pasitikima, bei juo galima pasirašyti viską, kadangi jis neturi jokių apribojimų (constraints) X509v3 pagrindinių apribojimų sekcijoje. Jį atitinkantis privatus raktas privalo būti kruopščiai saugomas.

cc

a

S

S

Si PAVYZDYS ŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽŽ

Analizė atliekama simuliuojant įsilaužėlių (hakerių) naudojamus metodus, bei logiką. Proceso metu analizuojamas sistemos pažeidžiamumas, kurį gali įtakoti prasta arba neteisinga sistemos konfigūracija, žinomos ir/ar nežinomos aparatinės bei programinės įrangos problemos siejamos su saugumu. Aptikus bet kokią saugumo spragą pranešama sistemos savininkui. Kartu su įsilaužimo įvertinimu pateikiami apsaugos trūkumai ir suteikiamos trūkumų pašalinimo rekomendacijos, parenkamos efektyviausios trūkumų šalinimo priemonės. Įsilaužimo įvertinimo metodai:

  1. Išorinio įsilaužimo galimybės įvertinimas, tai dažniausiai pasirenkamas įsilaužimo galimybės įvetinimo metodas. Testas yra sukoncentruotas į serverius, infrastruktūrą ir į pagrindinę programinę įrangą. Tai gali būti atlikta be išankstinių žinių apie nutolusį tašką ("juoda" dėžė) arba atskleidus pilną tinklo topologiją ir aplinką ("balta" dėžė). Šios analizės metodas tipiškai atspindi viešai prieinamą informaciją apie užduotą tašką, tinklų išvardinimo fazėje identifikuojami ir analizuojami pagrindiniai kompiuteriai bei įrenginių, tokių kaip maršrutizatoriai ir ugniasienės, elgsenos. Pagrindinio kompiuterio pažeidžiamumai turi būti nustatyti, patikrinti ir įvertinti.

  2. Vidinio įsilaužimo galimybės įvertinimas, tai išsamesnis saugumo testas konkrečioje vietoje, atliekamas po išorinio įsilaužimo galimybės įvertinimo. Įvertinimas vykdomas iš kiekvieno tipinio tinklo prisijungimo taško, atvaizduojant kiekvieną loginę ir fizinę atkarpą. Pavyzdžiui tai gali būti keli aukštai ir DMZ zona su visa supančia aplinka, įmonių tinklai arba kompanijos ryšio partneris.

  3. Mokamų programų saugumo įvertinimas skirtas nustatyti ir įvertinti užsakomų programų riziką. Labai svarbu įvertinti riziką tam, kad nebūtų išduodami pranešimai pagrindinių servisų ar programų atakoms vykdyti. Apriboti sukompromituoto vartotojo galimybę pakenkti sistemai, pakeisti ar visiškai sunaikinti duomenis.

  4. Nutolusio bevielio tinklo įsilaužimo galimybės įvertinimas siejamas su sparčiai daugėjančiomis nutolusiomis darbo vietomis. Dirbantys namuose ar nutolusiuose ofisuose, tiesiogiai prijungti bevieliu tinklu prie interneto, išplečia įmonių perimetro galimybes.

  5. Telefonijos įsilaužimo galimybės įvertinimas, tai korporacijos balso technologijos saugumo įvertinimas. Taip pat nuo piktavališko prisijungimo prie PBX maršruto, balso pašto dėžutės išskleidimas ir saugumas, integruoto balso per IP (VoIP).

  6. Socialinės inžinerijos galimybės įvertinimas, tai ne techninis įsilaužimo galimybės metodas remiasi žmogaus noru bendradarbiauti su kitais žmonėmis, prasilenkiant su saugumo reikalavimais.


Naudota literatūra (NE MANO)

  1. http://en.wikipedia.org/wiki/Penetration_test

  2. http://www.penetration-testing.com/#1

  3. http://www.isagency.eu/v2/lt/solutions/home/1.html