Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+5 невидимых)

 eXeL@B —› Основной форум —› USB Guardant
Посл.ответ Сообщение

Ранг: 13.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 07 декабря 2004 22:55 · Поправил: Canakau
· Личное сообщение · #1

Доброго времени суток честнОй компании.
Давеча попалась мне прога "Цифровая фотограмметрическая система
ЦНИИГАиК", короче по картографии. Защищена была USB ключиком,
с надписью Guardant. Информации по отлому сей донглы я что-то не
особенно обнаружил (мож искал не там) Единственная толковая статья от HEX'а,
Но она дает общее представление об АПИ, а о том, как таки отломать ключ,
ни слова.
Et sic. Отломать получилось. К счастью, защита была так себе. И если
господам гуру это уже не интересно, то для страждущих новичков типа меня,
хочу поделиться технологией.
Выжимки:
прога была запакована аспаком 2.12 с этим особых проблем не возникло.
Далее, я вышел на следующий блок:

.00114782: C4FD les edi,ebp
.00114784: FFFF ??? edi
.00114786: EB02 jmps .00011478A -------- (2)
.00114788: 07 pop es
.00114789: 11C3 adc ebx,eax
.0011478B: EB00 jmps .00011478D -------- (3)
.0011478D: EB00 jmps .00011478F -------- (4)
.0011478F: E9BBF6FFFF jmp .000113E4F -------- (5)
IsKey
.00114794: E941F7FFFF jmp .000113EDA -------- (6)
2 непонятных джампа, они не использовались, посему ничего определенного
сказать о них не могу.
.00114799: E9A2F7FFFF jmp .000113F40 -------- (7)
.0011479E: E95AF9FFFF jmp .0001140FD -------- (8)
ReadMem
.001147A3: E9FAF9FFFF jmp .0001141A2 -------- (9)

ReadMem1
Странное дело, но вызов этой штуки тоже самое, что и предыдущий.
.001147A8: E970FAFFFF jmp .00011421D -------- (A)
остальное не использовалось
.001147AD: E9E6FAFFFF jmp .000114298 -------- (B)
.001147B2: E93AFBFFFF jmp .0001142F1 -------- (C)
.001147B7: E9D0FBFFFF jmp .00011438C -------- (D)
.001147BC: E965FCFFFF jmp .000114426 -------- (E)
.001147C1: E9FBFCFFFF jmp .0001144C1 -------- (F)
.001147C6: E97FFDFFFF jmp .00011454A -------- (G)
.001147CB: 90 nop
в комплексе было 3 программы, и после первой проги, в остальных его я искал по
сигнатуре (выбирайте с любого места )
далее в той-же IDA смотрите, откуда оно вызывается. С помощью ReadMem делаете
полный дамп памяти ключа
ReadMem(Passw: DWORD; addr:Word;Len:Word;Buff:Pointer):boolean
Память ключа 256 байт. Пароль виден сразу в теле программы.
Текст эмуля приводить не буду, ввиду его тривиальности (у меня он получился 349 байт
вместе с дампом памяти). С помощью, например, LordPE открываем прогу, находим секцию
(в моем случае .CODE) смотрим, где закончился код и пошли нули, туда впихиваем эмуль
и меняем переходы ReadMem, IsKey на свои.
Voila! Все заработало.



Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 декабря 2004 21:51
· Личное сообщение · #2

Canakau пишет:
Единственная толковая статья от HEX'а


А как же статья Infern0 ?
Гм... имхо можно и без эмуля обойтись



Ранг: 192.3 (ветеран), 18thx
Активность: 0.120
Статус: Участник
stoned machine-gunner

Создано: 09 декабря 2004 13:42
· Личное сообщение · #3

Dz пишет:
можно и без эмуля обойтись

Не понял... поясни =)

-----
once you have tried it, you will never want anything else





Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 09 декабря 2004 14:00
· Личное сообщение · #4

Canakau пишет:
Информации по отлому сей донглы я что-то не
особенно обнаружил

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



Ранг: 13.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 10 декабря 2004 08:25
· Личное сообщение · #5

Ара: Думаю, я воспользуюсь Вашим предложением. Единственно - я думал, что эта тема не очень интересна, тем более, что в данном случае не использовалась ф-ция Transform. Соответственно, защита не очень интересна. К вопросу об Inferno - Огромное ему спасибо. Его инструменты, хоть и не понадобились, но были весьма интересны. Ну, и г-ну Sable, тож спасибо огромное
Dz: Совсем без эмуля никак. Пытался ф-ции АПИ обойти, прога почему-то дико глючила..



Ранг: 160.1 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 10 декабря 2004 08:34
· Личное сообщение · #6

Canakau пишет:
прога почему-то дико глючила..

небось стек забыл выровнять...



Ранг: 13.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 11 декабря 2004 06:57
· Личное сообщение · #7

2Infern0: да вроде все push'и перед ф-циями nop'ил... да и один хрен - проще апи подменить, чем в каждом конкретном случае патчить ответы...




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 11 декабря 2004 07:08 · Поправил: Ara
· Личное сообщение · #8

Canakau
Совет-попроси у infern0 асю в привате (может даст) и может разъяснит непонятки твои. Вот на статью и наберется...



Ранг: 13.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 12 декабря 2004 07:32
· Личное сообщение · #9

Статью написал, отправил. Слог корявый, но понять можно



Ранг: 0.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 14 декабря 2004 02:03 · Поправил: DrZerg
· Личное сообщение · #10

Доброго времени, уважаемый ALL!
Сразу скажу - я новичёк. Если не трудно, помогите.
Есть прога, закрытая GUARDANT`ом USB. С помощью envkiller12.exe
снял конверт и вроде всё заработало. Но не тут-то было.
Она в процессе работы через несколько секунд (10-15)
опять юзает ключь и стопорится намертво. Я так думаю,
что не всё раскриптовалось. Как энто дело побороть.
Заранее благодарен.


 eXeL@B —› Основной форум —› USB Guardant
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати