Архив за етикет: SSL

А ти знаеш ли, аз кой съм?

Преди известно време си загубих дебитната карта. На кърджалийския клон на ПИБ им отне повече от месец да ми издадат нова. Точно в този месец аз нямах никаква нужда от тази дебитна карта, но можеше и да имам!1 Поради това реших да пробвам услугите и на някоя друга банка – Пощенска.

Едно от твърдите изисквания към новият кандидат е да има електронно банкиране, което да работи под ГНУ/Линукс. Имам предвид, наистина да работи, без такива „ама ти си генерирай сертификата под IE, пък после ще си го експортнеш“. Похвално е , че от Пощенска банка отговаряха на това условие.2

За съжаление, разглеждайки техния сайт, за да прочета условията на въпроснaта улуга се натъкнах на нещо неприятно. Сертификатът на e-postbank.bg беше с изтекла валидност. Като културен кандидат-ползвател писах на поддръжката за проблема – хора сме, всеки може да забрави или обърка нещо. Отговорът който получих, макар и светкавично бърз, не беше много обнадеждаващ:


Zdraveite,

Problemat se reshava v momenta. Za da vlizate v saita za online banking, natiskate butona „continue“ I sled tova „yes“.

Proverete do koga vaji lichnia Vi sertifikat, koito e na browsera. Ako takav lipsva, molia instaliraite go.
Za poveche informacia, molia zvunnete na 9698333.

Pozdravi!

Нещото, което липсва в този отговор е отношението към сигурността, което искам да има в моята банка. Напротив, той само би могъл да обърка един неопитен потребител. Проблемът с безразборното цъкане върху бутони от вида на „ОК“, „Продължи“ и подобни и без това е достатъчно голям. И ще се задълбочава все повече, особенно след излизането на най-новата версия на една „операционна система“ – нейните ползватели доста бързо се приучават на това.

Целта на текста който следва е да помогне за малко по-сигурната употреба на електронни услуги. Няма да навлизам в детайли кое как работи, но в същото време няма да се огранича само с „ако има катинар, всичко е ОК!“. За всеки заинтересувал се (препоръчвам, който доверява парите си на това да се поинтересува) в Интернет има купища информация по темата. Това ще е съвсем повърхностно описание и няколко практически съвета какво да (не) правите.

Всички технологии за сигурност в Интернет осигуряващи защита на информация от подслушване, удостоверяване на самоличност, цифрово подписване и подобни са реализирани с помощта на криптография. Това е наука, която се заниамва с използването на определени математически свойства за постигане на горните цели.

Един от първите термини с който се сблъсква потребител на сигурни електронн услуги е двойка ключове. Това са двойка допълващи се много големи числа. Едното от тях наричаме публичен ключ, другото частен ключ. Ако аз искам примерно да подпиша цифрово един документ трябва да използвам частния ключ от моята двойка. Ако някой иска да провери валидността на едно такова подписване, то той трябва да знае публичния ми ключ.

Малко по-късно идва и думичката сертификат. Той представлява публичен ключ, заедно с информация идентифицираща кой точно е неговия притежател – име, адрес на електронна поща, адрес на сървър в интернет, начало на валидност, край на валидност и др. Всичко това е подписано от „удостоверител“. Въпросът на който отговарят сертификатите е кой точно субект е притежателят на даден публичен ключ – обикновено искаме да знаем не само, че един документ е подписан от някой, а също кой точно го е подписал.

Аз, както всеки който умее да пише, мога да напиша на лист хартия, че съм да речем Джорд Буш и да се подпиша под това. По същият начин, мога и да си издам сертификат с мой публичен ключ и име Джордж Буш, като пак аз се подпиша и като удостоверител (това се казва самоподписан сертификат). Надали обаче ще мога да изстрелям ядрените ракети на САЩ. Това е така, защото системата за изстрелване на ракетите ще разбере, че моят сертификат е невалиден.

А как системата определя кой сертификат е валиден и кой не? Много просто – в нея има заложен списък от сертификати на един или няколко удостоверителя, на които тя вярва. Може да го сравним със списък с образци от подписите на местните нотариуси да речем. Само в случай, че сертификатът ми е подписан от някой от тях ще мога да предизвикам трета световна война.

Едно от нещата, които искате да знаете, когато използвате своето интернет банкиране е, че сайта с който сте се свързали е действително този на вашата банка и, че обменената информация не може лесно да се подслуша. За целта вместо протокола http, в адресната лента се указва https (или сигурен http). Това изисква от отсрещният сървър да притежава сертификат, че този сървър е действително сървърът, който обслужва да кажем адреса e-somebank.bg. Ако вашата програма за разглеждане на Интернет страници (браузър) прецени, че този сертификат е валиден то тя ще оцвети адресната лента в жълто и ще се покаже така успокояващото катинарче за да ви уведоми.

Както сигурно се досещате във всеки браузър има предварително въведен списък със сертификати на удостоверители и ако сертификатът е подписан от някой от тях той се счита за валиден. Също така се проверява дали текущото време е между времената за начало и край на валидност на сертификата и, че адресът на сървъра отговаря на този посочен в сертификата. Ако някое от тези условия не е налице браузърът ще покаже предупреждение за грешката, и само ако ние изрично дадем команда за продължение ще видим жълтата лента и катинарчето.

Съвет: Винаги внимателно прочитайте текста на съобщенията за грешки на браузъра преди да решите кой бутон да натиснете – за продължаване или отказ. Ако не сте сигурни консултирайте се с компетентен човек на който имате доверие, или се свържете с организацията собственик на сайта.

Ако не спазвате горната препоръка освен, че може да отворите сайт, който всъщност не е точно този за който се представя можете и без да разберете да добавите още един удостоверител (над който има контрол недобронамерено лице) към списъка на тези на които вашият браузър „вярва“ – да, толкова е лесно! Ако това се случи то вашата система се превръща в лесна мишена, защото по никакъв начин няма да бъдете предупреждавани когато сертификатите на сайтовете които разглеждате са издадени от удостоверителя на измамника.

Да предположим, че всичко е минало добре и ние вече знаем, че си комуникираме точно със уеб сървъра с който искаме. Той обаче все още няма никаква представа кои сме ние. За целта освен (или вместо) по-популярните име и парола той може на свои ред да поиска ние също да представим сертификат. Най-често нашият (клиентски) сертификат ще ни бъде издаден от организацията с чиито сайт се свързваме или ще бъде „универсален електронен подпис“. Частният ключ към този сертификат може да се съхранява както под формата на файл в специално хранилище за сертификати, така и на външно устройство – смарт карта. Преди да може да го използваме трябва да го импортираме в нашия браузър. С цел пренасяне на друг компютър или направя на резервно копие е възможна и обратната процедура – експортиране на сертификат и частен ключ.

Съвети: Грижете се частният ключ към сертификата ви да си остане частен. Съхранявайте го винаги защитен с трудна за отгатване парола. Не го използвайте на случайни компютри.

Трябва да се отбележи, че всички усилия описани по-горе ще бъдат напразни ако компютърът ви е изцяло компрометиран и примерно някой недобронамерен има пълен достъп до него. За да знаете, че това не е така трябва да сте сигурни за произхода на всичкия софтуер който е инсталиран. В повечето съвременни Линукс дистрибуции това не е особенно трудно. Обикновено самата пакетна система с която ще инсталирате софтуера има възможност да провери валидността на цифров подпис върху всяка една от програмите.

Също така не е много ясно как се определя сертификатите на кои точно удостоверители да са включени в браузърите – за всеки май е различно. А и бизнес моделът на продаващите удостоверителни услуги е доста апетитен – няколко килобайта случайни числа срещу десетки или стотици долари на година. А колко труд си правиш за да провериш действително самоличността на клиента – не се знае. Примерно имало е случаи в които Verisign (държат >50% от пазара на тези услуги и ги има във всички браузъри) са издавали фалшиви сертификати. Поради това се прокарват сега разни идеи за хипер-ултра-ама-честно-тоя-път проверени сертификати (естествено доста по-скъпи) при които лентата за адреса щяла да става зелена.

В крайна сметка на кой да вярвате и на кой не си е лично ваша преценка, но винаги имайте едно наум и четете съобщенията за грешки!

А, и ако можете да ми препоръчате някоя банка, ще се радвам да споделите :).


1 – Това е заето от филма „Психаротерапия“ (Anger management). Там двама от героите седят в бар. Единият поглежда някакъв непознат и казва на другия:
– Стори ми се, че този измърмори нещо антисемитско!
Другия:
– Защо, ти да не си евреин?
Първия:
– Не, но можеше и да бъда! ^ обратно горе

2 – Изглежда, че доста от банките в България ползват един и същ софтуер за своето интернет банкиране, който за щастите работи не само с MS продукти – http://www.dais-set.com/software/ ^ обратно горе