Low code, no code и zero code — модные слова в мире бизнес-приложений, в которых задачи, которые когда-то требовали программистов, выполняются обычными пользователями. Необходимый функционал собирается из готовых шаблонов, интерфейс рисуется в WYSIWYG-редакторе по мере необходимости, а логика программы описывается в виде простых диаграмм или очень коротких фрагментов кода. Со всем этим справится грамотный пользователь ПК без специальной подготовки. Low code помогает сократить время разработки простого мобильного приложения с полугода до пары недель, а промо-страницу для интернет-магазина или новый отчет можно доставить за пару часов.
Существует множество платформ no-code: Bubble для разработки мобильных приложений, Webflow для разработки веб-сайтов, а также Parabola и Airtable для аналитики и науки о данных. Все эти системы помогают компаниям сократить расходы на ИТ и ускорить развитие бизнес-функций.
Конечно, есть подводные камни, и главным из них являются киберриски. Чтобы обеспечить безопасность данных и процессов компании, эти риски необходимо свести к минимуму уже при внедрении low-code платформы. Вот что следует иметь в виду больше всего.
Привилегированные учетные записи
Мини-приложение, разработанное вашей компанией на платформе low-code или no-code, часто требует доступа к различным базам данных и вычислительным ресурсам. Обычно оно запускается с привилегиями своего создателя, и все последующие пользователи приложения выполняют действия с этим уровнем доступа. Оттуда можно быстро перейти к атакам с повышением привилегий, и выяснить из журналов, кто несет ответственность за вредоносную активность, будет проблематично.
Меры по снижению рисков- Реализация метода Принцип наименьших привилегий для всех подключений к базам данных и API из no-code системы.
- Используйте отдельные учетные записи для пользователей мини-приложения (использование учетных данных разработчика приложения недопустимо).
- Внедрите специальные меры ведения журнала для отслеживания того, кто фактически использует мини-приложения при запросе баз данных и API.
Некорректная авторизация
Почти все low-code платформы используют концепцию коннектора/соединения, что позволяет им получать доступ к базам данных и другим приложениям внутри компании. Архитектура этих систем не дает пользователю прямого контроля над соединением после того, как он предоставил разрешение на его установку. Подключение можно повторно использовать для других запросов тех же данных, в том числе от другого мини-приложения или даже от другого пользователя.
Меры по снижению рисков- Часто обновляйте токены авторизации в системах, привязанных к платформе no-code.
- Мониторинг активно используемых подключений.
- Переписывайте неправильно запрограммированные мини-приложения, использующие «заимствованные» соединения. Отключите ненужные соединения.
- Опять же, используйте принцип наименьших привилегий.
- Обучите бизнес-пользователей понимать риски, связанные с чрезмерно широким доступом к данным приложений.
Утечка или изменение данных
Поскольку платформы no-code имеют широкий доступ к данным, мини-приложения, запрограммированные неспециалистами, могут возвращать больше данных, чем предполагал разработчик. А ошибки в обработке данных или синхронизации между системами могут привести к непреднамеренному, широко распространенному повреждению данных или несанкционированному копированию.
Меры по снижению рисков- Ограничьте доступ к данным, минимизировав разрешения на запись и удаление.
- Сведите к минимуму список сотрудников, уполномоченных создавать и изменять подключения, и настройте для них правила доступа.
- Отслеживайте данные, передаваемые платформой no-code, чтобы своевременно выявлять их чрезмерное количество.
Неправильные настройки безопасности
В коде мини-приложения могут возникать опасные ошибки и неправильные конфигурации, такие как: доступ к файловому хранилищу без шифрования; хранение API-ключей или других секретов прямо в коде приложения; доступ к корпоративным системам без надлежащей аутентификации. Поскольку многие приложения с низким кодом легко анализировать, злоумышленники могут быстро извлечь всю эту информацию и использовать ее для кибератак и дальнейшей кражи данных.
Меры по снижению рисков- Обеспечьте соответствие передовым отраслевым рекомендациям по настройке приложений и хранению секретов.
- Обучите бизнес-пользователей, которые создают приложения без кода, придерживаться этих методов.
- Ввести дополнительные меры безопасности на уровне инфраструктуры. Ограничьте небезопасные методы доступа и отслеживайте аномальные запросы от систем no-code.
Плохая дезинфекция входных данных
Большинство приложений с низким кодом имеют какой-то интерфейс, который позволяет вводить данные; Например – контактные данные в форме на только что созданном сайте. Проверка форм ввода часто недостаточна или отсутствует, что делает их открытыми для классических атак SQL-инъекций.
Меры по снижению рисков- Обучение бизнес-пользователей: мини-приложения, которые они создают, должны проверять и очищать любую входящую информацию, будь то текстовая форма, CSV-файл или что-то еще.
- Разверните дополнительные средства очистки данных, например, при передаче SQL-запросов с платформы low-code в базу данных.
Уязвимости в модулях
Многие no-code платформы имеют модульную архитектуру с собственными хранилищами компонентов для пользовательских проектов. Уязвимости в этих компонентах часто бывают очень серьезными и усугубляются тем, что их невозможно отследить и быстро обновить с помощью стандартных инструментов. Такие модули могут быть даже троянизированы, если их разработчик будет взломан.
Меры по снижению рисков- Регулярно чистите платформу. Неиспользуемые подключаемые модули, модули и другие компоненты должны быть удалены.
- Ограничьте список компонентов, доступных пользователям.
- Инвентаризируйте все используемые компоненты, отслеживайте уязвимости и выпуски новых версий.
- Используйте системы защиты, специально разработанные для вашей low-code платформы (например, Wordfence для WordPress).
Незаконная обработка данных
Базы данных, хранящиеся в мини-приложениях, иногда подчиняются общим правилам конкретной платформы с низким кодом, а это означает, что администраторы компании не имеют полного контроля над их местоположением и содержимым. Это может привести к нарушениям местных законов, таких как GDPR, в отношении хранения определенных типов данных.
Меры по снижению рисков- Обучите бизнес-пользователей работе с основными правилами обработки данных.
- Все приложения, которые потенциально имеют доступ к конфиденциальным данным, должны быть проверены командой информационной безопасности.
Забытые приложения
По самой своей природе приложения no-code легко создавать и легко оставлять незамеченными. Например, если сотрудник увольняется из компании, его мини-приложение может продолжать работать и создавать ежедневные отчеты. Или коллега может продолжать использовать его без ведома ИТ-специалистов и специалистов по информационной безопасности.
Меры по снижению рисков- Ведите подробный каталог мини-приложений, их владельцев и конечных пользователей.
- Удалите ненужные приложения и подключения. Проверьте списки разрешенных пользователей и удалите всех, кому больше не нужно приложение.