Креативная студия АникА

Важно / Безопасность

Защита.
на каждом
уровне системы

Как мы защищаем информацию при разработке и эксплуатации веб-ресурсов: от архитектуры и сервера до доступа, резервных копий и стыковки с вашим контуром безопасности. Выберите платформу, с которой работает ваш проект.

Обсудить требования

01 / WordPress CMS

WordPress CMS

WordPress — самая массовая CMS, а значит, и самая частая цель автоматических атак. Основной риск здесь не в самом ядре, а в плагинах, темах, слабых паролях и «забытых» обновлениях. Поэтому мы строим защиту вокруг дисциплины: минимум стороннего кода, закрытая администрация, регулярные обновления и резервные копии, из которых действительно можно восстановиться.

Меры дополняют друг друга: сбой или обход одного рубежа не должен открывать доступ к данным сайта и серверу. При размещении в контуре заказчика решение стыкуется с вашими средствами — межсетевым экранированием, WAF, журналированием и регламентами доступа.

1. Ядро, темы и плагины

Мы используем только актуальную поддерживаемую версию WordPress и PHP. Каждый плагин проходит отбор: активная поддержка, понятный автор, отсутствие известных уязвимостей. Всё, что можно сделать кодом проекта, мы не заменяем «тяжёлым» плагином.

  • нет «нулленых» тем и плагинов из непроверенных источников;
  • неиспользуемые темы, плагины и демо-контент удаляются, а не просто отключаются;
  • собственные доработки оформляются дочерней темой или отдельным плагином, ядро не правится;
  • версии плагинов фиксируются, обновления проходят проверку на тестовой копии.

2. Администрирование и доступ

Стандартный адрес входа и учётная запись «admin» не используются. Каждый сотрудник работает под личной учётной записью с минимально необходимой ролью: редактору не нужны права администратора, подрядчику — доступ к настройкам сервера.

  • двухфакторная аутентификация для администраторов;
  • ограничение числа попыток входа и блокировка подбора пароля;
  • вход в админ-панель по списку разрешённых адресов или через VPN — по требованию заказчика;
  • отключены встроенный редактор файлов тем и плагинов и XML-RPC, если они не нужны;
  • учётные записи уволенных сотрудников и подрядчиков отключаются сразу.

3. Защита канала и заголовки

Сайт работает только по HTTPS с актуальными версиями TLS, открытые соединения перенаправляются на защищённые. На веб-сервере включаются заголовки безопасности: политика содержимого (CSP), запрет встраивания во внешние фреймы, ограничение определения типа содержимого. Cookie сессий выдаются с признаками HttpOnly, Secure и SameSite.

4. Сервер и файловая система

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

  • в каталоге загрузок запрещено исполнение PHP-скриптов;
  • файл wp-config.php и служебные файлы недоступны из интернета;
  • листинг каталогов отключён, служебные и резервные файлы с сайта удаляются;
  • база данных не публикуется наружу и использует отдельную учётную запись с ограниченными правами;
  • секреты и ключи не хранятся в репозитории и выдаются окружением.

5. Фильтрация запросов и защита форм

Перед сайтом ставится фильтр запросов: WAF, правила веб-сервера или защита на стороне хостинга. Он отсекает типовые атаки — внедрение SQL, межсайтовые скрипты, сканирование уязвимостей. Формы обратной связи и регистрации защищаются от спама и массовых отправок: ограничение частоты, проверка на стороне сервера, антибот без лишней нагрузки на посетителя.

6. Резервные копии и восстановление

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

7. Журналы и контроль изменений

Фиксируются входы в админ-панель, неудачные попытки, смена ролей, установка плагинов и изменение настроек. Мы отслеживаем изменения в файлах сайта: если в каталоге с кодом появляется неожиданный файл, это повод для немедленной проверки. Журналы можно передать в систему мониторинга заказчика, срок их хранения задаётся вашим регламентом.

8. Сопровождение

Обновления безопасности устанавливаются по согласованному графику, критичные — вне очереди. Сайт регулярно проверяется на известные уязвимости и на вредоносный код. Правки «на боевом сервере вручную» не используются: изменения сначала проверяются на тестовой копии. Если сайт уже взломан, мы проводим очистку, устраняем причину и закрываем точку входа, а не только удаляем последствия.

02 / Собственный стек и CMS

Собственный стек и CMS

Меры защиты информации при разработке и эксплуатации веб-ресурсов

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

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

Ниже — контур, который мы применяем в проектах на Next.js, NestJS, Docker и Redis. При размещении в контуре заказчика он стыкуется с уже принятыми у вас средствами: межсетевым экранированием, WAF, средствами криптографической защиты, журналированием и регламентами доступа.

1. Архитектура и разграничение контуров

Пользовательская часть на Next.js и серверное приложение на NestJS разделены. Браузер не обращается к базе данных и к служебным хранилищам напрямую. Все операции проходят через серверную логику, где проверяются права, состав запроса и допустимость действия.

Для компонентов задаются отдельные сетевые зоны:

  • публичная зона — сайт и точки входа, доступные пользователям;
  • зона приложений — серверная логика и фоновые задачи;
  • зона данных — база данных, Redis и резервные копии.

Между зонами разрешён только необходимый обмен. Redis, база данных и панели администрирования в интернет не публикуются. Административный доступ организуется через защищённый контур заказчика: выделенная сеть, VPN или бастион, по регламенту вашей службы безопасности.

2. Защита канала связи

Обмен с пользователем и между компонентами системы идёт по защищённому протоколу TLS актуальных версий. Открытая передача учётных данных и содержимого запросов исключается.

На стороне веб-сервера включаются заголовки безопасности: политика содержимого страницы (CSP), запрет встраивания сайта во внешние фреймы, ограничение определения типа содержимого, политика обращения к сторонним источникам. Для сессий используются cookie с признаками HttpOnly, Secure и SameSite, чтобы идентификатор сессии нельзя было прочитать скриптом страницы и он не уходил на сторонние сайты.

Если регламент заказчика требует сертифицированные средства криптографической защиты или отечественные алгоритмы на периметре, прикладной контур к ним подключается: TLS терминируется на вашем шлюзе, приложение работает за ним во внутреннем сегменте.

3. Доступ, аутентификация и полномочия

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

Полномочия строятся по ролям. Пользователь, редактор, администратор и сервисная учётная запись получают только те действия, которые нужны их функции. Массовые и чувствительные операции — выгрузка, удаление, смена прав, публикация — выделяются отдельно и при необходимости подтверждаются дополнительным шагом или журналируются как события безопасности.

Число попыток входа и частота запросов к формам авторизации, обратной связи и публичным API ограничиваются. Это снижает риск подбора пароля и перегрузки сервиса. Повторяющиеся неуспешные попытки фиксируются в журнале.

4. Защита прикладной логики

Сервер принимает только те поля, которые описаны для конкретной операции. Лишние и непредусмотренные параметры отбрасываются. Формат, длина и состав значений проверяются до того, как данные попадут в базу или в кэш.

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

Для форм применяется защита от подделки межсайтового запроса. Загрузка файлов, если она есть в системе, ограничена по типу, размеру и месту хранения: файл не исполняется на сервере и не кладётся в каталог с кодом приложения.

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

5. Изоляция в Docker

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

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

Для образов фиксируются версии. Базовые образы и зависимости обновляются по регламенту, а не остаются неизменными на годы. Сборка воспроизводима: в промышленный контур попадает собранный и проверенный образ, а не произвольная копия с рабочей машины разработчика.

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

6. Redis и оперативные данные

Redis используется как внутреннее хранилище: кэш, сессии, очереди фоновых задач. Наружу он не публикуется и доступен только из сети приложений.

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

В Redis не складывается единственная копия сведений, потеря которых недопустима. Сессии и кэш восстанавливаемы. Постоянные данные живут в базе и попадают в резервное копирование. Каналы между приложением и Redis остаются внутри закрытого сегмента.

7. Данные, резервные копии и персональные данные

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

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

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

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

8. Журналы и контроль событий

Фиксируются вход и выход, отказ в доступе, смена прав, изменение критичных настроек, выгрузки и действия администраторов. В журнал попадает, кто выполнил действие, когда и над каким объектом. Пароли, содержимое сессий и полные массивы персональных данных в журналы не пишутся.

Журналы приложения готовы к передаче в систему мониторинга заказчика. Формат и состав событий согласуются с вашей SIEM или регламентом учёта, чтобы события сайта попадали в общий контур наблюдения, а не оставались только на сервере приложения.

Срок хранения журналов задаётся вашим регламентом.

9. Сопровождение и изменения

Зависимости и базовые образы проверяются на известные уязвимости до выкладки. Исправления безопасности включаются в плановые обновления, критичные — вне очереди, по согласованному окну работ.

Изменения попадают в промышленный контур через сборку и проверку, с сохранением предыдущей рабочей версии для быстрого возврата. Правка «на сервере вручную» в промышленной среде не используется.

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

10. Стыковка с контуром заказчика

Прикладная защита рассчитана на работу внутри вашего периметра, а не вместо него. По требованиям технического задания подключаются:

  • размещение в выделенном сегменте и публикация через ваш обратный прокси или WAF;
  • терминация TLS на сертифицированном шлюзе, если это требует модель угроз;
  • передача журналов в вашу систему мониторинга;
  • административный доступ только из сети управления;
  • ограничение интеграций белым списком адресов и учётных данных, выданных заказчиком.

Состав мер фиксируется в техническом задании и в регламенте эксплуатации конкретного ресурса: что защищается силами приложения, что — средствами площадки, кто отвечает за учётные записи, резервные копии и реагирование на инцидент.

03 / Joomla CMS

Joomla CMS

Joomla — зрелая CMS с гибкой системой расширений, и именно расширения чаще всего становятся слабым местом сайта. Мы закладываем защиту на каждом уровне: в составе компонентов, в настройках администрирования, на веб-сервере и в процессе сопровождения. Меры дополняют друг друга, чтобы обход одного рубежа не открывал доступ к данным и функциям сайта.

При размещении в контуре заказчика решение стыкуется с принятыми у вас средствами: межсетевым экранированием, WAF, средствами криптографической защиты, журналированием и регламентами доступа.

1. Ядро и расширения

Мы работаем на поддерживаемой ветке Joomla и актуальной версии PHP. Расширения — компоненты, модули, плагины и шаблоны — выбираются по критериям: активная поддержка разработчика, история исправлений безопасности, отсутствие избыточных прав и лишних функций.

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

2. Администрирование и роли

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

  • двухфакторная аутентификация для всех, кто входит в панель управления;
  • отдельный адрес входа и ограничение доступа по спискам адресов или через VPN — по требованию заказчика;
  • ограничение числа попыток входа и фиксация неудачных попыток;
  • срок жизни сессии ограничен, повторная проверка прав для чувствительных операций;
  • личные учётные записи вместо общих, снятие доступа при завершении работ.

3. Защита канала и заголовки

Сайт и панель управления работают только по HTTPS с актуальными версиями TLS. Включаются заголовки безопасности: политика содержимого (CSP), запрет встраивания в чужие фреймы, ограничение определения типа содержимого, политика обращения к сторонним источникам. Для cookie сессии применяются признаки HttpOnly, Secure и SameSite.

4. Конфигурация, файлы и база данных

Файл configuration.php и каталоги с настройками закрыты от записи и недоступны из интернета. Каталоги кэша, журналов и временных файлов вынесены из публичной зоны или защищены правилами веб-сервера.

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

5. Защита форм и прикладной логики

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

6. Фильтрация запросов

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

7. Резервные копии и восстановление

Копии файлов и базы создаются по расписанию, хранятся отдельно от рабочего сервера и проверяются на возможность восстановления. Перед каждым обновлением ядра или расширений делается свежая копия с возможностью быстрого возврата.

8. Журналы и сопровождение

Фиксируются входы в панель управления, отказы в доступе, смена групп и прав, установка и удаление расширений. Журналы можно передать в систему мониторинга заказчика, срок их хранения определяется вашим регламентом.

Исправления безопасности устанавливаются по согласованному графику, критичные — вне очереди. Изменения на боевой сервер попадают после проверки, а не правкой «вручную». Если версия Joomla приближается к окончанию поддержки, мы заранее предлагаем план перехода на актуальную.

04 / 1С-Битрикс CMS

1С-Битрикс CMS

«1С-Битрикс: Управление сайтом» — коммерческая платформа со встроенным модулем безопасности и собственными механизмами защиты. Мы используем их по максимуму и дополняем мерами на уровне сервера, сети и процессов сопровождения. Защита строится на нескольких рубежах, чтобы обход одного не открывал доступ к данным сайта, интернет-магазина и интеграциям с учётными системами.

При размещении в контуре заказчика решение стыкуется с вашими средствами: межсетевым экранированием, WAF, средствами криптографической защиты, журналированием и регламентами доступа.

1. Проактивная защита платформы

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

  • проактивный фильтр отсекает типовые атаки: внедрение SQL, межсайтовые скрипты, подмену данных;
  • веб-антивирус проверяет исходящий код страниц на встроенные вредоносные вставки;
  • защита сессии привязывает её к параметрам клиента и сокращает риск перехвата;
  • контроль целостности сообщает об изменении файлов ядра;
  • включено журналирование событий безопасности.

2. Ядро, обновления и лицензия

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

3. Администрирование и доступ

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

  • одноразовые коды (двухэтапная аутентификация) для администраторов;
  • ограничение доступа к административному разделу по спискам адресов или через VPN — по требованию заказчика;
  • блокировка подбора пароля и фиксация неудачных попыток входа;
  • политики паролей: длина, сложность, срок действия;
  • ограничение времени сессии и повторная проверка прав для чувствительных операций.

4. Защита канала и заголовки

Сайт, личный кабинет и административный раздел работают только по HTTPS с актуальными версиями TLS. Включаются заголовки безопасности: политика содержимого (CSP), запрет встраивания в чужие фреймы, ограничение определения типа содержимого. Cookie сессий выдаются с признаками HttpOnly, Secure и SameSite.

5. Сервер, файлы и база данных

Служебные каталоги платформы закрыты от доступа из интернета, права на файлы ограничены, в каталоге загрузок запрещено исполнение скриптов. База данных не публикуется наружу, для сайта используется отдельная учётная запись с минимальными правами. Резервные копии и служебные выгрузки не хранятся в публичных каталогах.

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

6. Интернет-магазин, заказы и персональные данные

Для магазинов отдельное внимание уделяется заказам, платежам и данным покупателей. Платёжные данные карт на сайте не хранятся: оплата проходит на стороне платёжного провайдера. Состав собираемых сведений ограничивается задачей магазина, срок хранения и порядок удаления согласуются с заказчиком.

Обмен с «1С», учётными системами и внешними сервисами защищается: отдельные служебные учётные записи, ограничение по адресам, передача по защищённому каналу, журналирование операций. Если сайт обрабатывает персональные данные, меры согласуются с вашей моделью угроз и политикой обработки.

7. Резервные копии и восстановление

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

8. Журналы и контроль событий

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

9. Сопровождение и изменения

Обновления безопасности устанавливаются по согласованному графику, критичные — вне очереди. Изменения проходят через тестовую копию и проверку, с сохранением рабочей версии для быстрого возврата. Правки «на боевом сервере вручную» не используются. Доступ разработчиков к рабочей среде и данным разделён и выдаётся адресно.

05 / Требования

Есть дополнительные требования безопасности?
Учтём и согласуем

Расскажите о требованиях вашей информационной безопасности: условиях размещения, использовании WAF, ведении журналов событий и применении сертифицированных средств криптографической защиты. Мы учтём эти требования и закрепим документально согласованный перечень мер в техническом задании.