| eXeL@B —› Основной форум —› похоже на base64, но не оно.. а что? :) | 
| Посл.ответ | Сообщение | 
| 
 | 
Создано: 22 апреля 2006 06:56  · Личное сообщение · #1 на входе будет строка "BZTOygzN5QTOykTR1cjQ4kzN4ITO5kjQ5kTO1czM0UUMCVzN4M0Q1cDMBRjQFNDR3MTQ4 MTO2UTOxIzM1cDN5A==" на выходе получаем: output db "A6928794929E57B89782999B9995734E1B578CC570A4BE3D73A8396591235749",0 вот так вызывается дешифровка: loc_463AA8:              
в принципе есть идя, что просто "алфавит" другой, но какой?  
![]()  | 
| 
 | 
Создано: 22 апреля 2006 09:02  · Личное сообщение · #2  | 
| 
 | 
Создано: 22 апреля 2006 12:15  · Личное сообщение · #3 Nitrogen пишет: просто "алфавит" другой, но какой A-Z => 0x00-0x19 a-z => 0x1a-0x33 0-9 => 0x34-0x3D + => 0x3E / => 0x3F Это чистый base64. Nitrogen пишет: на выходе получаем: output db "A6928794929E57B89782999B9995734E1B578CC570A4BE3D73A8396591235749",0 На выходе этой программы мы не можем текстовую строку получить - там хекс и совсем другой. Ну правда есть код 05 94 - они есть в "хвосте" твоего output-а. Ты что-то напутал. ![]()  | 
| 
 | 
Создано: 22 апреля 2006 13:20  · Личное сообщение · #4 tundra37 ну я же сказал, что это похоже на b64, но не оно. смотри аттач. я там все это отдельно скомпилил. глянь что на входе, и что имеем на выходе, так же попробуй вбить любую b64-строку   ef94_22.04.2006_CRACKLAB.rU.tgz - base64mod.zip
![]()  | 
| 
 | 
Создано: 22 апреля 2006 16:26  · Личное сообщение · #5 Nitrogen пишет: ну я же сказал, что это похоже на b64, но не оно. Ты спрашивал про кусок программы. Я тебе сказал - это чистый b64. В кейген-е, который ты теперь положил 6 кило и кейген явно не сводится к "огрызку". Т.к. кейген защишен, то невежливо больше ничего не говорить. Считай я обиделся     Тем более, что это творение    Trsh   Team.
![]()  | 
| 
 | 
Создано: 22 апреля 2006 16:36  · Личное сообщение · #6 tundra37 ты сказал, что там b64, но ведь ты ошибаешься, если это и b64, но модифицированный вариант (что собственно говоря я и сам знаю) и задача состоит в том, что бы написать b64mod_enc на основе декодера который был в аттаче ты вообще во внутрь этого "кейгена" заглядывал? в аттаче та часть, которая делает т.н b64mod_dec ты хоть его запускал? там даже нет банального upx-а, а ты говоришь о защите   3210_22.04.2006_CRACKLAB.rU.tgz - keygen.asm
![]()  | 
| 
 | 
Создано: 22 апреля 2006 17:34  · Личное сообщение · #7 У меня в olly нет таких адресов, как у тебя. Нашел я программу и протрассировал. Интуиция меня не обманула : в нормальном base64 используют сдвиг влево, а здесь вправо. В результате все шестерки битов внутри 4-х байтного слова переставлены слева направо. И все вроде - сам смотри. Т.е. таблица - чистый base64, только сборка другая. ![]()  | 
| 
 | 
Создано: 22 апреля 2006 20:48  · Личное сообщение · #8  | 
| 
 | 
Создано: 23 апреля 2006 10:47  · Личное сообщение · #9 В оригинальном base64 из каждой буквы(цифры,знака) получают 6 бит, их пишут в младшие разряды 32-битного регистра и сдвигают влево. В данной программе сдвигают вправо. Что делается при переходе от слова к слову не проверял, но судя по минимальности команд - ничего особенного. Т.к. ты с битами похоже слабо разбираешься, а Интел еще сумел все запутать, читая байты в 32-битном слове задом наперед, то тебе еще предстоит долго разбираться. Либо на отладчике - это попроще, либо с карандашом и большим листом бумаги. Чтобы не мучиться, можно вызвать Виндовый калькулятор, перевести его в инженерный режим и наслаждаться просмотром в побитном и шестнадцатиричном виде. Для имитации сдвига можно использовать умножение на степень двойки. Есть специализированные калькуляторы в разных HexShop-ах, но это лишнее по-моему. Лучше все-таки olly. ![]()  | 
| 
 | 
Создано: 23 апреля 2006 11:47  · Личное сообщение · #10  | 
| 
 | 
Создано: 24 апреля 2006 00:23  · Личное сообщение · #11 tundra37 пишет: Это чистый base64. для нормального base64 выход должен быть таким: 05 94 CE CA 0C CD E5 04 CE CA 44 D1 D5 C8 D0 E2 4C CD E0 84 CE E6 48 D0 E6 44 CE D5 CC CC D1 45 ... в данном же случае: "A6928794929E57B89782999B9995734E1B578CC570A4BE3D73A8396591235749" tundra37 пишет: Ну правда есть код 05 94 - они есть в "хвосте" твоего output-а. Ты что-то напутал. никаких намёков на корректный base64 нет в "хвосте" нет 05 94 ! там 5749 - не очень то похоже! так что, tundra, напутал ты. я попробовал менять ближайшие слова/байты местами и рорить/ролить, но на base64 всё равно не похоже ;) ----- EnJoy! ![]()  | 
| 
 | 
Создано: 24 апреля 2006 09:06  · Личное сообщение · #12 Jupiter там короче отличие в том, что 6ки-байт берутся справа, а не слева как по стандарту b64mod_enc       proc    input_str:dword,output_str:dword,input_size:dword 
![]()  | 
| 
 | 
Создано: 24 апреля 2006 10:49  · Личное сообщение · #13 Jupiter пишет: в "хвосте" нет 05 94 ! там 5749 - не очень то похоже! так что, tundra, напутал ты. Все что вначале написано можешь забыть. Если бы я сразу ror правильно промоделировал, то и олли не понадобился. А про хвост это от отчаяния - я видел что байты кладут с головы, но там совсем не похоже было. В хвосте хоть три цифры совпадают. Как только прислали экзешник и я в олли увидел, как A6 появилось в буфере после пары шагов - стало ясно, что есть перестановка. Так переставлены шесть бит, то увидеть это сложно. 0 5 9 4 C E 0000 0101 1001 0100 1100 1110 000001 011001 010011 001110 переставляем 4 шестерки - 3 байта 001110 010011 011001 000001 0011 1001 0011 0110 0100 0001 читаем как текст - и т.д. 9 6 А ![]()  | 
| 
 | 
Создано: 25 апреля 2006 07:03  · Личное сообщение · #14 Nitrogen Сделал конвертер (см.аттач) для нормального Base64 и данного (изменённого). Выводит одновременно Base64, ASCII, Hex Dump. Алгоритм можно переключать на лету. Для простоты использования можно вбить строку по умолчанию в файл Base64.ini: [Base64Conv] Data=Default text Mode=1 ; 1-Original, 0-Modified   0ab7_25.04.2006_CRACKLAB.rU.tgz - Base64Conv.v1.0.rar
----- EnJoy! ![]()  | 
| 
 | 
Создано: 25 апреля 2006 07:15  · Личное сообщение · #15 Для твоего примера файл Base64.ini (должен лежать в папке с прогой) [Base64Conv] Data=BZTOygzN5QTOykTR1cjQ4kzN4ITO5kjQ5kTO1czM0UUMCVzN4M0Q1cDMBRjQFNDR3 MTQ4MTO2UTOxIzM1cDN5A== Mode=0 ; 1-Original, 0-Modified   7e9e_25.04.2006_CRACKLAB.rU.tgz - Base64.ini
----- EnJoy! ![]()  | 
| 
 | 
Создано: 25 апреля 2006 08:04  · Личное сообщение · #16  | 
| 
 | 
Создано: 25 апреля 2006 18:12  · Личное сообщение · #17  | 
| 
 | 
Создано: 25 апреля 2006 20:10  · Личное сообщение · #18  | 
| 
 | 
Создано: 26 апреля 2006 13:41  · Личное сообщение · #19  | 
| eXeL@B —› Основной форум —› похоже на base64, но не оно.. а что? :) | 




 
   Тем более, что это творение    Trsh   Team.



 Для печати