Цифровая гигиена: ЭЦП, SMS и много других непонятных слов
Настолько ли безопасно использование SMS-паролей на портале электронного правительства? Разбираемся, как минимизировать риски.
Возможно, эта история началась и более двух лет назад, но я про нее узнал 1 июня 2017 года из новости на Profit.kz. Признаться, я достаточно долго не мог поверить, что это всерьез и надолго (теперь верю). Я пытался донести свои опасения о применении одноразовых SMS-паролей при оказании государственных услуг на разных уровнях: от кулуарных встреч до официальных писем и совещаний у вице-премьера. Пробовал и донести свою мысль публично.
Не знаю, мои аргументы на самом деле не понимали или очень качественно делали вид, что не понимают, но, так или иначе, как видите, все это не возымело должного эффекта. Государственный орган, управляющий работой портала «электронного правительства» (тогда — МИК РК, сейчас — МЦРИАП РК), шаг за шагом продолжает наносить урон информационной безопасности граждан, пользующихся сайтом Egov.kz. Причем, по моему скромному мнению, делает это с нарушением законодательства РК.
И тут вы скажете, что SMS-пароли и Telegram-бот — это ведь очень удобно! И я с вами соглашусь. Это, действительно, очень удобно. Но вот настолько ли безопасно, как использование ЭЦП? По моему мнению — нет. Законно ли использовать для получения государственных услуг в электронном виде лишь только одноразовые SMS-пароли? По моему мнению — тоже нет.
Давайте попробуем вместе разобраться, почему я так думаю, а также понять, как минимизировать свои риски.
Требования законодательства
В одной из предыдущих заметок о цифровой гигиене я упоминал вскользь о Приказе Министра по инвестициям и развитию Республики Казахстан от 19 января 2016 года № 10 «Об утверждении Правил классификации государственных услуг в электронной форме для определения способа аутентификации услугополучателя». Теперь давайте рассмотрим его детальнее.
Вышеуказанный приказ устанавливает критерии с целью определения способа аутентификации услугополучателя для каждой государственной услуги, оказываемой в электронной форме. Согласно приказу, существуют следующие способы аутентификации:
— логин/пароль;
— логин/пароль + ЭЦП;
— логин/пароль + одноразовый пароль.
Под способом аутентификации «логин/пароль + одноразовый пароль» понимается следующее:
«при способе „логин/пароль + одноразовый пароль“ услугополучатель на портале или в мобильном приложении использует логин и пароль, выбирает государственную услугу, формирует запрос, вводит одноразовый пароль, отправленный на абонентский номер сотовой связи услугополучателя, и направляет запрос услугодателю».
Что же на деле? На Egov.kz можно войти при помощи одноразового пароля и получить услугу при помощи одноразового пароля. Т.е. и для входа на портал, и для получения ряда государственных услуг достаточно только двух одноразовых паролей. Никаких логинов/паролей, никаких ЭЦП. Аналогично и для Telegram-бота @EgovKzBot.
Я, конечно, не юрист, но здесь и не нужно быть им, чтобы увидеть прямое нарушение вышеуказанного приказа.
Какие последствия? По мне, услуга, полученная с нарушением законодательства РК, не является законной. А значит и все справки, полученные исключительно при помощи одноразовых SMS-паролей, являются недействительными, т. к. получены с нарушением законодательства РК. И, да, это происходит уже на протяжении более чем двух лет. И, да, я периодически говорю об этом на протяжении всего этого времени. По-моему, даже какие-то поручения раздавались, но воз и ныне там.
Принцип работы ЭЦП
Но я руководствуюсь не только требованиями законодательства. Сам принцип работы ЭЦП существенно отличается от других технологий.
Забегая вперед, скажу, что другие используемые на практике технологии не могут техническими методами обеспечить целостность и идентифицируемость информации. Ни логин/пароль, ни одноразовый пароль, ни биометрические параметры, ни, прости Всевышний, цифровая рукописная подпись.
Сначала немного теории. Я постараюсь рассказывать предельно простыми словами, но, по возможности, без ущерба для смысла.
В основе работы казахстанской ЭЦП лежит асимметричное шифрование. Желающие разобраться детально могут сходить по ссылке, а я скажу кратко: для подписи сообщения или файла используется закрытый (private) ключ того, кто подписывает, а для проверки любой желающий может использовать открытый (public) ключ того, кто подписал. Открытый ключ может безопасно распространяться по открытым каналам связи. Закрытый ключ, как вы понимаете, должен храниться в строжайшем секрете. В идеале, никогда, ни при каких обстоятельствах не покидать устройство, где он был создан и хранится.
Что же нам дает ЭЦП? Прежде всего, вот это:
— целостность — подтверждение того, что информация не была изменена при передаче и/или хранении;
— идентифицируемость — подтверждение того, что информацию отправил именно этот субъект (человек) и предотвращение отказа отправителя информации от факта, что информация была отправлена именно им.
Другими словами, ЭЦП дает возможность техническими средствами подтвердить, что именно данная информация была отправлена именно этим человеком и что данная информация не была изменена после формирования электронной подписи. Разумеется, все это верно лишь тогда, когда человек владеет и пользуется ключами ЭЦП законно.
Практический пример
При выпуске ЭЦП в Национальном удостоверяющем центре РК, генерируется два файла с именами AUTH-что-то-там.p12 и RSA-что-то-там.p12. В каждом из них есть своя пара закрытый-открытый ключ. Пара ключей из файла, начинающегося на AUTH, нужна для входа на портал «электронного правительства», а пара ключей из файла, начинающегося на RSA, для подписания запросов на оказание государственных услуг. Возможно, скоро ситуация изменится, но сейчас это так.
Для примера, подпишем вот этот текст (в действительности, на портале «электронного правительства» используется специальный формат файла электронного документа, но он мне неизвестен, а разбираться лень):
Добрый день! Будьте добры, выдайте мне адресную справку. Мой ИИН: 760724300757.
Результат подписания вышеуказанного текста моей действующей ЭЦП от НУЦ (строка длинная, если захотите проверять, убедитесь, что скопировали ее полностью: в конце строки два знака «=»):
H68t06Mm0v60ZjYZB5JerCvJw4Fx4JlGlDFimDw28rPoOuCiZrSN2p8lcd9PdEZw6uyDFL3HNFrb7
Gy/eK1YBECLcBBUFkvMI2NjP+qdY2imibcICN5/NvZ4oyTZv0m4E8oVDyLCjIc9YlZV5vK4V60SRH
2oLKSWxw8f4jeovj6sHamyS3Lhci16b72WCI9slnOGlxTblOgzlTY+ZFjPyOftyN9MTv9tzJk9Sud
YMW13FGHlc7fnoSgDhqAbLdVqwkAjBZkCwG23061uUFtAwitBEDDLeCN1bcXTSZ9jsA9kLgYZGCin
6bSW6sa/x8ylp1c81Q/SGFixV3dZoqnWOg==
А это открытый ключ моей действующей ЭЦП от НУЦ:
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoOpzGe/KwsRVnPyjTLBQ
2K2LBx/4ili375XALYjDBO1r2N5183kDTU+3TWrDPJsT5MqJuM+V1LuWxo/RQ7lL
ztW19JQOy0CoxQ2skUE9PkzflicRLD8WstWt1foaNkNVIdS9U29A8VZDv7Xrt4my
U0/mEyJ1QV8OtQFVO0SFTmJoeKjZBAo1BNz64H3v9NJVNBUsrVNv6n1wgc1Ys+Lg
292D2ASVI0q176xcfwqQTC9OE5La/IXc5/tW3gqOtJ5u7dQrdvkCfGIymKtMxG+p
y6G24rNB+symJ9uAecREdu1q73KRGM5tNW2pMFThit6cf7MwSiyuKxtIMMhuNJam
0QIDAQAB
-----END PUBLIC KEY-----
Обладая сообщением, подписью, открытым ключом и базовыми навыками работы с OpenSSL, можно самостоятельно проверить, соответствует ли подпись содержимому сообщения, т. е. не вносились ли в него изменения и я ли его подписал. Если проверка будет успешной, значит, текст сообщения не изменялся после подписания и его подписал именно я. В противном случае, либо текст был подписан не мной, либо в него были внесены изменения.
Это очень упрощенный пример. Нам еще надо зафиксировать дату и время подписания. Да много еще чего надо, но, для понимания принципа работы, этого примера вполне достаточно.
Цифровые внутренности
Изначально, при написании этой статьи, здесь был разбор результата оказания реальной государственной услуги, полученной через портал «электронного правительства». Однако, дописав статью, я понял, что получился очень большой и сложный для неподготовленной аудитории материал. Как вы догадались, мной было принято единственно верное решение: разделить статью на две. После ее публикации второй части, здесь будет ссылка на нее.
Сухой остаток
Таким образом, использование ЭЦП на портале «электронного правительства» позволяет убедиться, что запрос отправили именно вы, что он именно такой и что он не был изменен (целостность и идентифицируемость).
Напомню, другие используемые на практике технологии, в том числе полюбившиеся многим одноразовые SMS-пароли, не могут техническими методами обеспечить целостность и идентифицируемость информации.
И тут вы спросите: а зачем вообще убеждаться в целостности и идентифицируемости? Чаще всего, незачем. Но при возникновении спорной ситуации вы не сможете доказать, что отправили именно этот запрос, а не какой-то другой. Лично я не доверяю информационным системам государственных органов. Кто знает, не отредактирует ли кто-либо мой запрос? А проверить я это могу только тогда, когда подписал его своей ЭЦП.
И тут вы еще раз спросите, а это, вообще, возможно, чтобы вот так, без согласия услугополучателя, менялся запрос? Так быть не должно, конечно. Но гарантии, что этого никогда не случится, Минздрав, быть может, и даст, но не я.
Обладая определенным жизненным опытом, осмелюсь предположить: если для того, чтобы волшебным образом оказаться невиновным, нашему государственному служащему нужно будет изменить информацию в вашем запросе на оказание государственной услуги, ему очень сложно будет отказаться от соблазна. Полагаю, о том, возникнут ли у вас какие-либо проблемы, а если возникнут, то какие, он подумает далеко не в первую очередь. Если подумает вообще. Нет, это не я так плохо думаю о наших госслужащих, это жизнь такая. Вы ведь и сами видите, что происходит вокруг.
Зачем же создавать лазейки (читай — провоцировать) там, где изначально было сделано правильно? По крайней мере, выглядело так, как будто сделано правильно.
Так что же делать? Как минимизировать свои риски при работе с порталом «электронного правительства»?
Думайте
Да-да, думайте. Старайтесь не принимать на веру слова посторонних лиц, касающиеся информационной безопасности. Даже мои :) Проверяйте и перепроверяйте полученную информацию. Благо, в наше время это достаточно легко сделать.
Задавайте вопросы
Так случилось, что наши государственные органы, внедряя что-то новое, говорят о том, какую огромную это принесет пользу, а о наносимом вреде скромно «забывают». Так вот, если в информационных системах стало удобнее пользоваться штуками, касающимися информационной безопасности, нужно обязательно убедиться, что это сделано не в ущерб самой информационной безопасности.
Не стесняйтесь задавать вопросы типа «Чем пришлось пожертвовать ради того, чтобы стало удобнее?», «Какие, наряду с плюсами, есть минусы у нового решения?». Это тоже легко сейчас делать даже официально, я уж не говорю о блогах руководителей государственных органов и об их аккаунтах в соцсетях. Ну, а если вы — журналист, тут еще проще.
Не знаете, как правильно сформулировать вопрос? Спросите/подсмотрите у знающих людей.
Генерируйте ключи ЭЦП самостоятельно
Сейчас имеется возможность генерировать ключи ЭЦП самостоятельно, даже если вы получаете ЭЦП впервые (сайт Национального удостоверяющего центра вам в помощь). К моему удивлению, почти никто этого не знает. Помните, если ключ ЭЦП сгенерирован не вами, то лица, сгенерировавшие его, при желании, могут получить доступ к секретному ключу, а это не есть хорошо.
Насколько нехорошо? Настолько, что эти лица смогут от вашего имени обращаться во все государственные информационные системы (также, возможно, в некоторые негосударственные), куда возможен доступ по ЭЦП от НУЦ. Например, подать через судебный кабинет исковое заявление от вашего имени. Уверен, продвинутые мошенники смогут рассказать гораздо более изящные и более доходные для себя способы.
Не используйте «пароли по умолчанию» для ключей ЭЦП
Если вдруг кто-то незаметно «увел» ключи от вашей ЭЦП, но не знает пароль от них, вероятность, что этот кто-то навредит вам, резко снижается. Поэтому, не соглашайтесь на «пароли по умолчанию». Создавайте свои пароли. Только не забудьте их :) Хотя, даже если и забудете, можно выпустить новые ключи ЭЦП, а старые отозвать.
Не передавайте ключи ЭЦП другим лицам
Никогда, ни при каких обстоятельствах, не передавайте секретный ключ ЭЦП кому бы то ни было. Даже тем, кому безгранично доверяете.
Старайтесь не оставлять свое удостоверение личности без присмотра, если в его чипе хранятся ключи вашей ЭЦП. У меня нет уверенности, что из чипа удостоверения личности нельзя получить ключи ЭЦП. И чем дольше я живу, тем меньше моя уверенность, что этого нельзя сделать.
Последствия могут быть нехорошими (см. пункт про самостоятельное генерирование ключей ЭЦП).
Отзывайте скомпрометированные ключи
Да, есть такая процедура: отзыв ключей ЭЦП. И, если вы считаете, что ключи от вашей ЭЦП каким-то образом скомпрометированы, смело выпускайте новые, а старые отзывайте.
Что значит скомпрометированы? Например, вы подозреваете или знаете, что к ним получил доступ кто-то кроме вас или что кому-то стал известен пароль от ваших ключей ЭЦП.
Не добавляйте номер мобильного телефона на портал «электронного правительства» без особой надобности
Если в личном кабинете портала «электронного правительства» не указан номер вашего мобильного телефона, вы не сможете получать государственные услуги с подтверждением по SMS-паролю. И злоумышленники тоже. В том числе и недобросовестные сотрудники государственных органов.
Да, я понимаю, что иногда люди осознанно готовы пойти на определенные риски. Именно осознанно, т. е. четко отдавая отчет, какие могут быть последствия. Тогда укажите другой ваш (именно ваш, т. е. оформленный именно на вас) номер мобильного телефона, который никто не знает. И не оставляйте SIM-карту от этого номера без присмотра. Это немного снизит имеющиеся риски. Нет, ни в коем случае не нужно рассказывать о существовании этого номера кому-то еще, указывать его при регистрации на других интернет-ресурсах или оставлять в каких-либо объявлениях.
Вообще, нужно очень аккуратно подходить к распространению вами информации в открытом доступе как о себе, так и о других. Но, да, это уже совсем другая история.