gifts2017

Задача. Простая и любопытная

Опубликовал Serj (Serj1C) в раздел Администрирование - Системное

Суть Задачи: Найти способ как узнавать значение константы Пароль. Единственное условие - нельзя снимать конфигурацию с поддержки и включать возможность ее редактирования.

Придумал задачку. Не сложная, просто интересно какое решение вы найдете.
Качайте файл. Поставка (exe + efd), выгрузка информационной базы (dt), просто конфигурация (cf) или сама информационная база (1cd). Кому уж как удобнее.

Суть Задачи. Найти способ как узнавать значение константы Пароль. Единственное условие - нельзя снимать конфигурацию с поддержки и включать возможность ее редактирования. Весь исходный код этой маленькой конфигурации является открытым. На форме констант поле "Пароль" естеств енно вводится в режиме пароля.

Первый комент с решением плюсую +))

PS: Решения с стиле загрузить в серверную базу и посмотреть в таблице SQL и Tool_1CD (http://infostart.ru/public/19633/) не засчитываются.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Полный архив (zip)
.zip 192,49Kb
22.08.14
5
.zip 192,49Kb 5 Бесплатно
Информационная база (1CD)
.1cd 336,00Kb
22.08.14
42
.1cd 336,00Kb 42 Бесплатно
Выгрузка информационной базы (DT)
.dt 11,99Kb
22.08.14
3
.dt 11,99Kb 3 Бесплатно
Конфигурация (CF)
.cf 10,95Kb
22.08.14
0
.cf 10,95Kb 0 Бесплатно
Поставка (rar архив)
.rar 146,08Kb
22.08.14
1
.rar 146,08Kb 1 Бесплатно

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Валерий Агеев (awa) 28.12.09 10:49
Пишем в табло Константы.Пароль.Получить() - получаем "HelloWorld!))"
2. Serj (Serj1C) 28.12.09 10:50
3. Михаил Ражиков (tango) 28.12.09 10:50
Во внешнюю обработку копируем форму констант и снимаем у реквизита галку "РежимПароля"
4. Serj (Serj1C) 28.12.09 10:51
(3) Облом. Нарушение прав доступа!
5. Serj (Serj1C) 28.12.09 10:54
(4) В конфигурации единственная роль с отключенными внешними обработками, отчетами и COM-соединениями.
6. Михаил Ражиков (tango) 28.12.09 10:55
Да ну? Все равно скачивать твою поставку не буду :)
**
а табло не отключается?
7. Костя Пономаренко (kostia3005) 28.12.09 11:09
ХешАвторизации = ПользователиИнформационнойБазы.ТекущийПользователь().СохраняемоеЗначениеПароля;

ХешАвторизации это SHA завернутое в base64, декодируешь и получаешь счастье :idea:
8. Serj (Serj1C) 28.12.09 11:12
(7) табло и просмотр выражений являются неотъемлемой частью платформы
**
По-моему прикольная задачка ;)
9. Костя Пономаренко (kostia3005) 28.12.09 11:12
ХешАвторизации = ПользователиИнформационнойБазы.ВыбраныйПользователь.СохраняемоеЗначениеПароля;

ХешАвторизации это SHA завернутое в base64, декодируешь и получаешь счастье :idea:
10. Serj (Serj1C) 28.12.09 11:13
(9) Вход в Предприятие - Администратор без пароля.
А нам нужна константа ))
11. dushelov (Душелов) 28.12.09 11:26
Ну а еще, думаю, можно через ОЛЕ подсоединиться к этой базе и посмотреть значение константы.
12. Serj (Serj1C) 28.12.09 11:28
13. Михаил Ражиков (tango) 28.12.09 11:30
14. dushelov (Душелов) 28.12.09 11:35
(12) Почему? У пользователя нет прав на ком-соединение?
15. Serj (Serj1C) 28.12.09 11:46
(14) Да
Прикрепленные файлы:
16. Serj (Serj1C) 28.12.09 11:48
17. dushelov (Душелов) 28.12.09 12:01
Ну тогда табло, отладчик и т.п.
18. Валерий Агеев (awa) 28.12.09 13:12
19. Alexandr (maloi_a) 29.12.09 09:33
Зайдите в Отладчик и всё получите.
1. Зайти в Модуль приложения,
2. поставить точку останова на оператор ПолучитьОбщуюФорму(Метаданные.ОсновнаяФормаКонстант.Имя).Открыть();
3. войти в 1С
4. остановились в отладчике, получаете "HelloWorld!))" всё, что угодно вычислив выражение и без табло.
20. Трактор Трактор (Трактор) 29.12.09 09:47
Глупейший вопрос. Ответ очевиден.
Есть 1001 способ узнать значение константы. Начиная с табло и заканчивая консолью запросов или конструктором отчётов.
В пофигуратор входить необязательно.

А за слова
Первый комент с решением плюсую +))

хочется поставить минус
21. Serj (Serj1C) 29.12.09 10:11
(19) Я так же делал, думал мож еще есть идеи? ))
(20) Ты невнимателен. Консоли запросов и конструкторы отчетов в данном случае проблемно запустить. Расскажи хотябы один из своих 1000 и одного способа, чтобы он сработал.
22. Трактор Трактор (Трактор) 29.12.09 10:46
(21) >> Ты невнимателен. Консоли запросов и конструкторы отчетов в данном случае проблемно запустить.
В чём проблема?

А решения могут быть такими:
1. Посмотреть в отладчике.
2. Если нет прав на данные, но есть конфигурация, то найти в конфигурации функцию в привилегированном модуле которая возвращает эту константу или записывает её куда-нибудь в доступное место. Обратиться к этой функции.
3. Посмотреть в конфигурации в какие другие переменные/реквизиты копируется значение константы. Порыскать по ним.
4. Самый надёжный способ: Взять копию базы, снести всех пользователей, стать админом, дать себе достаточно прав и посмотреть таки в табло/консоли.
23. Serj (Serj1C) 29.12.09 11:11
(22) Так и есть, решение в отладке. Права на данные есть, пользователь и так админ, но прав на внешние отчеты и обработки ему не дашь (вся конфигурация только чтение).

Аудитория на ИС подкованная, решение видит сразу. Почему бы такое задание, например, не дать на собеседовании? или дополнтельного задания студентам?
24. LeXxX Астопов (lcd-boost) 03.01.10 13:14
пароль можно посмотреть с помощью опенпасс. наводим курсор на *** и читаем. надеюсь я не повторил чьих либо мыслей:) все посты не читал. всех с новым зулом!!!
25. Serj (Serj1C) 03.01.10 18:16
(24) Дай ссылку на такой опенпасс, а то мой не подошел.
Мы об этом думали, как альтернативное решение.
26. Сергей Рудаков (fishca) 31.05.10 18:35
То что пароль хранится в базе в открытом виде знают 99,99% здешних обитателей и выудить его из базы нет никакой проблемы.
27. Станислав Гирман (Niberu) 23.04.13 10:09
Не археолог я, просто тема только сейчас на глаза попалась.
Прочитал первый ответ на задачу и вспомнилось кое что.

В 7.7 в глобальном модуле базы когда-то давно писал функцию и вызывал её из табло у юзеров.
Функция делала что мне надо с константами и т.п. и возвращала 1 при успехе, 0 при исключении.
Из табло можно было вызывать глобальные функции, а процедуры нельзя, вроде.

Интересно, надо бы попробовать, в 8-ке процедуры из табло вызываются?
28. Михаил Ражиков (tango) 23.04.13 10:17
(27) Niberu, Табло
Табло - специальное окно, в котором отображаются результаты вычисления введенных в него формул.

Для показа табло выберите пункт "Сервис - Табло".

Табло и пункт открытия показываются только во время выполнения отладки.

Управление табло и результатами вычислений осуществляется с помощью команд контекстного меню.

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

Каждая формула вводится в первую колонку таблицы и должна находиться на отдельной строке. Результат вычисления формулы выдается во второй колонке справа от формулы. Если формула введена неправильно, то вместо результата появится фраза "Ошибка в выражении!".

Результат расчета может быть скопирован в буфер обмена выбором пункта "Копировать результат" контекстного меню второй колонки.

Для некоторых типов данных возможен просмотр значений в отдельном окне.

Если в процессе работы исходные данные, используемые в формулах, изменились, то для получения актуальных результатов расчетов необходимо выполнить обновление. Для этого в контекстном меню табло выберите пункт "Пересчитать" или "Пересчитать все".

прикинь, просто нажать ф1 !
29. Станислав Гирман (Niberu) 23.04.13 11:34
(28) я знаю, что вы умный.
А я писал про юзерское табло в 7.7 в режиме "enterprise".
30. Станислав Гирман (Niberu) 23.04.13 11:41
> процедуры из табло ?

Конечно нет.
Благодаря вам, tango, мысли из куч по полочкам расставляются.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа