Сейчас на форуме: zds (+7 невидимых)

 eXeL@B —› Протекторы —› Пошифрованные куски АСПРотекта (повторно)
Посл.ответ Сообщение

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

Создано: 30 сентября 2006 11:05
· Личное сообщение · #1

> Все уже обьяснили, прогой поделились, тема исчерпала себя - закрыта..

Совсем тема себя не исчерпала, поскольку было в ней одно очень интересное высказывание:

> Конечно, использование аспром для шифрования кода качественного криптоалгоритма RC4 внушает уважение.

Использование РЦ4 для шифрования разных фрагментов данных, как правило, выполняется с одной серьезной ошибкой, что было продемонстрировано в свое время на примере вскрытия разных редакций одного и того же документа MSWord.
Так вот, если там РЦ4, то с очень большой вероятностью это ломается без наличия лицензионного ключа.
Но у меня есть основания полагать, что там не RC4...



Ранг: 456.3 (мудрец), 340thx
Активность: 0.280.02
Статус: Участник
Android Reverser

Создано: 30 сентября 2006 14:39
· Личное сообщение · #2

Вот чо показал KANAL на аспровой библе из одной программы:
BASE64 table :: 001561AA :: 00A69BAA
CRC16 (rev) [word] :: 0015D0B3 :: 00A70AB3
MD4 :: 00159176 :: 00A6CB76
MD5 :: 0015954F :: 00A6CF4F
MD5 :: 0015D526 :: 00A70F26
RIPEMD-320 [Init] :: 001593E0 :: 00A6CDE0
SHA1 [Compress] :: 0015CBA5 :: 00A705A5

Так что, видимо, юзается RIPEMD.

-----
SaNX





Ранг: 199.6 (ветеран), 12thx
Активность: 0.10
Статус: Участник
www.uinc.ru

Создано: 30 сентября 2006 15:47
· Личное сообщение · #3

RC4 это стойкий и давно проверенный алгорит. Если в неамериканской винде ключ для него урезается до 64-бит, это проблема только винды и законов США по экспорту криптографии. АСПР делается не в США, так что можете быть спокойны, без хотябы одной лицензии это не сломают.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 сентября 2006 22:25
· Личное сообщение · #4

ключи в аспре большие, алгоритм стойкий. так что - без ключа не расшифровать.

-----
Тут не могла быть ваша реклама




Ранг: 116.1 (ветеран), 5thx
Активность: 0.060
Статус: Участник

Создано: 01 октября 2006 01:32
· Личное сообщение · #5

lord_Phoenix пишет:
ключи в аспре большие, алгоритм стойкий. так что - без ключа не расшифровать.


Ключ для расшифровки, при использовании стандартной схемы регистрации, длиной - 16 байт, так что расшифровать можно, но для этого понадобится далеко не одна машина.




Ранг: 120.6 (ветеран)
Активность: 0.090
Статус: Участник
rootkit developer

Создано: 01 октября 2006 01:36 · Поправил: Ms-Rem
· Личное сообщение · #6

Ключ для расшифровки, при использовании стандартной схемы регистрации, длиной - 16 байт, так что расшифровать можно, но для этого понадобится далеко не одна машина.
16 байт = 128 бит = 2^128 = 3.4028236692093846346337460743177e+38 ключей.
Все кто думает что это можно забрутить, пускай хотя-бы примерно прикинут на калькуляторе, сколько тысяч лет это займет на всех компьютерах мира.

-----
Скажем дружно - нафиг нужно.





Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 01 октября 2006 01:46
· Личное сообщение · #7

так брутить тупо.. проще сгенерить таблицу из хешей(мд5 30002 раза) всех двордов..и потом по таблице без ключа - сразу находить enc const, а там уже и пошифрованный код можно расшифровать

-----
Тут не могла быть ваша реклама




Ранг: 116.1 (ветеран), 5thx
Активность: 0.060
Статус: Участник

Создано: 01 октября 2006 01:51
· Личное сообщение · #8

Ms-Rem пишет:
16 байт = 128 бит = 2^128 = 3.4028236692093846346337460743177e+38 ключей.
Все кто думает что это можно забрутить, пускай хотя-бы примерно прикинут на калькуляторе, сколько тысяч лет это займет на всех компьютерах мира.


о количестве машин и времени я конкретно не говорил.....




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 01 октября 2006 01:55
· Личное сообщение · #9

BoOMBoX/TSRh пишет:
о количестве машин и времени я конкретно не говорил.....

ну тогда брут вохможен всегда, для любого алго, если не говорить о времени

-----
Тут не могла быть ваша реклама




Ранг: 116.1 (ветеран), 5thx
Активность: 0.060
Статус: Участник

Создано: 01 октября 2006 02:08
· Личное сообщение · #10

lord_Phoenix пишет:
так брутить тупо.. проще сгенерить таблицу из хешей(мд5 30002 раза) всех двордов..и потом по таблице без ключа - сразу находить enc const, а там уже и пошифрованный код можно расшифровать


есть результаты?




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 01 октября 2006 02:17
· Личное сообщение · #11

BoOMBoX/TSRh пишет:
есть результаты?

хехе, таблица генерится ооочень долго, и занимает места тож много.. таблицу я не генерил, но идея то рабочая.

-----
Тут не могла быть ваша реклама




Ранг: 116.1 (ветеран), 5thx
Активность: 0.060
Статус: Участник

Создано: 01 октября 2006 02:28
· Личное сообщение · #12

lord_Phoenix пишет:
но идея то рабочая


идея рабочая, бесспорно.

lord_Phoenix пишет:
и потом по таблице без ключа - сразу находить enc const


каким образом, недопру.....




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 01 октября 2006 02:36
· Личное сообщение · #13

BoOMBoX/TSRh пишет:
каким образом, недопру.....

ну смотри.. аспр получает enc const из ключа, поулчает ее мд5 хеш 30002 раза, и этим хешем расшифровывает таблицу enc sections. Найдя хоть один пошифрованный куско в ехе(его адрес) - мы узнаем один из членов таблицы enc sections. теперь, юзая нашу таблицу хешей - раскриптовываем таблицу enc sections, и если в расшифрвоанной есть член, который мы нашли раньше(пошифрованный кусок), то мы знаем мд5 хеш enc const. саму же enc const - мы берем из нашей таблицы..
пс. наша таблица - вида enc_const:md5_hash_30002_imes

-----
Тут не могла быть ваша реклама




Ранг: 116.1 (ветеран), 5thx
Активность: 0.060
Статус: Участник

Создано: 01 октября 2006 02:41
· Личное сообщение · #14

lord_Phoenix пишет:
ну смотри.. аспр получает enc const из ключа, поулчает ее мд5 хеш 30002 раза, и этим хешем расшифровывает таблицу enc sections. Найдя хоть один пошифрованный куско в ехе(его адрес) - мы узнаем один из членов таблицы enc sections. теперь, юзая нашу таблицу хешей - раскриптовываем таблицу enc sections, и если в расшифрвоанной есть член, который мы нашли раньше(пошифрованный кусок), то мы знаем мд5 хеш enc const. саму же enc const - мы берем из нашей таблицы..
пс. наша таблица - вида enc_const:md5_hash_30002_imes


Спасибо, теперь допёр



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

Создано: 01 октября 2006 11:26
· Личное сообщение · #15

DrGolova пишет:
RC4 это стойкий и давно проверенный алгорит. Если в неамериканской винде ключ для него урезается до 64-бит, это проблема только винды и законов США по экспорту криптографии. АСПР делается не в США, так что можете быть спокойны, без хотябы одной лицензии это не сломают.


Речь была не об этом. С РЦ4 все в порядке. Непорядок появляется тогда, когда при шифровании разных блоков данных переинициализируется ключ. Тогда ксор двух шифрованных фрагментов становится эквивалентным ксору нешифрованных. Что дает возможность вскрывать оригиналы, имеющие закономерности.
А упомянутая мной атака на ворд - это случай, когда стримы в ворде пересохранялись без изменения вектора инициализации.

Ну а что касается аспротекта, то когда я его ковырял, куски кода шифровались IDEA.



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

Создано: 01 октября 2006 11:31
· Личное сообщение · #16

SaNX пишет:
Вот чо показал KANAL на аспровой библе из одной программы:


RC4 не тот алгоритм, который всякие KANALы распознавать умеют... Глазами его распознавать нужно
(или по сигнатурам известных либ, т.к. характерных констант в нем нет)



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

Создано: 01 октября 2006 11:41
· Личное сообщение · #17

lord_Phoenix пишет:
проще сгенерить таблицу из хешей(мд5 30002 раза) всех двордов..и потом по таблице без ключа - сразу находить enc const, а там уже и пошифрованный код можно расшифровать


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




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 01 октября 2006 12:01
· Личное сообщение · #18

ничего солод не фиксил..

-----
Тут не могла быть ваша реклама




Ранг: 39.1 (посетитель)
Активность: 0.030
Статус: Участник

Создано: 01 октября 2006 14:57
· Личное сообщение · #19

IDEA юзается не во всех билдах, чаще другой алго (возможно это и есть рц4)



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

Создано: 01 октября 2006 18:42
· Личное сообщение · #20

Solo пишет:
Но у меня есть основания полагать, что там не RC4..

Я изучал версии 2.1-2.3 SKE и в этих версиях используется связка MD5+RC4. И это подтверждается
тем, что при их изучении я писал вспомогательные проги, моделирующие работу некоторых частей протектора. Так вот при этом использовал взятые со стороны алгоритмы MD5 (3002 раза ) и RC4. И при одинаковых входных данных результаты совпадали.


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


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