Skip to content

curiv/postgres-1c-for-pentest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

Postgres 1C для пентеста

При внутреннем или внешнем пентесте компаний можно обнаружить сервис 1С. Этот продукт зачастую используется для финансового или управленческого учета. При сценарии внутреннего тестирования вам может посчастливиться достучаться до порта 1541/TCP (порт кластера 1С), а если повезет еще больше, то вход в кластер не будет защищен паролем и это может привести к удаленному выполнению кода (RCE).

Эксплуатация подробно описана вот в этой замечательной статье.

Я совсем недавно узнал об этой технике от коллеги и решил попробовать проверить работоспособность. Я обнаружил адрес кластера, подобрал версию клиента 1С, подключился в кластер и зашел в меню добавления новой информационной базы. Далее в статье упоминается, что необходимо развернуть специальный 1С-ный образ СУБД Postgres, но подробный алгоритм не приведен и тем более мало чего сказано про linux. Городить зоопарк из виртуалок возможно, но ситуация осложняется, когда доступ изнутри во внешку закрыт и хочется работать со своей kali машины.

Я прочитал множество статей (вот эта самая хорошая) и попробовал множество версий postgres, в том числе и оффициальных, столкнулся с кучей ошибок в процессе дебага. И в итоге мне удалось собрать рабочий Dockerfile для postgres, который можно просто развернуть на вашей kali машине и подключиться из консоли кластера. Процесс подключения описан в статье от ardent101 выше, поэтому просто скажу, что я был очень рад, когда это наконец получилось.

Собрать и стартануть

  1. Клонируем репу:

git clone https://github.com/curiv/postgres-1c-for-pentest

  1. Заваливаемся в склонированную папку:

cd postgres-1c-for-pentest

  1. Собираем образ:

sudo docker build -t postgrespro-1c:15 .

  1. Стартуем контейнер из образа:

sudo docker run --name postgrespro1c -p 5432:5432 postgrespro-1c:15

  1. Указываем IP нашей kali машины, пользователь onec_user, база данных - onec_db . пароль пользователя - StrongPassword123.

  2. ???

  3. PROFIT. Теперь вы можете подключать свой кастомный EPF/DT 1С обработчик через конфигуратор (обязательно нужен толстый клиент) и добиться удаленного выполнения команд. Должно заработать и у вас.

PS: Возможно, какие-то слои абсолютно излишни, но считаю, что вы можете отредактировать что-то сами. Я решил свою задачу и решил поделиться. Всем добра.

UPD: Подсказали, что есть вот такой еще образ

About

This repo contains a valid ready to run Dockefile to be used in 1C cluster RCE technique

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published