Как отобразить все пароли программы «МИС Инфоклиника»

Posted by

Порой просто необходимо, что-то оттестировать в программе «МИС Инфоклиника», будь-то поведение определенной настройки под доктором, создание плана лечения, перенос шаблона, как это делается. Или Вы, как системный администратор пишете инструкцию докторам. Прикольно, Да! Доктор не может самостоятельно понять, как работает рабочая программа в организации, а сразу же складывает лапки, я не могу работать меня не обучили, а ты пишешь ему инструкцию плавая в терминологии. Мне довелось работать в такой компании и я писал инструкции для них. Можно конечно зайти под любым доктором используя системный пароль, но тогда я этого не знал, а значит нацелился узнать где программа «МИС Инфоклиника» хранит пароли «Справочника персонала».

Шаг №1: Проверить, какая схема авторизации используется:

Запускаем «МИС Инфоклиника» — авторизуемся — Сервис — Параметры авторизации — и в моем случае, как видно:

  • Формат хранения пароля: Простой текст

ни настроенной LDAP авторизации, ни настроенной авторизации в Active Directory.

Из этого можно сделать вывод, если хоть немного поработали с данной программой, что все что в программе есть в базе, а база OpenSource решение на базе Firebird. Значит можно подключиться к базе и увидеть пароли всех пользователей.

Шаг №2:

Запускаю утилиту входящую в поставку «МИС Инфоклиника»

C:\Infoclinica\18.2_18.12.17.1\App\Bin\Win64\Utils\BkUtils3.exeОткрытьПсевдоним (или сочетание клавиши F4) — запустится окно «Базы данных» где будет псевдоним указанный в infodent.ini, в моем случае это database, чуть ниже это именование текущей системы и через двоеточие алиас до базы. Итого

  • database — Псевдоним
  • W10X64:database — Алиас

W10X64 — это именование хоста текущей системы

Напомню, что алиас прописываю в каталоге куда установлен Firebird 3.0.4

C:\Program Files\Firebird\Firebird_3_0\файл databases.conf

#Alias

database = d:\info\database.FDB

Щелкаю левой кнопкой мыши по псевдониму окна «Базы данных», появляется окно «Пароль» и надпись «Введите пароль:», ввожу пароль от базы данных PASSWORD и нажимаю кнопку OK, в случае успешно ввода пароля получаю колонку с перечнем всем таблиц используемых программой «МИС Инфоклиника».

Шаг №3: Пароли всех пользователей программы «МИС Инфоклиника» располагаются в таблицы под именемDOCTOR”, щелкнув левой кнопкой мыши по данной таблицы ее содержимое раскроется в правой части и будут выведены все колонки, к примеру: DCODE, FILIAL, DNAME, DPASSWD, FULLNAME

внимательно приглядевшись к колонке DPASSWD я успешно нашел свой пароль который задавал при первом входе и он действительно в чистом виде (plain text)

На заметку: Если Вы Системный администратор в компании и в параллели обслуживаете программу «МИС Инфоклиника» то мой Вам совет пароли в домене и программе обязательно должны отличаться. Дабы под Вами никто не совершил нехороших действий мало ли что.

Щелчок левой кнопкой мыши по таблице DOCTOR открыл не только содержимое данной таблицы, но и возможность посмотреть через вкладку структуру (СТРУКТУРА), триггеры (ТРИГГЕРЫ), индексы (ИНДЕКСЫ) и т. д.

Далее Вам может понадобиться сформировать собственную выборку, делается это через SQLзапрос: Задачи — SQL-запрос и во вкладке SQL-запрос:

select * from doctor where FULLNAME like '%фамилия%';

выведет отсортированные результаты по осуществленной через поиск фамилии.

После всех действия не забыть отключиться от базы:

Открыть — Отключиться от базы

На заметку: Все действия с базой лучше сперва осуществлять сделав ее бекап, а уже после через отрепетированные действия на боевой.

Итого: Ваша защита, это правильнее использовать аутентификацию через Active Directory, пароли хранятся в зашифрованном виде, удобство управления и охранять базу данных и скрипты осуществляющие резервное копирование. Только доверенные лица. Пароли менять переодически.

Изменил себе пароль в «МИС Инфоклиника» на Aa1234567

Т.к. в инфоклинике пароль в базе хранится в plain text и если он у Вас используется и во вход в домен, то это большая Ваша проблема. А Вы Domain Admins что тогда? Представляете угрозу.

Обновить пароль на учетную запись:

update doctor set DPASSWRD='Aa1234567' where DNAME='фамилия';

На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.