eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 1 марта!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: crapolin_denis, dezmand07
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› The FROZEN dongle. Как активировать снова ключ или узнать алгоритм ключа?
Посл.ответ Сообщение

Ранг: 2.2 (гость)
Статус: Участник

Создано: 15 марта 2019 22:27 New!
Цитата · Личное сообщение · #1

Ключ Sentinel, LPT. Перед снятием дампа памяти ключ в работе не проверялся. Использовалась программа damper.exe. Brute WP - галочка не снималась. После снятия дампа обнаружил что нет алгоритма шифрования в дампе ключа: 00 00
То есть 50% информации верно в дампе, а остальное не знаю. Может ли заблокироваться остальная информация? При запуске программы - ошибка: The FROZEN dongle is attached. To use it you must ACTIVATE it.

{ Атач доступен только для участников форума } - key.gif


Ранг: 325.0 (мудрец)
Статус: Участник
born to be evil

Создано: 16 марта 2019 03:11 New!
Цитата · Личное сообщение · #2

а алгоритм там точно был? в лпт ключах не было блокировки, насколько помню

Ранг: 2.2 (гость)
Статус: Участник

Создано: 16 марта 2019 09:29 New!
Цитата · Личное сообщение · #3

Алгоритм должен быть. Все подобные ключи имели алгоритм. А этот на запрос выдает ту же информацию что и в запросе. И в итоге программа не запускается. "физический" ключ также выдает ошибку "The FROZEN dongle is attached" как и его эмулятор. Проверил еще четыре старых брошенных ключей - везде присутствует алгоритм.

Добавлено спустя 13 минут
как образец, часть дампа
"sntMemory"=hex:C1,D2,7F,05,00,00,00,00,08,00,00,00,12,CF,00,00,\
23,8F,2B,00,00,00,00,00,00,00,00,00,D8,BB,70,FE,\
GD,31,C0,DF,A1,D6,B5,FC,00,00,00,00,00,00,00,00,\


Ранг: 325.0 (мудрец)
Статус: Участник
born to be evil

Создано: 16 марта 2019 13:56 · Поправил: ajax New!
Цитата · Личное сообщение · #4

если "должен быть", то неизвестным дампером или изначально ключ похерен. в чем вопрос-то?

Ранг: 2.2 (гость)
Статус: Участник

Создано: 16 марта 2019 15:31 New!
Цитата · Личное сообщение · #5

ajax пишет:
то неизвестным дампером или изначально ключ похерен. в чем вопрос-то?

Дамп снимался тем же дампером что и с подобных ключей. С тех заброшенных ключей снял дампы и все оказались рабочими. Только этот не признался программой, требует активации. Но активировать не получится, так как оказалось существует идентичный ключ с тем же номером. Поэтому и ищу решение, то ли в момент снятия дампа с ключа он заблокировался, то ли изначально был неисправен. Необходимо понять, как восстановить алгоритм ключа, хотя бы перебором алгоритма. Или насти другой путь. Надеюсь кто нибудь предложит вариант решения вопроса


Ранг: 325.0 (мудрец)
Статус: Участник
born to be evil

Создано: 16 марта 2019 15:56 New!
Цитата · Личное сообщение · #6

selnes2016 пишет:
как восстановить алгоритм ключа, хотя бы перебором алгоритма

вынимают из софта данные до sproQuery и данные следом, с которыми идет сравнение результата. на основе них делается перебор по известному алгоритму. потом избавляются от коллизий. все

Или насти другой путь
пропатчить софт, если алгоритм не используется в вычислениях

Ранг: 2.2 (гость)
Статус: Участник

Создано: 16 марта 2019 16:26 New!
Цитата · Личное сообщение · #7

ajax пишет:
пропатчить софт, если алгоритм не используется в вычислениях

Пропатчить софт - не вариант. Из ключа берутся две константы, одна лежит в явном виде в ключе, вторая получается по алгоритму заложенному в ключе на основе запроса к ключу. Далее эти константы учавствуют в дальнейших вычислениях наряду с еще несколькими.
ajax пишет:
вынимают из софта данные

Программа на этапе запуска проверяет ключ и останавливается, не запустившись.
Если кто хорошо знаком с алгоритмом работы ключа может оценить сколько "байт" определяют алгоритм ключа и отсюда возможность перебором найти эти "байты". Остальные данные в ключе большой полезной нагрузки не несут. для данной программы. Те которые несут - известны

Добавлено спустя 30 минут
"CellType"=hex:\
03,03,03,03
отсюда возможно 8 байт алгоритм. Тогда - наверноу увы, перебором слишком долго...


Ранг: 325.0 (мудрец)
Статус: Участник
born to be evil

Создано: 16 марта 2019 16:56 · Поправил: ajax New!
Цитата · Личное сообщение · #8

selnes2016 пишет:
Программа на этапе запуска проверяет ключ и останавливается, не запустившись.

как это мешает из ее кода вынуть запрос-ответ к ключу?
Если кто хорошо знаком с алгоритмом работы ключа может оценить сколько "байт" определяют алгоритм ключа и отсюда возможность перебором найти эти "байты"
результатом будут десятки вариантов, удовлетворяющих первой проверке, и дающих разное значение для 2-й константы. да, "байт" будет 8 (4+2+2)

Ранг: 2.2 (гость)
Статус: Участник

Создано: 16 марта 2019 18:23 New!
Цитата · Личное сообщение · #9

ajax пишет:
как это мешает из ее кода вынуть запрос-ответ к ключу?

Запрос к ключу имеется, но ответ приходит точно такой же как и вопрос и в дальше при скрещивании констант выходит неверный результат. Это если опрашивать ключ напрямую. Когда программа опрашивает, она выдает результат FROZEN dongle is attached. To use it you must ACTIVATE it. Все запросы зашифрованы в лицензии. Вытащить их оттуда не проблема.
ajax пишет:
результатом будут десятки вариантов, удовлетворяющих первой проверке, и дающих разное значение для 2-й константы.

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

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 16 марта 2019 19:41 New!
Цитата · Личное сообщение · #10

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

Ранг: 128.8 (ветеран)
Статус: Участник

Создано: 16 марта 2019 20:00 New!
Цитата · Личное сообщение · #11

selnes2016 пишет:
и в дальше при скрещивании констант выходит неверный результат

И как определяется, что он неверный? Покажи функцию скрещивания и проверку результата. Может, там донгл и не нужен, а константу можно получить, обратив алгоритм или брутом.

Ранг: 2.2 (гость)
Статус: Участник

Создано: 16 марта 2019 20:07 New!
Цитата · Личное сообщение · #12

BfoX пишет:
нужна хотя бы пара запрос-ответ на правильном дескрипторе.

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

Добавлено спустя 3 часа 8 минут
Если ключ заблокирован "The FROZEN dongle is attached", то какие байты влияют на это в дампе? Если их изменить?


Ранг: 325.0 (мудрец)
Статус: Участник
born to be evil

Создано: 17 марта 2019 00:11 New!
Цитата · Личное сообщение · #13

selnes2016
а свои наработки какие вообще? кроме снятия дампа неизвестным дампером

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 17 марта 2019 09:37 New!
Цитата · Личное сообщение · #14

Для примера сделайте дамп с того же номера, но рабочего.

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

Ранг: 2.2 (гость)
Статус: Участник

Создано: 17 марта 2019 09:52 New!
Цитата · Личное сообщение · #15

BfoX пишет:
А утиль по проверке ключей вроде была у производителя.

Использовал. To activate this frozen Dongle please send frozen dongle ID to distributor and receive Activation password. Но в данном варианте это не приемлемо.
Попробую найти в ключе что отвечает за "блокировку " ключа. Но поможет ли это получить правильный ответ от ключа, сомневаюсь.
BfoX пишет:
Для примера сделайте дамп с того же номера, но рабочего.

Если будет возможность, сделаю.

Добавлено спустя 4 минуты
ajax пишет:
а свои наработки какие вообще? кроме снятия дампа неизвестным дампером

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

Добавлено спустя 2 часа 14 минут
Похоже что отсутствие 4 "байтов" дает ошибку "The FROZEN dongle is attached" или программа не признает измененный ключ. Изменение меньшого количесва "байт" не меняет ошибку.

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 17 марта 2019 20:41 New!
Цитата · Личное сообщение · #16

выложите утиль от производителя


Ранг: 112.1 (ветеран)
Статус: Участник

Создано: 20 марта 2019 22:10 · Поправил: Larry New!
Цитата · Личное сообщение · #17

selnes2016 пишет:
отсюда возможно 8 байт алгоритм. Тогда - наверноу увы, перебором слишком долго...


В ключах Sentinel же нет алгоритмов 8 байт. Если четыре ячейки с типом "3", то идут два алгоритма подряд. У каждого алгоритма задействовано две ячейки в памяти ключа + пароль записи, либо шестая ячейка, в зависимости от типа алгоритма (std или enh).

Раз защищаемая программа пытается опросить результат Query по алгоритму ключа, значит и ответ его должна сравнивать. Здесь и можно на основании запроса в ключ и эталонного ответа попытаться вытащить значение нужных ячеек (сбрутить).

Либо же ответ может не сравниваться, а просто идёт проверка, чтобы результат sproQuery не был равен входным данным в ключ (т.е. что ячейки не пусты).

Это один момент. Другой, что если стоит задача восстановить ключ, а не использовать эмулятор, то для перезаписи нужных ячеек требуется значение ещё трёх: пароль записи ключа, первый пароль перезаписи и второй пароль перезаписи. Кто-то из умельцев, возможно, может восстановить их из прошивки. Но если в защищаемой программе функционала активации ключа нет (например, когда разработчик присылает какой-то серийный номер, он вбивается в каком-либо диалоговом окне программы, после чего производится перезапись ячеек ключа, отвечающих за аппаратное преобразование), то сделать что-то с заблокированным ключом будет достаточно проблематично.

Ранг: 124.1 (ветеран)
Статус: Участник

Создано: 21 марта 2019 15:10 New!
Цитата · Личное сообщение · #18

Явно в используемой программе можно найти WP и OWP.
Обнулили ячейки после определённого времени и все дела.

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 21 марта 2019 17:23 New!
Цитата · Личное сообщение · #19

WP там есть


Ранг: 112.1 (ветеран)
Статус: Участник

Создано: 21 марта 2019 17:48 New!
Цитата · Личное сообщение · #20

BfoX пишет:
WP там есть


WP: 0x2477

Кстати, значения нужных ячеек для sproQuery, возможно, тоже есть. Но тут уже на защищаемом софте нужно тестировать.

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 21 марта 2019 17:52 New!
Цитата · Личное сообщение · #21

да, и С6 тоже есть


Ранг: 112.1 (ветеран)
Статус: Участник

Создано: 22 марта 2019 09:18 New!
Цитата · Личное сообщение · #22

selnes2016, попробуйте применить на защищаемой программе сигнатуры для ключа Sentinel SuperPro в IDA. Возможно, помогут идентифицировать функцию sproOverwrite и вытащить пароли перезаписи ключа.

{ Атач доступен только для участников форума } - sspro_sig_ida.zip

Ранг: 379.7 (мудрец)
Статус: Участник

Создано: 22 марта 2019 17:10 New!
Цитата · Личное сообщение · #23

Larry

там есть только WP. по квери софт делает 4 запроса 1, 4, 16 и 56 байт длинной, каждый раз берет црц32 от ответа и R32. затем тупо записывает результат в последние 2 ячейки ключа.
 eXeL@B —› Вопросы новичков —› The FROZEN dongle. Как активировать снова ключ или узнать алгоритм ключа?

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS