Сейчас на форуме: bartolomeo, -Sanchez-, morgot, sashalogout (+4 невидимых) |
eXeL@B —› Софт, инструменты —› Hex-Rays IDA Pro 7.5 |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >> |
Посл.ответ | Сообщение |
|
Создано: 28 сентября 2017 05:38 · Поправил: Модератор · Личное сообщение · #1 Текущая версия: IDA 7.5 sp1 IDA 7.2 Установщик: x64_idapronw_hexx64w_181105_de455c480e11ef1ec91473028f4dd175.exe Пароль для установки: 7JpT48a7Y2fv Plugins Полный набор https://mega.nz/#!kXxnUagZ!eCDn7iNaXTK88R5mdJERAhYF2z8QwIy8g7A4OGAZLdk IDA Pro 7.0 IDA Pro 7.0.170914 WIN\MAC x64 + Hex-Rays Decompilers (x86, x64, ARM, ARM64) Год Выпуска: 2017 Версия: 7.0.170914 Разрядность: 64bit Имена архивов macOS - x64_idapronm_hexarm64m_hexarmm_hexx64m_hexx86m_170914_e723c5648dc3f2f588ab8339ccf62ec0.zip Windows - x64_idapronw_hexarm64w_hexarmw_hexx64w_hexx86w_170914_e723c5648dc3f2f588ab8339ccf62ec0.exe Code:
| Сообщение посчитали полезным: zNob, -=AkaBOSS=-, VodoleY, yashechka, CyberGod, sefkrd, hoyux, TryAga1n, plutos, ClockMan, bbuc, mak, DenCoder, Gideon Vi, Veliant, Medsft, BlackCode, TRPD, Vintersorg, LinXP, mushr00m, kurorolucifer, MacTep, raiser, negoday, Tony_Stark, Apocalypse, ELF_7719116, DICI BF, mkdev, g4bi, AliS S0fT, NoRG, oooirbis, SReg, darsy, tRuNKator, topmo3, Jks111, HandMill, ALSSL, d745150, mohamedhk2, Isaev |
|
Создано: 22 июня 2019 07:34 · Поправил: plutos · Личное сообщение · #2 |
|
Создано: 22 июня 2019 15:18 · Поправил: Dart Raiden · Личное сообщение · #3 |
|
Создано: 22 июня 2019 15:20 · Личное сообщение · #4 |
|
Создано: 22 июня 2019 15:31 · Поправил: f13nd · Личное сообщение · #5 |
|
Создано: 22 июня 2019 16:04 · Поправил: fedik · Личное сообщение · #6 |
|
Создано: 22 июня 2019 16:08 · Поправил: ClockMan · Личное сообщение · #7 |
|
Создано: 22 июня 2019 16:16 · Личное сообщение · #8 |
|
Создано: 22 июня 2019 16:16 · Поправил: Dart Raiden · Личное сообщение · #9 |
|
Создано: 22 июня 2019 16:25 · Личное сообщение · #10 |
|
Создано: 22 июня 2019 16:40 · Личное сообщение · #11 004D9C7B | E8 7C7EFAFF | call x64_idapronw_hexx64w_181105_de455c480e11ef1ec91473028f4dd175.481AFC | pw in unicode after the call in EBX 004D9C80 | BA E49C4D00 | mov edx,x64_idapronw_hexx64w_181105_de455c480e11ef1ec91473028f4dd175.4D9CE4 | 4D9CE4:"PasswordCheckHash" Добавлено спустя 1 час 8 минут ClockMan пишет: а то насобираешь 50 гигов мусора и всё таки умудрился сделать ошибку в скрипте и нагенерил 20 гиг мусора Добавлено спустя 1 час 19 минут ой а ничё инжектить не надо, хэшкэт поддерживает инно |
|
Создано: 22 июня 2019 18:09 · Поправил: UniSoft · Личное сообщение · #12 fedik пишет: их пример выходит с их сидом только их пример и выходит, ни один другой пароль не генерится... да и вообще, кто сказал что используется PRNG... а может MD5? а может это BASE64? Вариантов еще больше, чем комбинаций самого пароля. А пример из статьи, только на СИ... перебор всех значений seed около 2 минут. Code:
| Сообщение посчитали полезным: fedik |
|
Создано: 22 июня 2019 18:12 · Поправил: difexacaw · Личное сообщение · #13 Я тут глянул, в 6.7 хэш вычисляется в стековый буфер, копируется в есчо один буфер 0x430ED0, затем сравнивается: Code:
После чего буфер и хэш в нём уничтожаются, тоесть в результате получается только условие что хэш верен. Если по 46B463 вернуть TRUE, то пасс принимается, но затем при распаковке файлов есчо хэши вычисляются, но я не смотрел от чего. Вероятно что ничего брутить не нужно. ----- vx |
|
Создано: 22 июня 2019 18:22 · Поправил: UniSoft · Личное сообщение · #14 difexacaw Исходники InnoSetup открыты, там нет ничего сверхъестественного. Единственный вариант это верный пароль, других вариантов не существует!!! Файлы сжаты, потом зашифрованы, ключем на базе хэша пароля и 8-ми байтного salt (который уникален для каждого файла). Есть процедура проверки пароля: SHA1("PasswordCheckHash" + C41639792846E456 + UNICODE(password)) == F29F55F07C043AD34B3DE150501535F44424EDAD это в утекшей 7.2 парооль в unicode, в более ранних версиях ansi вот как файл шифруется https://github.com/jrsoftware/issrc/blob/bc670b6b6be9e03ce645235a258761ac499348b3/Projects/Compile.pas#L1573 а вот дешифровка https://github.com/jrsoftware/issrc/blob/e7d8563af77ba49700b6615649d4b3c6f8b62af7/Projects/Extract.pas#L191 а вот собственно проверка пароля https://github.com/jrsoftware/issrc/blob/455529261dca8c7683d81b5fed06985150f31814/Projects/Main.pas#L361 | Сообщение посчитали полезным: difexacaw |
|
Создано: 22 июня 2019 18:44 · Личное сообщение · #15 |
|
Создано: 22 июня 2019 20:17 · Личное сообщение · #16 fedik > хто пишет инжект в инсталлер Иды? Приаттачил отладчик, вставил простейшую процедуру перебора 60 символов: Code:
Под варей скорость - 12.4М символа/мин(60^4), что очень мало. Это получается что 6 символов будет крутить 2.5суток. По нормальному это нужно сделать из ядра - при проверке нет сервисных вызовов, а значит можно закрепить рабочий набор и отключить планирование(прерывания), что бы проц ничем другим не занимался. ----- vx | Сообщение посчитали полезным: fedik |
|
Создано: 22 июня 2019 20:17 · Личное сообщение · #17 |
|
Создано: 22 июня 2019 20:23 · Личное сообщение · #18 |
|
Создано: 22 июня 2019 20:27 · Личное сообщение · #19 |
|
Создано: 22 июня 2019 20:31 · Поправил: fedik · Личное сообщение · #20 |
|
Создано: 22 июня 2019 20:35 · Поправил: difexacaw · Личное сообщение · #21 |
|
Создано: 22 июня 2019 20:48 · Поправил: fedik · Личное сообщение · #22 difexacaw чё серьёзна? в том весь и прикол, шо пароли генерились перл скриптом, а там прнг видать сидился 4? байтами только потом 12 ранд вызовов, букавки генерить, но оно то на то и Прнг шо не тру ранд вот и выходит, шо кол.во паролей == кол.во сидов Добавлено спустя 11 минут 54 <- вот это ещё можно побалтать до 63 |
|
Создано: 22 июня 2019 21:02 · Личное сообщение · #23 f13nd пишет: А это точно правильно? В приведенном алгоритме был остаток от деления на 54 очередного значения гпсч и выборка из таблицы по этому остатку. там в статье приведен пример на perl... Code:
не видно операнда... но а так как в perl (не считая старые версии, где использовался стандартный (stdlib) сишный srand) используется drand48 алгоритм, который возвращает double от 0 до 1, то тут подойдет только умножение. И да, указанный пароль получается, а вот другие нет... Если бы, было не правильно, то и результат бы не совпал. fedik пишет: а ты уже пробовал? и в 50 гигах не было даже коллизий? А из исходника разве не видно? ну там конечно же не все возможные варианты перебираются, ведь в drand48, seed по факту 48-бит, хотя аргумент в функцию srand48() передается 32-битный. и по идее надо перебирать весь диаппазон. Но 48 бит, это уже слишком... если перебор 32-бит занимает около 2 мин, то перебор 48-бит уже займет 91 день. |
|
Создано: 22 июня 2019 21:08 · Личное сообщение · #24 |
|
Создано: 22 июня 2019 21:44 · Личное сообщение · #25 f13nd пишет: В перле скорей то же самое, просто специальная функция где верхнюю планку можно указать, работать должно точно так же. не надо путать double и int сишный rand() возвращает int (0..32767), а drand48() double (0..1.0) так что (drand48() % 54) даст вам либо 0, либо (ну очень редко) 1 и все. почитайте для начала: https://rosettacode.org/wiki/Category:Perl я дал исходник, на си... играйтесь, пробуйте ставьте, что считаете нужным. |
|
Создано: 22 июня 2019 22:04 · Личное сообщение · #26 difexacaw По нормальному это нужно сделать из ядра - при проверке нет сервисных вызовов, а значит можно закрепить рабочий набор и отключить планирование(прерывания), что бы проц ничем другим не занимался Не, ну я догадывался, что вы наркоман. Но не думал, что героиновый. ----- Stuck to the plan, always think that we would stand up, never ran. | Сообщение посчитали полезным: mushr00m, dma |
|
Создано: 22 июня 2019 22:16 · Поправил: f13nd · Личное сообщение · #27 UniSoft пишет: почитайте для начала Да я сам перл посмотрел, в принципе да, берет 32-битное значение, двигает влево на 16 бит помещает 0x330E в младшие разряды, в дальнейшем еще раз обрабатывает и использует как qword с плавающей точкой. На 54.0 умножает, округляет в меньшую сторону и использует как индекс. ----- 2 оттенка серого |
|
Создано: 22 июня 2019 22:49 · Поправил: difexacaw · Личное сообщение · #28 ARCHANGEL Если символов немного то пасс быстро найдётся. Нет смысла спрашивать что делать если нет сурков. А для начала нужно доказать что там алгосы стандартные(размер TestPassword() 1к без каких либо импортов). Вот я сдампил эту процедуру, уточни что это именно то что в сурках. 0b13_22.06.2019_EXELAB.rU.tgz - Dmp.7z ----- vx |
|
Создано: 22 июня 2019 23:06 · Личное сообщение · #29 |
|
Создано: 22 июня 2019 23:24 · Поправил: difexacaw · Личное сообщение · #30 |
|
Создано: 23 июня 2019 01:00 · Личное сообщение · #31 |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 14 . 15 . >> |
eXeL@B —› Софт, инструменты —› Hex-Rays IDA Pro 7.5 |