Приветствуем любителей информационной безопасности, мы ЛианМедиа и мы знаем как защитить информационные системы. В данной статье мы расскажем о практике пентеста приложения 1С через менеджер кластера. Почему мы выбрали эту тему? Есть уязвимости, о которых мало что написано, но они требуют отдельной статьи.
Так же можете ознакомиться со статьёй Как атакуют системы 1С: клиентские версии.
Скрытый текст
Для тех, кто не в курсе:
Пентест или же тестирование на проникновение – это процесс имитации атаки на компьютерную систему, сеть или приложение с целью выявления уязвимостей и оценки уровня безопасности.
1С – это платформа на базе которой можно создавать различные приложения, от простого учёта домашних финансов до крупномасштабного бизнеса и производства.
В данной статье мы бы хотели рассказать с какими типовыми атаками пришлось столкнуться нашим специалистам в процессе поиска уязвимостей приложений 1С.
АТАКИ ЧЕРЕЗ МЕНЕДЖЕР КЛАСТЕРА 1С
В этот раз мы провели атаку через менеджер кластера 1С, но обо всём по порядку.
Кластер серверов «1С:Предприятие» является логическим понятием и представляет собой совокупность рабочих процессов, обслуживающих один и тот же набор информационных баз.
Кластеризация серверов защищает сервисы компании от аппаратного сбоя вычислительного ресурса – сервера. В случае выхода из строя одного из узлов кластера другой берет на себя основные функции.
На каждом рабочем сервере процессы кластера используют следующие порты:
IP порт рабочего сервера (обычно 1540);
IP порты из диапазонов IP портов рабочего процесса (обычно 1560-1591).
Порт кластера (обычно 1541) - для центрального сервера.
Мы обнаружили, что в кластере 1С существует уязвимость, связанная с недостаточной (отсутствующей) авторизацией на порте 1541 (и через 1540), который используется для подключения к кластеру. Если авторизация не настроена должным образом, злоумышленник может подключиться к кластеру через менеджер кластера, получив несанкционированный доступ к чувствительным данным и системе.
1. РАСШИФРОВКА ПАРОЛЕЙ ИНФОРМАЦИОННОЙ БАЗУ ДАННЫХ
Для подключения к 1С с портом 1541 мы выполнили следующие условия:
Наличие двух сопрягающихся между собой клиентской и серверной версий 1С (подбирается эмпирическим путем).
Скачали утилиту
Tool_1CD
(требуется для работы с БД 1С).
Tool_1CD – это популярная утилита чтения файловых баз данных, она позволяет увидеть структуру таблиц и полей файловой базы
1Cv8.1CD
, просмотреть содержимое таблиц.Дополнительно позволяет сохранить в файл основную конфигурацию, конфигурацию базы данных и конфигурации поставщика, просмотреть размер внутренних файлов, выгрузить содержимое таблиц в XML.
Файл базы 1С открывается монопольно, поэтому нельзя просматривать базу при запущенной 1С, в которой открыта эта база.
Если пароли находятся в конфигурационных файлах, то необходимо расшифровать пароли посредством конфигов, подробнее в статье «Как атакуют системы 1С: клиентские версии. Расшифровка паролей для подключения к базе данных посредством конфигов». Предварительно необходимо сдампить базу и накатить её локально.
Иначе пароли хранятся непосредственно в СУБД (зашиты в виде файла, т.е. представляют из себя артефакт), тогда следует воспользоваться ранее скаченной утилитой TOOL_1CD
.
Для раскрытия паролей мы выполнили ряд действий:
Открыли программу
Tool_1CD;
Меню → Файл → Открыли базу → выбирали файл
1Cv8.1CD;
В таблицах слева выбираем таблицу
v8users
;Из списка пользователей, нашли интересующего;
Читаем информацию из поля
DATA
;Найти хеш и провести дешифровку пароля, как было показано ранее.
2. АТАКА НА БАЗУ ДАННЫХ
Ранее мы получили доступ до базы данных MSSQL посредством расшифровки паролей для подключения к базе данных через конфиги, что открывает новые возможности для потенциального злоумышленника. Имея права администратора, злоумышленник получает возможность не только извлекать конфиденциальные данные, но и вносить изменения в структуру базы, изменять конфигурацию, манипулировать данными и даже полностью подменять информацию.
2.1. ЗАМЕНА ПАРОЛЕЙ НА ПУСТЫЕ ЗНАЧЕНИЯ
Предварительно мы определили уровень доступных прав. Если у атакующего имеются права на редактирование базы, он может легко изменить пароли пользователей на пустые, что обеспечит мгновенный доступ к их учётным записям.
2.2. ВЫПОЛНЕНИЕ КОМАНД И ЧТЕНИЕ ФАЙЛОВ
Дальнейшее развитие вектора атаки в базе MSSQL может происходить в следующих направлениях:
Чтение файлов на диске (в т. ч. и в SMB папках через
\\srv\folder
);Загрузка файлов на сервер;
Выполнение кода.
Выполнение команд и чтение файлов базы данных системы 1С могут представлять серьезные уязвимости, если не обеспечены должные меры безопасности.
1С, как и любые другие программные решения, могут быть подвержены атакам, если злоумышленники получат доступ к исполняемым командам или файлам базы данных.
Основные риски связаны с недостаточной защитой от несанкционированного доступа. Если доступ к файловой системе базы данных не ограничен, злоумышленник может выполнить команды, которые позволят ему манипулировать данными, извлекать конфиденциальную информацию или даже вносить изменения в структуру базы данных.
ЗАКЛЮЧЕНИЕ
Результаты проведённых атак на 1С показывают, что существует ряд уязвимостей, которые могут быть использованы злоумышленниками для проникновения в систему и компрометации данных. Выявленные слабости подчёркивают важность реализации надёжных мер информационной защиты от киберугроз. Разработчикам и администраторам следует обращать особое внимание на защиту и мониторинг баз данных, чтобы предотвратить возможные атаки на системы 1С.