Анализатор безопасности базы сервера 1С

09.08.23

Администрирование - Информационная безопасность

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

Скачать исходный код

Наименование Файл Версия Размер
Анализатор безопасности базы сервера 1С:
.epf 96,70Kb
17
.epf 1.0.2 96,70Kb 17 Скачать

На написание данной обработки сподвигла публикация коллеги (рекомендую к прочтению). В его статье описаны основные способы повышения привилегий в системе 1С и возможность «захвата» других ресурсов предприятия. Я всё попробовал, что получилось, автоматизировал и от себя немного добавил. После прочтения статьи, у меня остался один вопрос: что делать? У администратора сервера 1С или системного администратора нет времени, чтобы отслеживать настройки всего зоопарка баз, особенно если для их доработки или анализа привлекаются внешние пользователи. Это могут быть сторонние разработчики с административными правами на конкретную копию базы или аудиторы с возможностью запуска внешних отчётов. А вот у недобросовестного внешнего пользователя, особенно подключенного к базе удалённо, есть куча времени, чтобы поизучать, покопаться... 

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

Сразу важное замечание! 

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

Как проводится аудит безопасности и какие есть ограничения.

Автоматическую проверку безопасности можно производить только в системе, в которой защита организована заранее известным образом, по этому часть функций работают только при наличии БСП. Также обработка умеет работать только на серверах под управление ОС Windows, в планах покорить Linux, но пока нет доступного сервера для экспериментов. В самой обработке и в публикации есть графическая схема с последовательностью выполнения тестов.

Функциональность основного окна.

Всего 4 кнопки:

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

Схема анализа безопасности. Попытался в виде бизнес-процесса нарисовать алгоритм проводимого аудита.

Редактор консольных команд. Это тема отдельной диссертации конструктор команд, которые будут выполняться от имени сервера на сервере 1С. Помогает сформировать последовательность команд, выполняемых на сервере, для оценки возможности проникновения в сеть через атакуемый сервер 1С. Команды выполняются последовательно и результат выполнения предыдущих команд может использоваться в последующих. Тут мне никак не придумать «универсальный сетевой взломщик», команды должны быть написаны под конкретную сеть в содружестве с системным администратором, только он знает где хранятся чувствительные для компании данные. Для примера написана последовательность команд, которая получает все адреса сегмента сети, удаляет из них адреса локальных сетевых интерфейсов и перебором ищет доступные для пользователя, от имени которого запущен сервер, сетевые папки. Важно! Команда получения списка доступных ресурсов выполняется медленно, по этому в эти тесты отключены. Включить их можно поставив «+» в левой колонке макета «Выполняемые команды» Также у формы есть раздел помощи там функционал описан подробно.

Кнопка запуска тестов, соответственно запускает тестирование. Если для вашей учётной записи включена защита от опасных действий, то программа будет ругаться («опасность» – наше второе имя :-)), но нужно нажимать «Да» и перезапускать тест.

Описание тестов.

Описание тестов и рекомендации по усилению безопасности даны непосредственно в отчёте, но тут дам некоторые пояснения.

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

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

Udp. 14.05.2023. Нашёл тут публикацию //infostart.ru/public/1295065/, вот представьте что сможет сделать недобросовестный сотрудник вооружённый такой штукой, а если сервер 1С запущен с правами системы? Тогда вообще туши свет!

Проверка безопасного хранилища. Тут сложно определить потенциальную опасность утечки данных, по этому обработка если что-то находит в регистре, считает проверку не пройденной. Но хочу отметить, что конфигурация 1С:Документооборот версии 2.1 и Комплексная автоматизация 2.4 хранят учетные данные почты именно в этом регистре и, если, в вашей организации используется работа с почтой через 1С, содержимое этого регистра необходимо контролировать. Вот, предположим, дали вы внешнему разработчику доступ к копии базы, а он автоматически получил учетные данные всей корпоративной почты.

Аудит паролей. Тут всё по той статье, на которую я сослался в начале, некоторый набор наиболее часто используемых паролей, я взял в Инете (посчитанные по нему хэши лежат в макете «Хэши паролей»), вы можете использовать любой свой и нагененерировать из него хэшей.

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

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

Выполнение консольных команд. Этот модуль создан для того, чтобы можно было оценить возможности пользователя 1С, работающего от имени сервера в сети. Тут необходима адаптация под конкретную сеть. Например в сети есть папка, в которую собирают данные к совещаниям, у обычных бухгалтеров туда доступа нет, а у учётки, под которой запущен сервер? Не известно, нужно проверять, например вписать в список команд net use «имя важного сервера» (в макете «Выполняемые команды» есть похожий пример).

Обработка тестировалась на клиент-серверных базах в платформах 8.3.17.2760, 8.3.19.1726 и 8.3.22.1750.

безопасность пароли аудит

См. также

AUTO VPN (portable)

Информационная безопасность Платные (руб)

Автоматизация подключения пользователей к удаленному рабочему месту или сети посредством создания автоматического VPN (L2TP или L2TP/IPSEC и т.д.) подключения без ввода настроек пользователем (с возможностью скрытия этих настроек от пользователя). Программа автоматически выполняет подключение к VPN серверу и после успешного коннекта , если необходимо, подключение к серверу удаленных рабочих столов (RDP).

1200 руб.

24.03.2020    14494    22    32    

33

Настройка аутентификации в 1С с использованием стандарта RFC 7519 (JWT)

Информационная безопасность Платформа 1С v8.3 Бесплатно (free)

Рассмотрим в статье более подробную и последовательную настройку аутентификации в 1С с использованием распространенной технологии JWT, которая пришла в программу в платформе версии 8.3.21.1302.

27.02.2024    3172    PROSTO-1C    10    

32

Device flow аутентификация, или туда и обратно

Информационная безопасность Платформа 1С v8.3 Абонемент ($m)

Интеграционные решения стали неотъемлемой частью нашей жизни. Правилом хорошего тона в современных приложениях является не давать интегратору доступ к чувствительным данным. Device flow позволяет аутентифицировать пользователя, не показывая приложению чувствительные данные (например: логин и пароль)<br> Рассмотрим Device flow аутентификацию, в приложении, на примере OpenID провайдера Yandex.

1 стартмани

27.10.2023    1714    platonov.e    1    

23

Двухфакторная аутентификация в 1С через Telegram и Email

Информационная безопасность Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

1С, начиная с версии платформы 8.3.21, добавили в систему возможность двойной аутентификации. Как это работает: в пользователе информационной базы появилось свойство «Аутентификация токеном доступа» (АутентификацияТокеномДоступа во встроенном языке), если установить этот признак и осуществить ряд манипуляций на встроенном языке, то появляется возможность при аутентификации отправлять HTTP запросы, которые и реализуют этот самый второй фактор. Данное расширение позволяет организовать двухфакторную аутентификацию с помощью электронной почты или мессенджера Telegram.

2 стартмани

08.12.2022    6117    33    Silenser    12    

23

История одного взлома или проверьте вашу систему на безопасность

Информационная безопасность Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

От клиента клиенту, от одной системы к другой, мы вновь и вновь встречаем одни и те же проблемы и дыры в безопасности. На конференции Infostart Event 2021 Post-Apocalypse Виталий Онянов рассказал о базовых принципах безопасности информационных систем и представил чек-лист, с помощью которого вы сможете проверить свою систему на уязвимость.

26.10.2022    9455    Tavalik    46    

113

Бесшовная доменная аутентификация ОС при интеграции 1С:ERP и 1С:Документооборот

Информационная безопасность Платформа 1С v8.3 1С:Документооборот 1С:ERP Управление предприятием 2 Абонемент ($m)

Доменная аутентификация ОС при бесшовной интеграции 1С:Документооборот 8 КОРП, редакция 2.1 (2.1.29.18) и 1С:ERP Управление холдингом (3.1.7.4) (в клиент-серверном режиме).

1 стартмани

16.09.2022    3536    oleg21592    6    

19
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. artbear 1527 11.05.23 13:50 Сейчас в теме
Какая интересная штука, и едва не проскочила мимо меня!

Автору большущее спасибо!
2. yukon 145 11.05.23 15:47 Сейчас в теме
Не все применимо.

Например,
"Проверка безопасного хранилища." - так именно там и надо хранить логины/пароли. Если мы говорим про стандарты разработки 1С. При развороте копии данные этого регистра надо удалять.

"Проверка прав рабочего процесса в ОС" - дефолтные права на системном диске как раз разрешают создавать свои папки.

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

"Поиск и анализ настроек сервера." - очень редкий зверь, в том числе и потому, что в самом файле `swpuser.ini` нужно указывать логин/пароль в ОТКРЫТОМ виде.

"Выполнение консольных команд." - Просто отлично!!!
5. soulner 361 14.05.23 15:57 Сейчас в теме
(2) Про безопасное хранилище вы абсолютно правы, но я не встречал, чтобы кто-то так делал. Если моя обработка будет напоминать про эту операцию, значит уже написана не зря.
Дефолтные права на системном диске дают возможность создавать свои папки и записывать в них файлы. Внизу скрин с MS Server 2016. А я проверяю путём создания файла в корне диска С:\. Помню была уязвимость в винде при запуске оболочки. В реестре было просто прописано Explorer.exe без пути и если есть возможность писать в корень системного диска, то можно было какую-нибудь гадость назвать explorer.exe и она запускалась при входе пользователя.
По подключению к СУБД MS SQL всё очень просто и нет необходимости делать отдельную проверку. При анализе конфигурации кластера, если нет пароля подключения к базе, формируется строка подключения через ADODB для каждой базы и потом в цикле по этим строкам обработка пытается подключиться. Если удалось, то выводим информацию об этом.
Прикрепленные файлы:
3. Jimbo 9 12.05.23 11:30 Сейчас в теме
Не хватает фото-изображения самой обработки.
4. soulner 361 14.05.23 15:40 Сейчас в теме
(3) Подумал, что внешний вид отчёта в 4-мя кнопками не обладает высокой художественной ценностью. Но раз надо...
Прикрепленные файлы:
6. Созинов 31.07.23 08:30 Сейчас в теме
Ошибка в макете ОтчетПоБезопасности. Неправильно задано имя области РезультатПоискаНастроекСервераСервераОтказ - приводит к ошибке в процедуре Вывести_РезультатПоискаНастроекСервера
7. soulner 361 09.08.23 18:27 Сейчас в теме
Оставьте свое сообщение