Статья уточнена и дополнена официальной информацией Департамента государственной инфосистемы Эстонии.
Продолжение темы: "Эстония выбрала "комбинированный" способ закрытия дыры в своих ID-картах"
Причина заключается в потенциальных проблемах в безопасности в 750 000 ID-карт, выпущенных после 17 октября 2014 года. Для страны с населением 1,3 млн. человек это означает, что инцидент затрагивает практически каждого.
О том, что у эстонских ID-карт есть проблемы с безопасностью, стало известно еще 30 августа. Тогда некие "зарубежные ученые" предупредили правительство страны о том, что ID-карты скомпрометированы — можно украсть "цифровую личность" любого гражданина страны, после чего подписывать от его имени электронные документы, пользоваться его банковскими счетами, голосовать на выборах.
Департаменту государственной инфосистемы (Riigi Infosüsteemi Amet, RIA) Эстонии потребовалось менее недели, чтобы подтвердить — проблема действительно существует (вот тут большое разъяснение на русском языке, опубликованное уже после написания этой статьи).
Одновременно серверы, которые хранят открытый ключ, используемый в системе ID-карт, были отправлены в оффлайн, что, по большому счету, сделало эстонские ID-карты обычными оффлайновыми удостоверениями личности (хотя технически сертификаты безопасности не были аннулированы — это пока оставили на усмотрение каждого конкретного владельца карты). Для электронных транзакций и авторизации в банках и системах государственного е-управления жителям страны пока настоятельно рекомендовано пользоваться решением Mobile ID — оно не скомпрометировано.
Во-вторых, проблема кроется не в самой системе электронной подписи и ID-карт Эстонии, а лишь в программном обеспечении в чипах на самих ID-картах. Более того, она затрагивает не только эстонские ID-карты, но и вообще все карты с конкретным чипом или программами конкретного производителя. Таковых во всем мире около миллиарда. 750 000 эстонских ID-карт на этом фоне — это менее 0,1% от общего числа.
Имя разработчика чипов или Java-апплета на них не называется, однако ID-карты для Эстонии делает крупная компания Gemalto. Ее производители на пресс-конференции во-вторник подтвердили факт наличия проблем. Интересно, что эта компания также является партнером банка SEB в Латвии, делая для него бесконтактные расчетные карты. Кроме того, она поставляет "пластиковые" (не электронные) элементы защиты латвийских паспортов.
Этот инцидент также связан с Латвией через держателя тех самых "выключенных" серверов — SK ID Solutions (в прошлом — Sertifitseerimiskeskus). Клиенты Swedbank, SEB и, возможно, других банков в Латвии пользуются его мобильным приложением Smart-ID, предназначенным для авторизации в е-банках.
Сейчас власти Эстонии взяли тайм-аут на то, чтобы совместно с партнерами решить — что теперь делать. Это может занять несколько месяцев. Под вопросом и электронное голосование на предстоящих 15 октября выборах в самоуправления, а ведь эстонцы к е-голосованию уже привыкли (в 2015 году свой голос удаленно отдали 30% голосовавших). При всем при этом правительство страны однозначно заявило — эта проблема не заставит Эстонию свернуть с е-пути. Решение с ID-картами будет найдено и, похоже, что за ценой страна не постоит — ведь ее история е-успеха является национальной гордостью.
Инцидент практически исчерпан? Только не для тех, кто хотел бы все же знать — а что, собственно, случилось-то? Хотя бы для того, чтобы не повторять ошибок соседей. И вот тут начинается самое интересное.
1. Тайна, покрытая е-мраком
Официально ни власти Эстонии, ни Gemalto не раскрывают никаких деталей (даже в подробном объяснении на русском языке). Не называется даже название научной организации или группы исследователей, которые нашли уязвимость в ID-картах, используемых в Эстонии (и, очевидно, во многих других странах мира). К сожалению, как мы уже писали в материале про перспективы е-голосования в Латвии (спойлер: они равны нулю), отсутствие внятной информации о деталях работы системы е-голосования и е-подписи — визитная карточка Эстонии. Обещано лишь, что их работа будет представлена на научной конференции этой осенью.
Однако эстонское издание Geenius, поговорив с эстонскими же экспертами, сумело выстроить (эст.) крайне правдоподобную картину того, что же на самом деле случилось.
Для начала совсем небольшой ликбез. Эстонские ID-карты (как и латвийские, и любые другие) построены на криптосистеме с открытым ключом. Это золотой стандарт в мире шифрования, им пользуются буквально все и всюду.
Чтобы подписать какой-то документ электронным образом или же зайти в какую-нибудь систему, используется два ключа. Один — открытый — хранится на публично доступных серверах. Второй — закрытый — на компьютере, в мобильном телефоне или же ID-карте пользователя. Открытый ключ нужен для того, чтобы расшифровать "сообщение" (пароль, е-подпись, и т.д.), сгенерированное с помощью секретного закрытого ключа пользователя.
В нормально функционирующей системе знание открытого ключа не дает злоумышленнику никаких преимуществ. Более того — в Эстонии до этой недели (пока серверы с открытыми ключами не отправили в оффлайн) кто угодно мог получить чей угодно открытый ключ. Для этого надо было всего лишь знать персональный код человека. Учитывая, что у наших соседей персональные коды чиновников и даже членов правления фирм находятся в более или менее открытом доступе, при желании можно было получить и открытый ключ хоть самого премьер-министра. Но это и нормально — а как иначе расшифровать полученное от него письмо?
Но вот 30 августа власти Эстонии получили информацию об уязвимости в системе ID-карт, а пять дней спустя они отключили серверы с открытыми ключами. О чем это может говорить? Например, о том, пишет Geenius, что появилась возможность восстановить из открытого ключа другой ключ — закрытый, секретный, хранящийся непосредственно в Java-апплете на чипе ID-карты.
Теоретически это всегда возможно — нерешаемых функций в криптографии не бывает. Однако практически для этого нужна или нетривиальная вычислительная мощность, которой сегодня нет даже у суперкомпьютеров, либо такое время, которое выходит за рамки разумного.
Вероятно, некие исследователи обнаружили, что алгоритм создания пар ключей в системе ID-карт в Эстонии серьезно ослаблен. Настолько серьезно, что для восстановления закрытого ключа из открытого нужны такие вычислительные мощности и/или время, наличие которых у современных хакеров вполне вероятно.
"Например, возможно, что хотя секретные ключи генерируются из полностью случайных чисел, оказалось, что эти "случайные" числа на самом деле не были случайными, — пишет Geenius — Мы очень упрощаем, но допустим, что нам нужно генерировать десять случайных чисел, и по какой-то причине мы делаем так, чтобы начало чисел было одинаковым все время, например, 123456789, и мы обмениваемся только двумя последними цифрами. Итак, первое "случайное" число — 12345678945, следующее 12345678924 и так далее. Тогда не нужно угадывать длинное случайное число, в результате сложность вычислений для получения закрытого ключа радикально снижается".
Если это предположение верно, отключение серверов с открытыми ключами — половинчатое решение. Во-первых, злоумышленники могли заранее их скачать и сохранить. Во-вторых, найти их в других источниках даже сейчас для знающих людей — не большая проблема. Да, не все 750 000, и да — это не будет быстро. Но при большом желании…
Тем более, что опрошенные изданием эксперты оценили взлом 750 00 скомпрометированных ключей ID-карт Эстонии в 60 млрд. евро. Это 80 000 евро на каждую е-подпись. Если брешь упрощает вычисления хотя бы на порядок, то стоимость взлома цифровой личности отдельного пользователя падает до 8000 евро. Для получения е-подписи обычного человека эта сумма все еще слишком велика, а вот если речь идет о председателе правления какой-нибудь фирмы, с помощью е-подписи которого можно проводить сделки на миллионы — уже вполне доступна.
Вполне вероятно, что на самом деле ошибка настолько серьезна, что "цена взлома" одной е-подписи ниже 8000 евро — и значительно. На это намекает как то, что ученые для доказательства своей теории должны были проверить ее практикой (обновлено: официальная позиция RIA заключается в том, что нет, на практике это проверено не было), так и то, что власти Эстонии впервые официально и очень быстро признали существование у ID-карт проблемы технического характера, а также отнеслись к ней серьезно. ID-карты у наших соседей не безгрешны — мы в прошлом уже поднимали эту тему.
2. Жаль не денег, жаль е-образа
Пока мы не знаем достоверно что произошло, говорить о цене решения проблемы в евро не приходится. Однако, если все предположения экспертов верны и действительно скомпрометированы чипы или Java-апплеты на них, то все становится одновременно и сложно, и просто. Просто — потому, что решение очевидно: заменить негодные чипы или приложение на новые, годные. Сложно — потому, что это — Эстония.
Если бы речь шла про Латвию с ее ID-картами, проблема бы затронула бы, возможно, и не меньшее количество людей, но гораздо меньший процент из них почувствовал бы какое-нибудь неудобство или позыв немедленно бежать и менять карточку. Например, ID-карта автора статьи хоть и содержит е-подпись, однако в реальной жизни он ее в таком качестве не использует. Просто потому, что в Латвии практически везде можно авторизоваться с помощью е-банков. Рискнем предположить, что примерно тоже самое могут сказать и очень многие наши читатели. Поэтому если бы карточка внезапно превратилась бы в "тыкву", то есть лишилась бы е-подписи на чипе, для большинства латвийцев это было бы небольшим неудобством.
В Эстонии ID-карта играет значительно более важную роль и потеря ее основной функции для жителей страны гораздо более болезненна. Поэтому и "чинить" ее бросятся пусть и не все, но очень многие.
Если ее чип действительно скомпрометирован, у властей Эстонии, по версии Geenius, есть три выхода из положения — в зависимости от того, что действительно произошло.
Во-первых, можно просто перегенерировать ключи (на сей раз с более вменяемым алгоритмом) и создать программу, которая перепишет их на ID-картах. Правда, убедить 750 тыс. пользователей в том, что им надо скачать эту программу — та еще PR-задача. Особенно если учесть, что все большее людей и от компьютеров-то отказывается.
Во-вторых, карты можно "перезаписать" в эстонском аналоге УДГМ или в отделениях полиции и погранохраны. Убедить 750 000 человек в том, что им надо в них явиться — тоже "интересная" задача.
В-третьих, ID-карты можно перевыпустить заново, как в этой ситуации бы сделал любой банк со своими расчетным картами. Самое простое, но и самое дорогое во всех смыслах решение.
Будет интересно посмотреть, что выберет правительство Эстонии. Тем более, что два этих метода — перегенерация ключей и выпуск новых карт — нашими соседями уже опробованы в 2016 году. Но тогда это пришлось сделать из-за технических особенностей новой версии браузера Google Chrome. И проблема затронула небольшое число пользователей, поэтому процесс прошел быстро.
Сегодня речь идет о, потенциально, замене большей части выданных в Эстонии ID-карт. И причина при этом не "чисто техническая", а очень и очень неприятная. Поэтому, чтобы в Эстонии ни выбрали — удар по е-гордости уже нанесен. Имидж "успешного е-государства" подорван и снаружи и, возможно, и изнутри.
Ситуацию усугубляет то, что пока Эстония вновь идет по пути умолчания. Вообще-то об инцидентах в области безопасности в IT-индустрии принято рассказывать, и рассказывать достаточно подробно. Особенно, если они случаются со знаковыми и распиаренными продуктами или проектами. Такими, как "первое в мире электронное государство", например.
Молчание в этом случае порождает волну слухов и неприязненное отношение со стороны экспертов и влиятельных изданий, формирующих общественное мнение. Например, таких, как британская Financial Times, которая подала новость об инциденте с ID-картами под едким заголовком: "Red faces in Estonia over ID card security flaw".