Почему запуск системы электронного декларирования превратился в цирковое представление и как подобного избежать в дальнейшем? Второй вопрос, что после ее запуска остаются открытыми несколько важных вопросов. Во-первых, почему технический вопрос превратился в политический. Да еще и вышел на международный уровень. Во-вторых, пока никому непонятны возможные негативные последствия, которые возникнут после запуска не до конца готовой информационной системы. И, в-третьих, что делать государству, чтобы такие ситуации не возникали в будущем. Собственно на эти вопросы я и хочу ответить. В этом материале я намеренно минимизирую использование терминов и технические деталей, чтобы как можно больше людей смогли понять суть проблемы.

Начну с того, что отсекаю версию о заговоре против системы со стороны государства. Со скрытыми доходами бороться она не поможет, так как дорогие авто и недвижимость чиновники давно научились оформлять на 85-летних бабушек (как прокурор Сус), а также юрлиц, у которых можно недорого арендовать авто и недвижимость (так поступает Роман Насиров). О «нулевой декларации» и последующем за ней контроле соотношения расходов и доходов говорят давно (это реально бы помогло бороться с коррупцией), такой законопроект профильным комитетом Рады подготовлен, но политической воли его вынести в зал для голосования, пока еще не появилось. Поэтому, электронное декларирование по своей сути представляет (или должно представлять) лишь удобный сервис, упрощающий процесс заполнения декларации.

Напомню, кстати, что реестры собственности (бизнес, недвижимость, авто) у нас открыты - любой желающий может зайти и проверить что числится на том или ином физлице. Просто пользоваться ими не очень удобно. Поэтому, на мой взгляд, более целесообразным является не создание еще одной базы данных (с декларациями), а потратить деньги на доработку существующих реестров - чтобы в будущем они могли стать эталонными справочниками, обеспечивающими полную прозрачность.

Впрочем, обсуждать действующее законодательство - не вопрос ИТ. Поэтому вернемся к самой разработке. Чтобы оценить ситуацию, ее целесообразно поделить на две условные части. Первая - организационная. Как был организован выбор поставщика услуги, насколько точное ТЗ (техническое задание) ему поставили и в какой мере подрядчик его реализовал, насколько реалистичны сроки и бюджет. Вторая - техническая. Качество самого кода, надежность системы и т.д. На многочисленных ИТ-форумах и в комментариях в соцсетях айтишники делают упор на второй части, хотя первая важнее.

Корень проблем – непрозрачные процедуры

Компании нашей Ассоциации, которые работают с госсектором (кстати, в этом нет ничего зазорного - во всем мире правительственные заказы выполняют такие вендоры, например, как SAP, Oracle, Microsoft, HP, Cisco и так далее) начиная с 2014 года столкнулись с резким падением спроса на разработку программных продуктов со стороны госструктур. Не потому, что в госструктурах решены все вопросы информатизации, а из-за того, что существующие ИТ-системы госслужащие стали массово отключать, заменяя их на новые, закупленные без проведения тендеров у малоизвестных (которые вообще не имеют опыта в разработке такого уровня систем) или даже новосозданных предприятий.

Основание - по мнению чиновников, все созданные ранее разработки (системы документооборота, реестры, системы учета и многое) являются коррупционными. Обходят тендерные процедуры просто: новые ИТ-системы заказываются за грантовые деньги (так как бюджетные средства не используются, тендер проводить не обязательно). На мой взгляд, средства зарубежных доноров стоит использовать на действительно важные потребности, а не на замену, например, работающей системы электронного документооборота на такую же систему электронного документооборота, но другого разработчика (смысла такая операция не имеет, а единственные результат - потраченные деньги).

Время от времени дело доходит до абсурда. Например, в Мининфраструктуры отключили в 2014 году систему учета международных разрешений (программу назвали…. коррупционером), а через какое-то время вновь включили (оказалось, что разработать новую не так уж и просто). Но за то время, пока она не работала, исчезли разрешения на все дефицитные направления (ну как исчезли - их продавали «из под полы» по $300 за единицу). По самым скромным подсчетам, без каких-либо тендерных процедур и с формальной отчетностью было бездумно растрачено порядка $100 млн. Эти закупки никак не отображаются, никем не контролируются. Вдумайтесь только, кому это очень выгодно!

Данную информацию я привел для того, чтобы все понимали общую картину того, как чиновники и грантовые организации воспринимают донорскую помощь. Ценность разработки, удобство использования, безопасность в таких случаях уступают соблазну получения легких денег в виде отката от поставщиков услуг. Стоит отдельно отметить, говоря о грантовых проектах - в Украине не известно ни об одной из разработок, прошедших процедуру проверки в Госспецсвязи вопреки требованиям закона «О защите информации в информационно-телекоммуникационных сетях». Поэтому многие критически важные государственные информационные системы в данный момент уязвимы для хакеров. Плюс есть и другие проблемы, о которых не принято говорить.

В случае с системой электронного декларирования подход к разработке, в общем-то, такой же, просто в данном случае мы видим более изощренную схему.

При чем тут Украина?

Деньги выделялись правительством Дании, тендер проводила организация ПРООН. Участники тендера засекречены, процесс прохождения тендера засекречен, имена экспертов, сказавших, что система полностью готова к эксплуатации, также хранятся в тайне.

Гостендера (и даже конкурса) госструктуры не проводили, техзадания со стороны государства не составлялось. А ответственными назвали именно руководство страны, хотя оно не принимало никакого участия в процессе. Если из-за этой причины нам откажут в безвизовом режиме, то, получается, что пострадают все украинцы, хотя к процессу были причастны только международные организации и их аффилированные лица, а также реципиенты грантов - общественные организации.

После провальной попытки сертификации «сырой» разработки, представители грантовых организаций методом политического и информационного давления на первых лиц государства попытались заставить государство Украина принять в эксплуатацию нечто, что по документам ПРООН является информационной системой, но эксплуатироваться на законных основаниях не может.

Проблемы начались с тендера

Теперь перейдем к тендеру, который объявила международная организация. Уточню - участники тендерной комиссии не являются госслужащими, поэтому, как принято считать, уголовной ответственности за свои действия не несут. Сами понимаете, что это очень удобно.

Сама же тендерная процедура была построена таким образом, что при наличии «заинтересованности» в выигрыше тендера какой-то конкретной компанией организаторы могли легко подтасовать результаты.

А именно: согласно тендерным условиям, участники должны были подать «закрытую» часть предложений, включая цену услуги, в защищенном паролем файле формата «zip». В дальнейшем, на момент раскрытия предложений, участник должен был сообщить пароль к файлу «zip», организатор - ввести его, получить файл с ценой из архива и непредвзято выбрать лучший проект с минимальной ценой.

Мало кто знает, что запароленный файл формата «zip» может быть «вскрыт» в течении часа (например, с помощью такой утилиты https://www.elcomsoft.com/archpr.html). И тендерная комиссия была об этом уведомлена на собрании потенциальных участников в сентябре 2015 года. Однако, несмотря на предупреждение, процедура изменена не была. Те участники, которые подали предложения в запароленном «rar» (который вскрыть нельзя) были отсеяны - им прислали письмо с текстом «ваш файл содержал вирус». То есть, у меня есть обоснованные подозрения в том, что организаторы ЗАРАНЕЕ знали содержимое закрытой части предложений, и «помогли» одному из участников сформировать «правильное» предложение.

Частично подтверждает это предположение то, что тендер внезапно выиграла компания, у которой НЕТ ОПЫТА построения систем с КСЗИ (комплексной системой защиты информации). Это аналогично тому, что банковское хранилище будет строить человек, который до этого делал очень хорошие и красивые скворечники (ведь бронированный сейф и фанерный короб имеют схожую прямоугольную форму).

Все прочие проблемы являются следствием. Заявления же лидеров мнения из facebook являются лишь попыткой увести дискуссию в другую сторону, подменив причину следствием. Справедливости ради, стоит вспомнить и наивные «экспертные» выводы нардепов, продемонстрировавших «взлом» системы - им лучше не комментировать вопросы, в которых они не компетентны.

Что же случилось с декларированием

Баги (ошибки в коде) есть во всех без исключения разработках, а процесс доведения системы до идеала может занять годы (или даже не закончиться никогда). Поэтому я не разделяю энтузиазм коллег, которые организовали в фэйсбуке и на форумах коллективное тестирование, в ходе которого придираются к помаркам. Благо, скрипты были выложены в неминифицированном виде, что собственно и позволило найти большинство «огрехов», которые не так уж и сложно, повторюсь, исправить.

Но есть ряд очень серьезных недостатков, которые не позволят этой информационной системе работать долго.

1) Авторизация пользователя по ЭЦП (электронной цифровой подписи). Как отмечалось в статьях коллег, библиотеки, обеспечивающие работу с ЭЦП, используются неправильно, что приводит к печальным последствиям и напрочь дискредитирует саму идею ЭЦП. Это, конечно, устранимо. При условии привлечения к разработке системы разработчика библиотек ЭЦП. На это нужно несколько месяцев.

2) При правильной настройке библиотек ЭЦП у разработчика ГАРАНТИРОВАННО возникнут проблемы при росте количества зарегистрированных пользователей. Самое страшное, что проблемы начнутся при количестве зарегистрированных пользователей порядка 50 000. То есть не сразу. Дело в том, что используемые библиотеки «из коробки» не позволяют эффективно работать с большим количеством сертификатов (включая отозванные сертификаты) на сервере. Поскольку информации о проведении нагрузочного тестирования системы нет, да и не проводилось оно (по моей информации, ни один центр в Украине не выдавал 50 000 тестовых сертификатов), система «ляжет» при упомянутой нагрузке. Либо - когда (не если, а когда) проблемы с производительностью начнутся, разработчики отключат большинство проверок ЭЦП - и система станет «дырявой».

3) Механизмы авторизации, построенные на неизменяемых куках, никогда не используются в защищенных системах. Любой перехват сетевых пакетов при такой схеме дискредитирует систему авторизации. Обычно так работают те, кто пишет сайты на php (в этом языке программирования это стандартный механизм). Но подход к разработке сложных защищенных информационных систем и к разработке сайтов, сильно отличается.

А нужна ли проверка госспецсвязи?

На форумах и соцсетях люди из «грантового» сообщества подняли вопрос о том, что аттестат соответствия Госспецсвязи не нужен в принципе. Более того, время от времени проскакивает пост одного из украинских судей (даже судьи в нашей стране берутся обсуждать ИТ-разработки), который заявил, что и без аттестата декларация является законной. Но я хочу напомнить всем случай из недавней истории. А именно - ситуацию, когда в 2009-2010 году ГАИ использовала для автоматической фиксации нарушений правил дорожного движения прибор ВИЗИР и выписывали штрафы без остановки транспортного средства (они приходили по почте в виде «писем счастья»). Автовладельцы начали тогда массово обращаться в суд и отменять постановления на том основании, что ВИЗИР был несертифицирован, как того требует закон для государственных информационных систем. И вроде бы можно было подумать, что автолюбители придумали «отмазку», но появились протоколы, в которых троллейбус двигается на скорости 150 км/час, а стоящее авто, по данным прибора, движется со скоростью 90 км/час. Если бы процедуры сертификации в Госспецсвязи не было, гаишники вполне могли продолжать и дальше безнаказанно подделывать штрафы в фотошопе. И спорить с этим было бы бесполезно.

Аналогичный подход и к e-декларации. Госспецсвязи не разрешает и не запрещает ввод системы в эксплуатацию, а только проверяет: соответствует ли та или иная система требованиям к защите информации. Если следовать логике общественников-обвинителей, то чтобы снизить заболеваемость туберкулезом, нужно закрыть лаборатории, которые выявляют вирусы, и в статистике заболеваний будет «0». Вот только люди будут умирать чаще от неизвестных причин.

Правильный подход

Разработка государственной информационной системы начинается с выбора защищенной платформы. На сегодняшний день проверку Госспецсвязи (с экспертным выводом) прошло более сотни защищенных программных и аппаратных комплексов (то есть, о монополии говорить нельзя - есть и украинские системы, и западные). С полным перечнем можно ознакомиться на сайте ведомства.

Попытка за 100 тыс. Долларов «с нуля» написать защищенную систему заранее обречена на провал - бюджет должен быть раза в 3 больше. Скорее всего, «Миранда» на этой разработке не только не заработала, но еще и потратила свои деньги, которые вряд ли удастся вернуть. Да и по времени такой проект слишком затянется (на год, а то и больше), что и произошло. А вот произвести надстройку (написать интерфейсы) на уже готовой защищенной платформе можно примерно за $40-50 тысяч за 2-3 месяца. Кстати, отклоненное тендерное предложение компании (900 тыс. грн.), входящей в нашу ИТ-ассоциацию, выгоднее принятого ПРООН на 550 тыс. грн. Если бы его не «свели с дистанции» по надуманной причине (якобы в rar-архиве был вирус), сейчас бы уже все было разработано и начиная с 1 августа страна могла бы рассчитывать на безвизовый режим.

Чтобы информационная система без проблем прошла проверку Госспецсвязи, с ними согласовывается техническое задание (ТЗ) еще на этапе его подготовки. Согласно ТЗ разрабатывается проект КСЗИ (комплексной системы защиты информации), затем КСЗИ анализируется разработчиком и представителем заказчика и по договоренности всех сторон вносятся изменения в задание. После разработки производится экспертиза (ее делает сторонний подрядчик из числа получивших лицензии), а затем на ее основании Госспецсвязи выдает Аттестат. Весь этот процесс занимает несколько недель, если к разработке нет вопросов, если вопросы есть, то процедура растягивается до 2-3 месяцев. В любом случае, времени было у разработчика было достаточно. И он бы успел в том случае, если бы процесс был правильно организован. В те же сроки, что Миранда собиралась произвести легализацию своего продукта, уложиться просто нереально. Налицо не техническая (и это не вопрос компетенции кодеров), а, повторюсь, организационная проблема.

Отмечу, что в КСЗИ входят не только технические меры по защите информации, но и организационные (инструкции для персонала, его обучение, описание модели угроз, планов защиты и так далее). Поэтому процесс и документация «секретятся» (к вопросу о том, почему Госспецсвязи не обнародовала все документы в публичную плоскость). Кроме того, для 95% украинцев ничего из написанного техническим языком непонятно.

Что делать сейчас

На данном этапе - заканчивать все процедуры, объявив на публику (и международному сообществу), что система работает и введена в эксплуатацию. И сразу же начать новую разработку, выбрав подрядчика на гостендере, который нужно провести очень оперативно. До конца года, если подрядчик и все задействованные госструктуры будут работать синхронно, разработку можно завершить, а декларации, которые будут поданы в системе, разработанной Мирандой, просто перенести в новую, защищенную систему. По документам (и чтобы было меньше вопросов) это можно оформить как модернизацию существующей.

А теперь - о глобальном. Практику разработки и внедрения государственных информационных систем за гранты пора прекращать. Раз и навсегда. Заказчиком и бенефициаром может являться только государство и никто другой. А выбор исполнителя должен происходить только через предусмотренные законодательством тендерные процедуры, в условиях которых заложено условие защиты информации согласно действующему законодательству.