Многие технологии последних десятилетий были направлены на освобождение персонала предприятий от привязки к конкретному рабочему месту, в результате сегодня с помощью многочисленных гаджетов можно создать среду для работы с корпоративными данными из любой точки мира, устранив зависимость сотрудника от какого-либо локального рабочего места. Однако за свободу приходится платить.
Практика применения портативных средств для решения бизнес-задач появилась еще в конце девяностых годов, однако функционал мобильных устройств тогда был весьма ограничен и сфера их применения для продуктивной работы оставалась незначительной. Несколько лет назад ситуация изменилась — в корпоративную среду вторглись смартфоны, представляющие собой своеобразные мобильные «суперкомпьютеры» с богатым набором интерфейсов, и возник вопрос: как организовать управление безопасностью на всех устройствах, используемых сотрудниками для выполнения работы в рамках концепции BYOE (Bring Your Own Everything)?
По данным аналитиков «Лаборатории Касперского», 91% опрошенных организаций в мире хотя бы один раз в течение года подвергались кибератакам, а 9% компаний стали мишенью целевых атак. В 2013 году проблема обеспечения безопасности мобильных устройств существенно обострилась, что было связано как с количественным, так и с качественным ростом мобильных угроз: вместе с ростом числа устройств вырос и целенаправленный интерес к ним злоумышленников; на устройствах все чаще стала размещаться конфиденциальная информация, обладание которой оправдывает затраты на взлом; увеличилась популяция самих мобильных устройств, что оправдывает расходы на раскидывание преступной сети.
Для закрытой iOS внедрение постороннего кода весьма проблематично, однако здесь возникают вопросы защиты информации на стыках — вне защищаемого периметра корпоративной сети и при передаче по открытым каналам связи, причем закрытость ОС затрудняет внедрение и средств защиты информации. Имеется три вида средств защиты, отличающихся по типу их встраивания в систему iOS: VPN-механизмы, встроенные в iOS; механизмы SSL-VPN, загружаемые из Appstore, но имеющие разрешение от Apple на встраивание на уровне ОС; механизмы, интегрируемые в приложения.
Поскольку информация выносится за физический периметр предприятия, возникает проблема защиты на его границе с окружающей средой: в канале, в мобильном устройстве, в точке подключения канала к периметру корпоративной сети.
Как в таких условиях обеспечить комплексную защиту мобильной распределенной корпоративной среды, включающей устройства, приложения и данные? Задачу обеспечения безопасности мобильной корпоративной среды можно условно разбить на защиту канала, защиту подключения и защиту информации на устройстве.
Защита канала связи
Для защиты канала связи необходимо реализовать двухстороннюю аутентификацию, в рамках которой будет построено доверенное соединение — благодаря надежной идентификации клиента и сервера можно обеспечить защиту от атак типа MIT (Man-in-the-middle) и не допустить ошибочного перехода клиента на вредоносный сервер. Взаимная аутентификация абонентов (клиента и сервера) при помощи цифровых сертификатов поддерживается протоколом SSS/TLS [1].
Далее нужно реализовать шифрование и контроль целостности информации, передаваемой по каналу связи, что также реализуется с помощью протокола SSL/TLS. Все современные мобильные платформы имеют его реализации «из коробки», однако используемые ими криптографические алгоритмы зачастую неприменимы для ряда отечественных заказчиков, вынужденных соблюдать требования по обеспечению защиты информации на основе сертифицированных средств криптографической защиты информации (СКЗИ). Это порождает ряд нюансов — встроить сертифицированные шифровальные средства и средства электронной подписи в мобильные ОС «бесшовно» трудно в силу закрытости архитектуры некоторых мобильных ОС. Поэтому реализация защиты сетевого трафика должна быть встроена в каждое отдельное мобильное приложение — иными словами, необходимо реализовывать функцию, аналогичную iOS Per App VPN, только не встроенными в ОС средствами, а на уровне прикладного ПО, с использованием библиотек сертифицированного СКЗИ. Данный подход имеет ряд преимуществ — поскольку по защищенному каналу связи будет передаваться только трафик доверенных приложений, а сторонние приложения смогут функционировать в штатном режиме, можно минимизировать паразитную нагрузку на корпоративный шлюз VPN и повысить эргономику работы с защищенными приложениями.
Защита периметра сети и данных
Для защиты периметра сети лучше всего подходит эшелонированная защита, которую можно построить путем размещения шлюзов [2] доступа мобильных устройств в демилитаризованных сегментах сети (ДМЗ). Эти сегменты отделены от Интернета и внутренней сети передачи данных межсетевыми экранами, а шлюзы поддерживают аутентификацию каждого подключения по цифровому сертификату. Таким образом анонимный трафик не будет допущен во внутреннюю сеть. В качестве дополнительного средства защиты можно организовать такой режим, в котором канал между сервером ДМЗ и сервером внутри корпоративной сети будет однонаправленным — порт будет открыт изнутри сети наружу, что исключит любую возможность атаки извне. При таком сценарии работы внутренний сервер устанавливает персистентное соединение с ДМЗ и поддерживает его для получения данных от мобильных устройств, это не требует открытия входящих портов на межсетевых экранах и минимизирует риски сетевой безопасности. Сегодня в России есть ряд сертифицированных средств организации защищенного SSL/TLS-подключения, например от компаний StoneSoft, Checkpoint и Entensys.
Защита локальных данных на клиенте обеспечивается путем организации «в песочнице» приложения зашифрованной области дискового пространства, в которой хранится конфиденциальная информация. Даже если устройство оказывается в руках злоумышленника и данные, размещенные на устройстве, будут похищены, прочитать добытую информацию не удастся, поскольку данные в «песочнице» зашифрованы [3].
Доступ к зашифрованным областям памяти осуществляется только по ключу пользователя, размещенному в криптографическом контейнере, защищенном паролем (ПИН-кодом). Данный подход также используется для аутентификации пользователей в приложении — если устройство попадет в руки постороннему человеку, он не сможет войти в приложение без знания ПИН-кода. Поскольку аутентификация пользователей в приложении организована с помощью цифрового сертификата, необходимо также контролировать статус сертификата, периодически обращаясь к соответствующему ресурсу (точка распространения списков отзывов сертификатов или служба актуальных статусов сертификатов). Приложение регулярно проверяет статус сертификата и своевременно обнаруживает отсутствие его валидности. Сертификат может быть отозван по разным причинам (увольнение сотрудника, компрометация ключа, завершение срока годности), что, в соответствии с правилами использования сертификатов и ключей, делает невозможной процедуру его применения.
Расшифровка информации из устройства производится на короткий промежуток времени и только по запросу пользователя, а при завершении работы она удаляется из памяти. Также применяется технология очистки памяти, в рамках которой ее области, содержащие открытые данные, не просто очищаются, но и многократно заполняются случайными числами, чтобы избежать возможности восстановления или кражи блоков.
В качестве дополнительной меры усиления безопасности используются отчуждаемые носители для хранения ключевой информации. В случае iOS могут применяться считыватели смарт-карт, подключаемые физически через разъем или через беспроводное соединение (Bluetooth). Кроме того, применяются носители (токены), имеющие встроенный Bluetooth-модуль, и тогда не требуется применять дополнительные считыватели. В решениях Digital Design применяется продукт компании «Актив» — Рутокен ЭЦП Bluetooth, реализующий технологию многофакторной аутентификации. В этом случае для доступа к информации одновременно необходимо само устройство (с установленным ПО), токен и знание ПИН-кода.
Поскольку потенциально устройство может быть подвержено воздействию какого-то вредоносного кода (например, при осуществлении операции «джейлбрейка» — несанкционированной Apple процедуры модификации ОС с целью получить повышенные привилегии доступа, опасной тем, что она отключает встроенные в ОС механизмы защиты целостности среды), полезно контролировать целостность исполняемых модулей. В рамках данной процедуры проверяется целостность кода приложения, модулей защиты информации и среды исполнения. Проверка выполняется путем сравнения при каждом запуске контрольных сумм кода приложения с эталонными, а также через определенные интервалы времени работы ПО. Если контрольные суммы не совпадают с эталонными, полученными при сборке дистрибутива приложения, то программа прекращает свою работу и уничтожает всю критически важную для предприятия информацию, включая криптографические ключи.
В своих разработках, например в «Защищенной мобильности», мы не используем технологию джейлбрейка, а боремся с ней, поэтому, если программа обнаруживает, что устройство было взломано, она работать не будет.
Отдельную нишу в вопросах защиты информации занимают задачи управления метаданными, используемыми для обеспечения защиты мобильного устройства. Помимо вопросов контроля сроков действия сертификата и проверки списков отзывов, как правило, остро стоит вопрос о первичном размещении ключей на мобильном устройстве. Сейчас большинство пользователей предпочитает хранить ключевую информацию непосредственно на дисках мобильного устройства, поэтому при проектировании подсистемы защиты необходимо учитывать специфику инфраструктуры открытых ключей (public key infrastructure, PKI) каждого конкретного заказчика. Для успешной интеграции с PKI, как правило, необходимо ответить на несколько вопросов: как попадает закрытый ключ на мобильное устройство (экспортируется с внешнего носителя или реестра Windows), каким образом передается запрос на сертификат в удостоверяющий центр (по сети или в автономном режиме), какие расширения должны быть прописаны в цифровом сертификате для его корректного применения на мобильном устройстве?
В своих решениях мы позволяем администраторам безопасности управлять процессом генерации или импорта ключевых контейнеров и подстраиваться под большинство сценариев (в том числе с использованием внешних носителей ключа — смарт-карт или токенов) интеграции в корпоративную инфраструктуру защиты информации.
MDM
Решения по управлению мобильными устройствами (Mobile Device Management, MDM) были выделены в отдельную категорию еще в 2004 году и, кроме функций администрирования, обеспечивали защиту мобильной передачи данных, поддержку синхронизации между беспроводными устройствами и устройствами, работающими в автономном режиме, а также резервное копирование и восстановление данных. Сегодня функции MDM значительно шире [4] — этот класс систем позволяет вести учет всех мобильных устройств, централизованно наполнять их программами, загружать настройки и политики, а также удаленно уничтожать все данные с устройства. Если связь с устройством не прерывается, то его в любой момент можно заблокировать, удалить его данные или запретить доступ к корпоративным ресурсам, а если связь прервалась надолго, то могут сработать средства самого устройства, автоматически уничтожающие данные. Как разработчики прикладного ПО, мы не пытаемся подменить функции MDM, а даем заказчикам возможность использовать как альтернативные решения без MDM, так и с этой системой.
***
Политика использования механизмов защиты информации для всех типов мобильных устройств должна строиться исходя из конкретных требований к защите, а они, в свою очередь, исходя из важности информации и модели угроз информационной безопасности. Такие требования могут быть определены в законодательстве либо в нормативных актах предприятия, и хотя сама по себе задача защиты информации не нова, ее конкретное решение в условиях мобильности требует учета ряда перечисленных нюансов.
Литература
- Петр Якушин. Безопасность мобильного предприятия // Открытые системы.СУБД. — 2013. — № 1. — С. 22–26. URL:http://www.osp.ru/os/2013/01/13033833 (дата обращения: 18.04.2014)
- Валерий Коржов. Платформы поддержки мобильности // Открытые системы.СУБД. — 2012. — № 6. — С.17–22. URL:http://www.osp.ru/os/2012/06/13017029 (дата обращения: 18.04.2014)
- Леонид Черняк. Управление мобильными приложениями // Открытые системы.СУБД. — 2013. — № 1. — С. 49–51. URL:http://www.osp.ru/os/2013/01/13033988 (дата обращения: 18.04.2014)
- Денис Безкоровайный. Безопасность мобильных устройств // Открытые системы.СУБД. — 2011. — № 9. — С. 26–29. URL:http://www.osp.ru/os/2011/09/13011558 (дата обращения: 18.04.2014)
Михаил Альперович (Alperovich.M@digdes.com) — директор Лаборатории защищенной мобильности, Александр Сидорук (Sidoruk.A@digdes.com) — руководитель отдела разработки ПО Центра мобильных решений, компания Digital Design (Санкт-Петербург).