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

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


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

Создано: 27 февраля 2005 00:54
· Личное сообщение · #1

Вобщем смотрим, ломаем!!! Кто первый тот и победил!

d916_crackmexp.zip

-----
Nothing just happens. You choose it to happen.





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

Создано: 27 февраля 2005 02:00
· Личное сообщение · #2

Прикольный крякми, хоть не похож на ту парашу, которую каждый день теперь выкладывают... Завтра гляну глубже.



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

Создано: 27 февраля 2005 02:31
· Личное сообщение · #3

Viktoro
Вот первый баг A111111111111111111111111111z
но ему всеравно




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 03:22
· Личное сообщение · #4

гы, крякми для любителей математики вообще и команд FPU в часности =) экспоненту от чего-то считает и т.п.
распаковывается легко, патчится тоже легко.




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 03:43
· Личное сообщение · #5

не, туплю... это дельфи так в квадрат возводит =)




Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 03:44
· Личное сообщение · #6

Легко ломается!!!
очень слабая защита!

если битхаком, то достаточно по адресу 403695h вписать EB

ну а вообще pass:
nothingimportanthappenedtoday
(только считать уж больно муторно, вернее тут даже не считать нужно, а так логически поразмыслить, а всю эту ерунду с использованием FPU фактически можно было просто таблицей заменить)
т.е. 'a' = 261h 'A'=E0h
'b'=4 'B'=163h
и т.д.




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 13:53
· Личное сообщение · #7

UniSoft пишет:
ну а вообще pass:
nothingimportanthappenedtoday

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



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

Создано: 27 февраля 2005 14:31
· Личное сообщение · #8

Mario555
>не подходит...
у меня подходит



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

Создано: 27 февраля 2005 16:01
· Личное сообщение · #9

смутил заголовок xakep.ru
Это случайно крякмис не из "головоломок для хакера" за решение которых дают N-нную сумму денег ???



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

Создано: 27 февраля 2005 16:07 · Поправил: assassin
· Личное сообщение · #10

да, это головоломка:
www.xakep.ru/post/25639/default.asp



тока для решения этого крякми надо не только серийник дать, а еще алгоритм описать

третее задание особо хацкерское - стереограмму разглядеть =)



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

Создано: 27 февраля 2005 17:07
· Личное сообщение · #11

assassin пишет:
да, это головоломка:
www.xakep.ru/post/25639/default.asp


2 Viktoro
ай да хитрец ))))))



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

Создано: 27 февраля 2005 17:46 · Поправил: assassin
· Личное сообщение · #12

там второе задание - вобще финиш:
нужно подобрать пароль, в котором сумма всех символов должна быть равна 1258, а произведение всех символов = 17578(после каждого произведения идет mod 29314), т.е

s:=s+simvol;
p:=p*simvol mod 29314;

пробовал по 27 метровому словарю брутфорсить - глухо.

если даже взять, что в пароле может быть всего 10 символов, вида a..z,A..Z, а напроверку одного пароля уходит ~1 микросекунда(у меня на дельфях 27 метровый словарь, в котором 2.7 млн записей перебирается ~ за 3 сек), то брутфорсить можно несколько сотен лет

интересно, можно както сократить перебор?



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

Создано: 27 февраля 2005 17:57 · Поправил: assassin
· Личное сообщение · #13

если рассчитано на то, что пароль реально подобрать, то походу в нем всего 5-6 символов, причем из русских букв



Ранг: 54.2 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 27 февраля 2005 18:42 · Поправил: DDA
· Личное сообщение · #14

assassin пишет:
третее задание особо хацкерское - стереограмму разглядеть =)

дааа уж,слово value мы там не разгледели





Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 18:54
· Личное сообщение · #15

Mario555 пишет:
не подходит...
я вообще сомневаюсь что у этого крякми есть правильный пасс, ...

Это как это не подходит???
У этого кряк-ми есть единственный и верный пасс
nothingimportanthappenedtoday
фактически вся эта фигня с FPU сводится к какой-то функции X
(мне лень алгоритм выдирать, но код выписал, без лишних операций),
итого обрабатываем каждый символ этой функцией,
получаем массив (d)word значений.
(функцию X можно заменить обычной таблицей, подмены),
после чего складываем все элементы (их 29),
получаем некую константу Y, далее делаем
обычный xor каждого элемента с полученной константой Y
и..., далее сравнение с заданной таблицей, все!!!



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

Создано: 27 февраля 2005 18:59
· Личное сообщение · #16

это после пропатчивания лишь слово подходит
а без пропатчивания на w2003 std ed не фурычит




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

Создано: 27 февраля 2005 18:59
· Личное сообщение · #17

UniSoft пишет:
Это как это не подходит???

У меня тоже не подходит...




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 19:05
· Личное сообщение · #18

UniSoft
да, согласен, алгорит именно такой, а "фигня с FPU" это возведение кода символа в квадрат и деление его на 320h, остатки от деления и записываются в "массив (d)word значений". Только вот не подходит у меня пасс... скажи чему у тебя сумма значени равна (Y которая).
ЗЫ может тут дело в самих FPU ? типа там на разных процах они немного разные результаты дают ? у меня AMD



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

Создано: 27 февраля 2005 19:10
· Личное сообщение · #19

Ara пишет:
У меня тоже не подходит...

У меня кстати тож. Проверял на оригинальном, не патченом. Проц - intel..............




Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 19:14
· Личное сообщение · #20

а еще вместо
'i' можно вписать 'D',
'n' = 'F'
'y' = 'G'
'x' = 'P'
't' - 'T'




Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 19:34
· Личное сообщение · #21

Mario555 пишет:
ЗЫ может тут дело в самих FPU ?

возможно.

Вобщем брякаемся в OllyDbg на адресе 403636h
далее смотрим данные в стеке (на эту область как раз
указывает EAX):

0012FB78 00000064 ; <- это собственно и есть сами элементы
0012FB7C 00000140 ; вернее результаты функции
0012FB80 0000028F ; каждого символа.
0012FB84 0000019F
0012FB88 00000270
0012FB8C 00000064
0012FB90 000000D1
0012FB94 00000270
0012FB98 000002A8
0012FB9C 0000021F
0012FBA0 00000140
0012FBA4 000000C4
0012FBA8 0000028F
0012FBAC 00000261
0012FBB0 00000064
0012FBB4 0000028F
0012FBB8 0000019F
0012FBBC 00000261
0012FBC0 0000021F
0012FBC4 0000021F
0012FBC8 00000259
0012FBCC 00000064
0012FBD0 00000259
0012FBD4 00000190
0012FBD8 0000028F
0012FBDC 00000140
0012FBE0 00000190
0012FBE4 00000261
0012FBE8 000000F1 ; <- последний символ
0012FBEC 00000000
0012FBF0 00000000
0012FBF4 0000001E ; <- а это промежуточные значения
0012FBF8 0000001E
0012FBFC 00000021
0012FC00 0000001B
0012FC04 0000001B
0012FC08 0000001E
0012FC0C 0000001A
0012FC10 0000001B
0012FC14 0000001D
0012FC18 0000001F
0012FC1C 0000001E
0012FC20 00000020
0012FC24 00000021
0012FC28 00000017
0012FC2C 0000001E
0012FC30 00000021
0012FC34 0000001B
0012FC38 00000017
0012FC3C 0000001F
0012FC40 0000001F
0012FC44 00000019
0012FC48 0000001E
0012FC4C 00000019
0012FC50 00000019
0012FC54 00000021
0012FC58 0000001E
0012FC5C 00000019
0012FC60 00000017
0012FC64 00000024
0012FC68 00000000
0012FC6C 00000000
0012FC70 0012FC68
0012FC74 00000004
0012FC78 40CC9880
0012FC7C 9E01064B
0012FC80 0000322A ; <- А это и есть та самая константа
0012FC84 00000000 ; сумма всех элементов.




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 19:42
· Личное сообщение · #22

UniSoft пишет:
0012FC80 0000322A ; <- А это и есть та самая константа

вот эту констану я получил брутфорсом (она одна из 4-х подходящих), а при вводе твоего пасса сумма получается 3228h %)




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 19:57
· Личное сообщение · #23

на твой пасс получается такое
0012F9F8   00000064
0012F9FC   00000140
0012FA00   0000028F
0012FA04   0000019F
0012FA08   00000270
0012FA0C   00000064
0012FA10   000000D1
0012FA14   00000270
0012FA18   000002A8
0012FA1C   0000021F
0012FA20   00000140
0012FA24   000000C4
0012FA28   0000028F
0012FA2C   00000261
0012FA30   00000064
0012FA34   0000028F
0012FA38   0000019F
0012FA3C   00000261
0012FA40   0000021F
0012FA44   0000021F
0012FA48   00000258
0012FA4C   00000064
0012FA50   00000258
0012FA54   00000190
0012FA58   0000028F
0012FA5C   00000140
0012FA60   00000190
0012FA64   00000261
0012FA68   000000F1
тоесть несовпадет один символ (`e`) - остаток от деления квадрата которого равен меня 258 а у тебя 259...




Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 19:59
· Личное сообщение · #24

Mario555 пишет:
вот эту констану я получил брутфорсом

каким брутфорсом, это же сумма всех элементов, и изменение любого символа приведет к изменению суммы.
а при вводе твоего пасса сумма получается 3228h
странно, что-то не так.
но очень интересно, а почему так.
А как насчет каждого символа, сразу с области на которую указывает EAX при бряке на 403636h, какие из элементов не совпадают???




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

Создано: 27 февраля 2005 19:59
· Личное сообщение · #25

Mario555 пишет:
тоесть несовпадет один символ (`e`) - остаток от деления квадрата которого равен меня 258 а у тебя 259...

Во, развивайте тему, баги в прогах можно найти... Какой в корзину?




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 20:11
· Личное сообщение · #26

UniSoft пишет:
каким брутфорсом, это же сумма всех элементов, и изменение любого символа приведет к изменению суммы.

хе, а как ты пасс искал ?
я же говорю -
Mario555 пишет:
так вот для их таблицы "зашитой" в прогу перебором получаются 4 возможных значения переменной X, одно из которых похоже на правду

тоесть перебираются все варианты X, с ними ксорится таблица, далее считаем сумму элементов в этой "разксореной" таблице и если она равна числу X, то оно подходит для решения... таких числа толучилось 4, одно из них 0000322A. Далее просто нужно от всех возможных символов посмотреть остатки от деления квадрата (табличку составить) и сравнить с "разксореной" числом 0000322A таблицой зашитой в прогу. По идее так получаются все символы, но с одним из них выходит косяк...




Ранг: 52.0 (постоянный), 146thx
Активность: 0.030.08
Статус: Участник

Создано: 27 февраля 2005 20:59
· Личное сообщение · #27

Mario555 пишет:
хе, а как ты пасс искал ?

А так, чисто логически пошел.
Да, сначала тоже думал, что придется писать прогу, но как всегда лень одолевает.
Я просто списал результат для каждого значения от 41h до 7Ah
(вводим например сначала:
ABCDEFGHIJKLMNOPQRSTUVWXYZaaa бряк на 403636h
списываем,
далее:
abcdefghijklmnopqrstuvwxyzaaa
а потом посмотрев на ту таблицу и на значения, что получили,
можно предположить, что сумма должна быть около 32xx,
далее взяв любой элемент из таблицы например второй 336A, в качестве константы, и начинаем с ним ксорить получившиеся значения результат который в пределах 01xx, и с получившимся результатом ксорим всю таблицу, и буквально с 4-й попытки попадаем в точку.
Это сложно описать, всю логику по которой я пошел, но зато это быстрее, на взлом ушло минут 30 (это учитывая то, что попутно выполняя пошагово прогу я переписывал каждую значимую инструкцию), да и писать ничего не пришлось (но это естествеено не всегда может прокатить).




Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 27 февраля 2005 21:32
· Личное сообщение · #28

UniSoft пишет:
Это сложно описать, всю логику по которой я пошел, но зато это быстрее, на взлом ушло минут 30

ну насчёт быстрее это врятли... я же тоже прогу никакую не писал, просто в отладчике строчек 10-15 на брутфорсер константы Y (он моментально находит 4 значения) и ещё строчек 5-10 изменение цикла, который в квадрат возводит и делит, переделал так чтобы он по всем допустимым символам проходил и результаты записывал в некую таблицу, дальше либо вручную, либо скриптом ищем совпадения...


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


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