Какая безопасность нужна встраиваемым системам?

Особенности встраиваемых систем и подходящие для них методы защиты.

Что такое встраиваемые системы и как их защищать

Несмотря на то что встраиваемые компьютерные системы являются ключевыми инструментами ведения бизнеса для многих компаний, зачастую их безопасности не уделяют должного внимания. Между тем всевозможные банкоматы, кассовые терминалы, вендинговые автоматы и билетные киоски, медицинские компьютерные томографы, даже автоматические заправочные станции оперируют финансовыми и / или другими конфиденциальными данными, представляющими значительную ценность для криминала. Это делает подобные системы привлекательной мишенью для киберпреступников, следовательно, их защита от киберугроз должна быть приоритетной задачей для любой использующей их компании. Однако, несмотря на значительное на первый взгляд сходство с обычными компьютерами, встраиваемые системы обладают рядом существенных отличий, которые необходимо учитывать при разработке защитной стратегии; в противном случае существует риск столкнуться с определенными существенными, а иногда и непреодолимыми проблемами.

Особенности встраиваемых систем

Модель использования. В отличие от обычного компьютера, на котором, как правило, один сотрудник выполняет широкий набор задач, у встраиваемой системы может быть неограниченное количество пользователей, каждому из которых требуется очень небольшой спектр изначально заложенных при создании системы функций. Взаимодействие с такими системами часто осуществляется с помощью специфических устройств ввода (цифровая клавиатура, сенсорный экран с узкоспециализированным интерфейсом пользователя), не предполагающих запуск произвольных команд и файлов. Порты обмена, позволяющие подключение внешней периферии, у таких устройств чаще всего доступны только для технических специалистов. Общение с внешним миром осуществляется через Интернет, локальную сеть, кроме того, в их работе также применяются такие функционально ограниченные хранилища информации, как банковские, накопительные или дисконтные карты. При этом подобная система, очевидно, не должна использоваться для чтения электронной почты или посещения веб-сайтов — а значит, злоумышленники не могут рассчитывать на эти каналы для заражения. Однако одновременно возрастает значимость сетевого соединения. Этот канал — один из основных, используемых для атак на встраиваемые системы; в конце концов, почти все типы встраиваемых систем имеют соединение с локальной сетью компании, а значит, проникнув туда, злоумышленник может через сеть «дотянуться» и до специализированных машин. Что до портов, то тут хакеру может помочь специфика физического расположения подобных устройств.

Физическое расположение. Согласно модели использования, подавляющее большинство программно-аппаратных комплексов (ПАК) на базе встраиваемых систем располагается в общественном пространстве. Как правило, для защиты элементов ПАК от несанкционированного доступа применяются прочный стальной корпус и ограничения в способе взаимодействия с устройством. Однако, поскольку никакое устройство невозможно сделать полностью необслуживаемым, любой, самый прочный корпус должен открываться с помощью ключа. Следовательно, его может открыть и злоумышленник. Получив доступ к аппаратной части ПАК, он может подключить стандартные мышь и клавиатуру, накопитель с нужным ему зловредным ПО или даже с операционной системой, позволяющей загрузить ПАК в обход его собственной ОС. В некоторых случаях атакующие подключают даже одноплатный компьютер, с помощью которого можно взламывать саму систему или, например, анализировать команды, заставляющие диспенсер выдавать пользователю купюры. Остальное — дело техники; нужно только внедрить в систему нужные хакеру инструменты и с их помощью заставить встроенный компьютер делать то, что ему угодно, — от выдачи денег или осуществления теневых транзакций до похищения данных пользователя. Если, разумеется, встраиваемая система не защищена должным образом.

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

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

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

Требования регуляторов. Поскольку подавляющее большинство встраиваемых систем оперируют ценными финансовыми и персональными данными, работа с ними регулируется соответствующими разделами законодательства. Регулирующие органы требуют обязательного присутствия надежной защиты; детали реализации в основном остаются на откуп компании, но ее задачей остается максимальное снижение рисков возникновения инцидента вкупе с обеспечением логирования и хранения подробных данных для расследования, на случай если инцидент все же произошел. При этом в списке рекомендуемых могут значиться некоторые специфические технологии, такие как контроль целостности системы, которые в типичных решениях класса endpoint security попросту недоступны или предоставляются только в версиях для серверов.

В поисках компромисса

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

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

Однако этот подход может оказаться бессильным против, например, инъекции кода в легальный, уже запущенный процесс в памяти — а это вполне себе реализуемо при помощи эксплуатации тех самых уязвимостей в устаревшем ПО. Разработанные же хакерами техники эксплуатации элементов самой системы во вредоносных целях нередко позволяют свести применение собственно зловредного ПО к минимуму. Да, хакерам на слабой системе также доступно меньше возможностей, но… бизнес, зависящий от встроенных систем, такой как банк или ретейл-сеть, вряд ли будет использовать технику только одного поколения. А значит, у хакеров будет пространство для маневра. Что же делать? Устанавливать разные решения: для слабых — продукты на базе «запрета по умолчанию», а на более мощные пытаться внедрить обычный антивирус для рабочих станций, надеясь, что проблем с совместимостью удастся избежать? Или попробовать найти действительно универсальную систему?

Особая защита для особых устройств

Если взглянуть на текущие предложения защиты для встраиваемых систем на рынке, большинство вендоров предлагают два варианта:

  • «Экономное», ресурсоэффективное решение, способное работать в том числе и на устаревших системах, но предлагающее простейшую однослойную защиту на основе технологии контроля приложений и режима «запрет по умолчанию» (Default Deny). Этот вариант, как правило, не имеет средств для противостояния ряду типичных для встраиваемых систем атак, а также чаще всего управляется отдельно от других продуктов экосистемы производителей, что создает дополнительные сложности.
  • Обычное решение класса Endpoint Security. Для более современных систем большинство производителей предлагает, не мудрствуя лукаво, ставить то же самое решение, что защищает обычные рабочие станции. Оно, несомненно, обладает современным стеком защитных технологий и может быть встроено в экосистему вендора. Но, как правило, не обладает некоторыми технологиями, требующимися конкретно для защиты встраиваемых систем. Разумеется, такие решения будут работать только на самых современных и мощных ПАК, оставив за бортом все еще работающие, но устаревшие устройства.

Даже если использовать ОБА варианта одновременно, весь спектр проблем решить не получится. Кроме того, разнородные подходы к управлению способны сильно осложнить работу администраторов IT и ИБ (особенно если применяются решения от разных производителей).

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

  • Решение должно обеспечивать максимально возможный уровень защиты. В современных условиях это означает наличие стека различных технологий для защиты от релевантного (читай, характерного для встроенных систем всех типов) набора векторов атак и используемых злоумышленниками техник.
  • Решение должно обеспечивать максимально возможную защиту на системах любого уровня — как старых и маломощных, так и современных, обладающих достаточным запасом производительности и памяти. Однако, поскольку на слабом «железе» попросту невозможно физически запустить одновременно все, что есть в технологическом стеке, необходима возможность масштабирования. Другими словами, решение должно предоставлять возможность раздельного управления слоями защиты, позволяя отключать ненужное и задействовать тот набор инструментов, который обеспечивает максимальную защиту для конкретного «железа» и сценария использования системы.
  • Решение должно поддерживать наиболее популярные ОС, использующиеся для создания встраиваемых систем; как минимум это Windows и Linux.
  • Решение должно поддерживать устаревшие версии ОС, использующихся во все еще работающих встраиваемых системах.
  • Решение должно отвечать требованиям регуляторов, иметь в своем защитном стеке рекомендуемые ими технологии и возможность подробного логирования событий в централизованной системе наблюдения за событиями безопасности (SIEM).
  • Решение должно быть тщательно протестировано на совместимость — как минимум с типовыми конфигурациями встраиваемых систем разных типов. В идеале — поставляться в составе программно-аппаратного комплекса (ПАК), все компоненты которого протестированы производителем (сборщиком) данного ПАК на беспроблемную совместную работу.
  • Решение должно иметь централизованное управление, в идеале — унифицированное с другими продуктами экосистемы вендора для создания единой системы безопасности, обеспечивающей наблюдение и защиту всех уровней IT-инфраструктуры компании через единую консоль.

Kaspersky Embedded Systems Security

Много лет назад, прежде чем прийти к пониманию, как должно выглядеть специализированное решение для защиты встраиваемых систем, «Лаборатория Касперского» также начинала с попыток использования для данной задачи приложений из состава линейки продуктов Kaspersky Security для Бизнеса. Однако скоро стало ясно, что использовать обычное приложение для полного спектра встраиваемых систем просто невозможно. Поэтому было принято решение разработать отдельное решение, которое бы смогло обеспечить максимальное соответствие «идеальным» требованиям. Результатом стало появление продукта Kaspersky Embedded Systems Security c поддержкой сперва ОС Windows, а затем и ОС Linux.

Наше решение предлагает исключительно редкое на мировом рынке сочетание многослойного технологического стека для разных платформ, одни из самых скромных требований к системным ресурсам и поддержку устаревших версий ОС (вплоть до Windows XP SP2). При этом оно является частью богатой экосистемы безопасности «Лаборатории Касперского». Все это, по нашему мнению, позволило максимально приблизить Kaspersky Embedded Systems Security к тому «идеальному образу», что мы нарисовали выше. Вы можете ознакомиться с основными свойствами продукта на его веб-странице; технические же подробности можно узнать на сайте поддержки «Лаборатории Касперского», в разделах, посвященных приложениям продукта для соответственно Windows и Linux.

Советы