Как защитить резервные копии 1С от вирусов-шифровальщиков и взлома сервера?

Системный администратор IT и автоматизация бизнеса
← На главную

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

Метод «слепой» папки: ограничение прав на уровне файловой системы

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

Разберем этот алгоритм по шагам:

  1. Создадим в системе отдельного технического пользователя, например, под именем Backuper.
  2. От имени этого пользователя создадим целевой каталог для хранения архивов.
  3. Настроим права доступа (NTFS) таким образом, чтобы для всех остальных пользователей (включая администраторов и службу, под которой запускается скрипт бэкапа) было разрешено только «Запись» (Write), но полностью запрещено «Чтение» (Read) и «Просмотр содержимого папки» (List folder contents).

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

Переход от модели Push к модели Pull

Традиционно многие системные администраторы используют модель Push: основной сервер 1С после создания бэкапа сам «толкает» его на сетевое хранилище (NAS) или другой сервер. Это создает огромную дыру в безопасности: если сервер 1С взломан, у злоумышленника в руках оказываются логины и пароли от хранилища бэкапов.

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

Использование стратегии «3-2-1-1-0»

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

Проанализируем пункт про неизменяемость. Существуют облачные хранилища (S3) с поддержкой функции Object Lock. Если вы загрузили туда файл с блокировкой на 14 дней, то в течение этого срока его не сможет удалить даже владелец аккаунта с правами суперадминистратора. Это абсолютная защита от удаления архивов хакерами.

Резервное копирование в облака и версионность

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

Чтобы избежать этого, необходимо:

  1. Включать версионность в настройках облачного хранилища. В этом случае облако сохранит предыдущую (здоровую) версию файла, а зашифрованный файл просто станет новой версией.
  2. Использовать шифрование на стороне клиента перед отправкой. Если злоумышленник украдет ваш бэкап из облака (Double Extortion), он не сможет его прочитать и использовать для шантажа.

Защита от удаления теневых копий (VSS)

Посмотрим на типичное поведение современного вируса. Почти всегда первой командой в системе выполняется:

vssadmin.exe Delete Shadows /All /Quiet

Эта команда мгновенно уничтожает все точки восстановления Windows. Поэтому никогда не полагайтесь на встроенные средства защиты ОС как на единственный метод спасения. Для надежной защиты используйте снапшоты (Snapshots) на уровне файловой системы (например, ZFS или Btrfs) или на уровне сетевого хранилища (NAS). Эти снимки находятся «ниже» уровня операционной системы Windows, и обычный вирус не имеет к ним доступа.

Практические советы по безопасности СУБД

Если вы используете MS SQL Server или PostgreSQL, примите следующие меры:


// Пример логики перемещения файла в защищенное хранилище
Процедура ПереместитьБэкапВЗащищеннуюЗону(ПутьКФайлу, ЦелевойКаталог)
    ФайлНаДиске = Новый Файл(ПутьКФайлу);
    Если ФайлНаДиске.Существует() Тогда
        Попытка
            КопироватьФайл(ПутьКФайлу, ЦелевойКаталог + ФайлНаДиске.Имя);
            УдалитьФайлы(ПутьКФайлу);
            ЗаписьЖурналаРегистрации("РезервноеКопирование", УровеньЖурналаРегистрации.Информация, , , "Файл успешно перемещен.");
        Исключение
            ЗаписьЖурналаРегистрации("РезервноеКопирование", УровеньЖурналаРегистрации.Ошибка, , , "Ошибка: " + ОписаниеОшибки());
        КонецПопытки;
    КонецЕсли;
КонецПроцедуры

Изоляция и «физический разрыв» (Air Gap)

Самый надежный способ, упомянутый специалистами — это использование внешних носителей, которые физически отключаются от сети. Это могут быть RDX-картриджи или даже обычные внешние жесткие диски, которые подключаются по графику. Никакой хакер в мире не сможет зашифровать диск, который лежит в сейфе или просто отключен от USB-порта.

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

← На главную