При внутреннем или внешнем пентесте компаний можно обнаружить сервис 1С. Этот продукт зачастую используется для финансового или управленческого учета. При сценарии внутреннего тестирования вам может посчастливиться достучаться до порта 1541/TCP (порт кластера 1С), а если повезет еще больше, то вход в кластер не будет защищен паролем и это может привести к удаленному выполнению кода (RCE).
Эксплуатация подробно описана вот в этой замечательной статье.
Я совсем недавно узнал об этой технике от коллеги и решил попробовать проверить работоспособность. Я обнаружил адрес кластера, подобрал версию клиента 1С, подключился в кластер и зашел в меню добавления новой информационной базы. Далее в статье упоминается, что необходимо развернуть специальный 1С-ный образ СУБД Postgres, но подробный алгоритм не приведен и тем более мало чего сказано про linux. Городить зоопарк из виртуалок возможно, но ситуация осложняется, когда доступ изнутри во внешку закрыт и хочется работать со своей kali машины.
Я прочитал множество статей (вот эта самая хорошая) и попробовал множество версий postgres, в том числе и оффициальных, столкнулся с кучей ошибок в процессе дебага. И в итоге мне удалось собрать рабочий Dockerfile для postgres, который можно просто развернуть на вашей kali машине и подключиться из консоли кластера. Процесс подключения описан в статье от ardent101 выше, поэтому просто скажу, что я был очень рад, когда это наконец получилось.
- Клонируем репу:
git clone https://github.com/curiv/postgres-1c-for-pentest
- Заваливаемся в склонированную папку:
cd postgres-1c-for-pentest
- Собираем образ:
sudo docker build -t postgrespro-1c:15 .
- Стартуем контейнер из образа:
sudo docker run --name postgrespro1c -p 5432:5432 postgrespro-1c:15
-
Указываем IP нашей kali машины, пользователь
onec_user, база данных -onec_db. пароль пользователя -StrongPassword123. -
???
-
PROFIT. Теперь вы можете подключать свой кастомный EPF/DT 1С обработчик через конфигуратор (обязательно нужен толстый клиент) и добиться удаленного выполнения команд. Должно заработать и у вас.
PS: Возможно, какие-то слои абсолютно излишни, но считаю, что вы можете отредактировать что-то сами. Я решил свою задачу и решил поделиться. Всем добра.
UPD: Подсказали, что есть вот такой еще образ