Показано с 1 по 10 из 22
-
26.12.2012, 22:29 #1
- Регистрация
- 04.01.2012
- Сообщений
- 20
- Сказал(а) спасибо
- 6
- Поблагодарили 9 раз(а) в 4 сообщениях
Взлом\Эмуляция ключей Катран (СЛК 1.1 - ?)
Всем доброго! Есть такие конфы, от 1с-рейтинга.kz, защищённые ключами для конфигураций, т.е. не hasp для платформы, а именно ключи для конфигурации (в конфе мутят кучу ссылок на проверку защиты, чуть ли ни в каждом отчёте\документе, поэтому отключить их трудно(по крайней мере я никак не сообразил как, слишком много "привязей")) Ключи usb маленькие красненькие, вот такие:
Работают на проге СЛК 1.1, зовутся Катрановскими (гугл шепнул)
Суть: банально, но про%%ли ключ (при перевозке выпал из дырявой коробочки по всей видимости, всю машину облазил, не нашёл....), уже отправили запрос но получение нового ключа, но он будет идти больше недели, а сея конф-ция нужна для работы уже в пятницу. Зашиваемся, нужно временно ломануть...
Ребят, кто сталкивался, кто знает как ? С меня Пивасик.
P.S. Платф. 1С8.2 конечно же, а Конфа - Бух учёт для Казахстана: организация здравоохранения.
Выручайте!!!
-
28.12.2012, 02:35 #2
-
Пользователь сказал cпасибо:
lobster00 (26.03.2021)
-
28.12.2012, 11:27 #3
- Регистрация
- 04.01.2012
- Сообщений
- 20
- Сказал(а) спасибо
- 6
- Поблагодарили 9 раз(а) в 4 сообщениях
Там уж очень много ссылок в конфе, поможешь расковырять ? По тимвиверу там и скайпику ?
-
29.12.2012, 15:53 #4
- Регистрация
- 17.01.2011
- Сообщений
- 142
- Сказал(а) спасибо
- 0
- Поблагодарили 14 раз(а) в 14 сообщениях
Думаю не получится, поскольку отучал бухгалтерию сельскохозяйственного предприятия от такого-же ключа (СЛК 2.0).Этот ключ-по сути криптопроцессор.В конфе есть специальный файл, в котором хранятся элементы защищенной конфигурации.И, например, при проведении документа дается ссылка на кусок зашиврованного кода в этом файле, ключ расшифровывает и передает текст обратно 1С-ке, и она уже формирует проводку.Поскольку кусков таких было не так уж и много, то просто ручками всё это дело переписывал.Какой-либо программы-эмулятора тоже не нашел.
Поживем - увидим, доживем - узнаем, выживем - учтем!
-
Пользователь сказал cпасибо:
ksoft (22.01.2013)
-
29.12.2012, 15:58 #5
-
01.01.2013, 12:19 #6
- Регистрация
- 04.01.2012
- Сообщений
- 20
- Сказал(а) спасибо
- 6
- Поблагодарили 9 раз(а) в 4 сообщениях
Значит ничего не сможем сделать....И Придётся ожидать новый ключ.....
-
01.01.2013, 13:04 #7
-
23.07.2018, 09:28 #8
- Регистрация
- 27.12.2015
- Сообщений
- 3
- Сказал(а) спасибо
- 0
- Поблагодарили 0 раз(а) в 0 сообщениях
Re: Взлом\Эмуляция ключей Катран (СЛК 1.1 - ?)
Как взломать СЛК за 20 минут
Честно говоря, мне совершенно не хотелось взламывать сервер лицензирования конфигураций (СЛК), ибо, исходя из назначения СЛК и судя по разговорам в Интернете, это в принципе невозможно. Но мои пользователи настолько замучили меня своими жалобами на программы, запрятанные на СЛК, что пришлось ввязаться в это безнадежное мероприятие ради получения доступа к исходным текстам, что хоть как-то позволило взять ситуацию под контроль.
Эта статья — своеобразная месть за многочисленные проблемы, которые доставляют жадные производители программного обеспечения, скрывающие свои «творения» от сопровождающих их специалистов, и нарушающие основной принцип 1С - открытость исходных текстов и и возможность изменить их под свои нужды. В моем случае особенно обидным является наличие ошибок в защищенных модулях и отсутствие какой-либо поддержки от производителя. Такое нельзя оправдать никакой «защитой интеллектуальной собственности».
Перейдем непосредственно к сути вопроса. Если вы имеете опыт программирования в среде 1С, то взломать СЛК и выгрузить оттуда исходные тексты защищенных модулей не представляет никакой сложности. При некотором навыке вы будете тратить на каждый модуль не более 20 мин. Полученные модули можно вставить в вашу конфигурацию, и она сможет работать без помощи СЛК.
Интересующие нас модули размещаются в модулях объекта обработок, которые в зашифрованном виде хранятся на СЛК. В процессе работы эти обработки подгружаются в 1С Предприятие примерно следующим образом:
Collapse
// Этап 1 запускается компонента для связи с СЛК.
ПодключитьВнешнююКомпонен ту("ОбщийМакет.торо_Компоне нтаСЛК_2_0_Session", "Licence",ТипВнешнейКомпоненты .Native);
МенеджерЛицензий = Новый("AddIn.Licence.LicenceExtension20");
Адрес = "????????????";
Порт = "9099";
МенеджерЛицензий.Параметр� �Связи = "host=" + Адрес + ";port=" + Порт;
МенеджерЛицензий.ОкноУста� �овкиСвязи = Истина;
МенеджерЛицензий.Запуск("??? ?", Ложь); // Параметры: серия, только наличие ключа
// Этап 2 с СЛК запускается внешняя обработка 1С, проверяющая наличие свободной лицензии и запускающая нужную нам обработку
МенеджерОбъектов = ВнешниеОбработки.Создать(М енеджерЛицензий.МенеджерО� �ъектов, БезопасныйРежим());
МенеджерОбъектов.Установи� �ьМенеджерЛицензий(Менедже рЛицензий);
// Этап 3 с СЛК запускается внешняя обработка 1С, выполняющая нужный нам расчет
Обработка = МенеджерОбъектов.СоздатьО� �ъект("КакаяТоОбработкаНаи� �енование");
// в этом месте необходимо остановить платформу чтобы прочитать текст модуля объекта нашей обработки
Вопрос("Сделайте дамп памяти ",РежимДиалогаВопрос.ОК);
// Этап 4 собственно выполнение нужного нам расчета
Обработка.ВыполнитьКакойТ� �Расчет();
Реальный механизм несколько сложнее и запутаннее, а также может отличаться в зависимости от конфигурации, но автор надеется на ваш профессионализм и способность посмеяться над этой пародией на обфускацию.
И так, наша задача – найти место где создается обработка, выполняющая интересующие нас действия, остановить платформу сразу после ее создания, сделать дамп памяти платформы и поискать там исходные тексты этой обработки. По моему опыту есть большой шанс, что модуль объекта обработки не компилирован, а участок памяти, где хранился ее исходный текст, не был использован на другие нужды.
Когда такое место найдено, то теоретически можно остановить платформу в отладчике конфигуратора и сохранить дамп памяти, но это не самый лучший путь. Объем дампа может быть очень большим, вычисления выполняются на сервере приложений, который может быть нам не доступен, взаимодействие платформы с отладчиком требует дополнительного обращения к памяти. Последнее обстоятельство может привести к порче исходного текста, а именно вкраплению в него каких-то двоичных данных.
Для того чтобы безнадежное мероприятие имело шанс на успех предлагается следующая методика. Все этапы создания обработки переносятся в чистую файловую базу данных. При этом база должна запускаться в режиме обычного приложения. Если не получиться прочитать тексты, можно попробовать управляемое приложение. Механизм создания интересующей нас обработки оформляется как в моем случае в виде внешней обработки или любым другим удобным для исследователя способом. Текст программы должен похож на приведённый выше, остановка платформы осуществляется встроенной функцией Вопрос(). Если в процессе создания исследуемой обработки обнаружатся ссылки на необходимые ей объекты конфигурации, перенесите эти объекты из исходной конфигурации. В моем случае имели место сообщения об отсутствии нескольких переменных, которые в действительности были общими модулями. Для преодоления препятствия оказалось достаточно создать соответствующее количество пустых общих модулей с требуемыми наименованиями. Наконец, в конфигурацию нужно перенести общий макет с компонентой подключения к СЛК.
Далее, затаив дыхание, необходимо запустить механизм создания интересующей нас обработки и дождаться остановки платформы, после чего в диспетчере задач Windows найти наш процесс 1cv8.exe, щелкнуть на нем правой кнопкой, и в выпадающем меню выбрать пункт «Создать дамп памяти».
Теперь настала пора применить страшный хакерский инструмент FarManager. Полученный дамп памяти мы открываем в его редакторе, устанавливаем Codepage 1200, и в поиске набираем известные нам фрагменты программы, в качестве которых можно использовать наименование вызываемой процедуры типа «ВыполнитьКакойТоРасчет», либо сообщения, которые обработка выдает пользователям. Как правило искомый текст встречается в нескольких местах, необходимо просмотреть их все. Таким образом вполне вероятно вы увидите исходный текст модуля объекта обработки. Наконец, необходимо «на глаз» определить начало и конец модуля объекта обработки, выделись его и нажать Ctrl+c.
Далее вы создаете в исходной конфигурации одноименную обработку и вставляете в ее модуль объекта полученный текст. Остается закомментировать все обращения к СЛК и создать обработку стандартным способом:
Обработка = Обработки.КакаяТоОбработк� �Наименование.Создать();
Важное замечания: в текстах защищенных модулей объекта обработок могут быть ссылки на реквизиты и табличные части этих обработок. Узнать их наличие и свойства можно в отладчике конфигуратора сразу после создания обработки с помощью СЛК.
Удачи.
-
23.07.2018, 09:29 #9
- Регистрация
- 27.12.2015
- Сообщений
- 3
- Сказал(а) спасибо
- 0
- Поблагодарили 0 раз(а) в 0 сообщениях
Re: Взлом\Эмуляция ключей Катран (СЛК 1.1 - ?)
Как взломать СЛК за 20 минут
Честно говоря, мне совершенно не хотелось взламывать сервер лицензирования конфигураций (СЛК), ибо, исходя из назначения СЛК и судя по разговорам в Интернете, это в принципе невозможно. Но мои пользователи настолько замучили меня своими жалобами на программы, запрятанные на СЛК, что пришлось ввязаться в это безнадежное мероприятие ради получения доступа к исходным текстам, что хоть как-то позволило взять ситуацию под контроль.
Эта статья — своеобразная месть за многочисленные проблемы, которые доставляют жадные производители программного обеспечения, скрывающие свои «творения» от сопровождающих их специалистов, и нарушающие основной принцип 1С - открытость исходных текстов и и возможность изменить их под свои нужды. В моем случае особенно обидным является наличие ошибок в защищенных модулях и отсутствие какой-либо поддержки от производителя. Такое нельзя оправдать никакой «защитой интеллектуальной собственности».
Перейдем непосредственно к сути вопроса. Если вы имеете опыт программирования в среде 1С, то взломать СЛК и выгрузить оттуда исходные тексты защищенных модулей не представляет никакой сложности. При некотором навыке вы будете тратить на каждый модуль не более 20 мин. Полученные модули можно вставить в вашу конфигурацию, и она сможет работать без помощи СЛК.
Интересующие нас модули размещаются в модулях объекта обработок, которые в зашифрованном виде хранятся на СЛК. В процессе работы эти обработки подгружаются в 1С Предприятие примерно следующим образом:
Collapse
// Этап 1 запускается компонента для связи с СЛК.
ПодключитьВнешнююКомпонен ту("ОбщийМакет.торо_Компоне нтаСЛК_2_0_Session", "Licence",ТипВнешнейКомпоненты .Native);
МенеджерЛицензий = Новый("AddIn.Licence.LicenceExtension20");
Адрес = "????????????";
Порт = "9099";
МенеджерЛицензий.Параметр� �Связи = "host=" + Адрес + ";port=" + Порт;
МенеджерЛицензий.ОкноУста� �овкиСвязи = Истина;
МенеджерЛицензий.Запуск("??? ?", Ложь); // Параметры: серия, только наличие ключа
// Этап 2 с СЛК запускается внешняя обработка 1С, проверяющая наличие свободной лицензии и запускающая нужную нам обработку
МенеджерОбъектов = ВнешниеОбработки.Создать(М енеджерЛицензий.МенеджерО� �ъектов, БезопасныйРежим());
МенеджерОбъектов.Установи� �ьМенеджерЛицензий(Менедже рЛицензий);
// Этап 3 с СЛК запускается внешняя обработка 1С, выполняющая нужный нам расчет
Обработка = МенеджерОбъектов.СоздатьО� �ъект("КакаяТоОбработкаНаи� �енование");
// в этом месте необходимо остановить платформу чтобы прочитать текст модуля объекта нашей обработки
Вопрос("Сделайте дамп памяти ",РежимДиалогаВопрос.ОК);
// Этап 4 собственно выполнение нужного нам расчета
Обработка.ВыполнитьКакойТ� �Расчет();
Реальный механизм несколько сложнее и запутаннее, а также может отличаться в зависимости от конфигурации, но автор надеется на ваш профессионализм и способность посмеяться над этой пародией на обфускацию.
И так, наша задача – найти место где создается обработка, выполняющая интересующие нас действия, остановить платформу сразу после ее создания, сделать дамп памяти платформы и поискать там исходные тексты этой обработки. По моему опыту есть большой шанс, что модуль объекта обработки не компилирован, а участок памяти, где хранился ее исходный текст, не был использован на другие нужды.
Когда такое место найдено, то теоретически можно остановить платформу в отладчике конфигуратора и сохранить дамп памяти, но это не самый лучший путь. Объем дампа может быть очень большим, вычисления выполняются на сервере приложений, который может быть нам не доступен, взаимодействие платформы с отладчиком требует дополнительного обращения к памяти. Последнее обстоятельство может привести к порче исходного текста, а именно вкраплению в него каких-то двоичных данных.
Для того чтобы безнадежное мероприятие имело шанс на успех предлагается следующая методика. Все этапы создания обработки переносятся в чистую файловую базу данных. При этом база должна запускаться в режиме обычного приложения. Если не получиться прочитать тексты, можно попробовать управляемое приложение. Механизм создания интересующей нас обработки оформляется как в моем случае в виде внешней обработки или любым другим удобным для исследователя способом. Текст программы должен похож на приведённый выше, остановка платформы осуществляется встроенной функцией Вопрос(). Если в процессе создания исследуемой обработки обнаружатся ссылки на необходимые ей объекты конфигурации, перенесите эти объекты из исходной конфигурации. В моем случае имели место сообщения об отсутствии нескольких переменных, которые в действительности были общими модулями. Для преодоления препятствия оказалось достаточно создать соответствующее количество пустых общих модулей с требуемыми наименованиями. Наконец, в конфигурацию нужно перенести общий макет с компонентой подключения к СЛК.
Далее, затаив дыхание, необходимо запустить механизм создания интересующей нас обработки и дождаться остановки платформы, после чего в диспетчере задач Windows найти наш процесс 1cv8.exe, щелкнуть на нем правой кнопкой, и в выпадающем меню выбрать пункт «Создать дамп памяти».
Теперь настала пора применить страшный хакерский инструмент FarManager. Полученный дамп памяти мы открываем в его редакторе, устанавливаем Codepage 1200, и в поиске набираем известные нам фрагменты программы, в качестве которых можно использовать наименование вызываемой процедуры типа «ВыполнитьКакойТоРасчет», либо сообщения, которые обработка выдает пользователям. Как правило искомый текст встречается в нескольких местах, необходимо просмотреть их все. Таким образом вполне вероятно вы увидите исходный текст модуля объекта обработки. Наконец, необходимо «на глаз» определить начало и конец модуля объекта обработки, выделись его и нажать Ctrl+c.
Далее вы создаете в исходной конфигурации одноименную обработку и вставляете в ее модуль объекта полученный текст. Остается закомментировать все обращения к СЛК и создать обработку стандартным способом:
Обработка = Обработки.КакаяТоОбработк� �Наименование.Создать();
Важное замечания: в текстах защищенных модулей объекта обработок могут быть ссылки на реквизиты и табличные части этих обработок. Узнать их наличие и свойства можно в отладчике конфигуратора сразу после создания обработки с помощью СЛК.
Удачи.
-
-
23.07.2018, 09:51 #10
- Регистрация
- 27.12.2015
- Сообщений
- 3
- Сказал(а) спасибо
- 0
- Поблагодарили 0 раз(а) в 0 сообщениях
Re: Взлом\Эмуляция ключей Катран (СЛК 1.1 - ?)
Первоисточник тут
https://bobbyhacker.livejournal.com/
Социальные закладки