Сейчас на форуме: -Sanchez- (+8 невидимых) |
eXeL@B —› Основной форум —› Использование IDA Pro |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 50 . 51 . >> |
Посл.ответ | Сообщение |
|
Создано: 08 августа 2008 18:53 · Личное сообщение · #1 Здесь предлагаю обмениваться опытом использования, настройки этой тулзы. Сегодня в Options->Color настроил основное окно дизассемблера все в старом классическом стиле Borland ща стало или в стиле Far(для справки первая версия была написана на Borland C++), но когда подносишь курсор на jne\je то в хинте появляется фон бежевый. Вот никак не могу найти место где это настраивается?! Может кто шарит ? ) ----- My love is very cool girl. |
|
Создано: 28 ноября 2008 19:32 · Личное сообщение · #2 В лом читать перепалку,потому скажу по существу! Кряклаб это место специалистов и если кто-то чего-то не выдает и этот чел не ньюб,значит есть на то причины и остается только принять его решение! ЗЫ: никто не ковырял Bindiff ? че это ? Дурь или все-таки кому-то понадобилась ? Если да то в чем фишка ? ----- My love is very cool girl. |
|
Создано: 28 ноября 2008 20:24 · Личное сообщение · #3 |
|
Создано: 28 ноября 2008 20:36 · Личное сообщение · #4 =TS= пишет: Последний раз по этой теме -- тупо А я тебе последний раз объясняю - что ты, постарайся понять про что тебе пишут, а не амбициозные посты клепай Я у тебя попросил, - ты сказал: не дам, хочешь реверси.. все! у меня к тебе вопросов не было!!! (мне непонятно че ты начал лезть в наш разговор с Ultras? – со своими комментами – смешной, не смешной) У меня есть(были) идеи по 12 настройкам дополнительным на твой плуг(мне так проще/быстрее было накодить самому, чем описывать что нужно добавить в плагин – да-да, вот так бывает быстрее накодить самому, чем объяснять – ну и гарантии нет что чел сможет асилить, то что ему напишут, тут еще 50на50 да и времени очень много может уйти на очевидные вещи(я тут кстати очень часто убеждался в этом что напишешь, а РЕАЛИЗАЦИИ НЕТ(ну пожалуй исключение фантомка только) – так лучше самому накодить)) Я у тебя попросил исходники чтобы ты выложил, чтобы потом я добавил свой код – в том что у плагина несколько разработчиков – это, не есть лольно! Ну вот ты утверждаешь что сделаешь – хорошо вот попробуй реализовать парочку из двенадцати надстроек 1. нужно добавить чекобокс при установке которого выполнялось следующие действие При открытии любой базы(сделанной ранее) чтобы эти настройки(сделанные ранее в твоем плагине) тоже действовали Как у тебя сейчас при открытии базы: надо лезть заново их настраивать(это должно быть только, если не установлен чекобокс) 2. мелочь но приятно будет – когда меняешь настройки в твоем окне Options, чтобы изменения делались сразу в окне ИДЫ!, а не после нажатия OK, а вот если нажать ОТМЕНА, все возвращалось к старому как раньше, до изминений – так визуально удобнее будет удобно сразу видно на что влияет та или другая опция У меня в принципе есть сомнение что я плохо описал эти опции, но думаю что ты ее уже пробовал реализовать.. Надеюсь вопрос не в грубой форме, и не будет ответа: - мне такая опция нах не нужна, я ее делать не буду Если она вам нужна – реверсите и пишите сами Archer пишет: Демону за срач будет бан жжошь? - бань ----- ЗЫ: истЕна где-то рядом, Welcome@Google.com |
|
Создано: 28 ноября 2008 22:42 · Личное сообщение · #5 |
|
Создано: 29 ноября 2008 05:42 · Личное сообщение · #6 Насчет времени окончании лицензии hexrays. Походу можно пропатчить hexrays.plw: Comparing files HEXRAYS_ORIG\hexrays.plw and HEXRAYS.PLW 000FCCDC: 70 00 000FCCDD: 83 00 000FCCDE: 2C 00 000FCCDF: 49 00 Время хранится в dword_100FE0DC. (В оригинале там 0x492C8370). Есть еще один статик -- dword_100FE0D8 (boolean isNotUpdatable). Там -- 0x00000000. т.е. update возможен. При dword_100FE0DC == 0 && dword_100FE0D8 == 0 goto LABEL12 --> goto LABEL17 --> hexrays OK . Процедура проверки даты: signed int __cdecl sub_1000AE90() { char ST24_1_0; // ST24_1@0 signed __int64 v1; // edi@1 __int64 v2; // qax@2 int v3; // ecx@3 signed __int64 v4; // qax@4 char *v5; // ST1C_4@7 char *v6; // ST20_4@7 signed int result; // eax@16 int v8; // edx@1 unsigned __int8 v9; // cf@4 byte_10101FE0 = callui(47) != 0; *(_DWORD *)&v1 = sub_100B5F01(0); *((_DWORD *)&v1 + 1) = v8; if ( !(dword_100FE0CC & 0x80000000) ) return 0; v2 = dword_100FE0DC; if ( !dword_100FE0DC ) goto LABEL_12; v3 = dword_100FE0D8; if ( !dword_100FE0D8 ) { v9 = (_DWORD)v2 < (_DWORD)v1; *(_DWORD *)&v4 = (_DWORD)v2 - (_DWORD)v1; *((_DWORD *)&v4 + 1) -= v9 + *((_DWORD *)&v1 + 1); if ( *((_DWORD *)&v4 + 1) > 0 ) goto LABEL_17; if ( *((_DWORD *)&v4 + 1) >= 0 && (_DWORD)v4 ) { if ( v4 >= 2592000 ) goto LABEL_17; v6 = "http://www.hex-rays.com"; v5 = "AUTOHIDE REGISTRY\nHIDECANCEL\nThe technical support period of the Hex-Rays decompiler\nwill expire soon. Please update your license for\nuninterrupted technical support and updates.For more information please visit %s"; } else { v6 = "http://www.hex-rays.com"; v5 = "AUTOHIDE REGISTRY\nHIDECANCEL\nThe technical support period of the Hex-Rays decompiler\nhas expired. You have 3 month grace period to update your license.\nThe grace period is counted from the expiration date.\nFor more information please visit %s"; } if ( ((_DWORD (__cdecl *)(char *, char *, char *, signed int, char *, char))sub_1000A140)( "http://www.hex-rays.com", "OK", Class, 1, v5, (char)v6) > 0 ) callui(55); LABEL_12: v3 = dword_100FE0D8; if ( !dword_100FE0D8 ) goto LABEL_17; } if ( v1 >= v3 ) { if ( sub_1000A140( "http://www.hex-rays.com", "OK", Class, 1, "AUTOHIDE REGISTRY\nHIDECANCEL\nSorry, your Hex-Rays license has been expired.\nFor more information please visit %s", (char)"http://www.hex-rays.com") > 0 ) callui(55); return 0; } LABEL_17: if ( (unsigned __int8)sub_1000A3E0() ) { if ( *((_DWORD *)ph + 1) ) { if ( get_plugin_options("hexrays") ) qexit(1); result = 0; } else { sub_10092EE0(0); sub_100209A0(1); read_user_config_file("hexrays", sub_1000A1A0, 0); off_101007DC(); sub_10041CD0(); hook_to_notification_point(3, sub_1000A3A0, 0); hook_to_notification_point(0, sub_1000A3C0, 0); hook_to_notification_point(1, sub_1003B310, 0); if ( byte_10101FE0 ) { sub_1000A0B0("File/Produce/Create HTML", "Create ~C~ file...", "Ctrl-F5", 1, sub_1000A6D0, 0); sub_1000A0B0("View/Open/Hex", "Pseudocode", "F5", 1, sub_1000A370, 0); sub_1000A0B0("Help/Check", "Send database", 0, 1, sub_1000AA10, 0); } else { sub_1000A0B0("File/Produce/Produce DIF", "Produce ~C~ file...", "Ctrl-~", 1, sub_1000A6D0, 0); } sub_1000A0F0( "%s plugin has been loaded (v%s)\n License: %s %s (%d user%s)\n The hotkeys are %s: decompile, %s: decompile all.\n Please check the Edit/Plugins menu for more informaton.\n", (char)"Hex-Rays"); if ( dword_10101FE4 < 520 ) sub_1000AD90(); result = 2; } } else { sub_1000A0F0("Hex-Rays: could not determine IDA version\n", ST24_1_0); result = 0; } return result; } |
|
Создано: 29 ноября 2008 12:16 · Личное сообщение · #7 Demon666 пишет: 1. нужно добавить чекобокс при установке которого выполнялось следующие действие При открытии любой базы(сделанной ранее) чтобы эти настройки(сделанные ранее в твоем плагине) тоже действовали Как у тебя сейчас при открытии базы: надо лезть заново их настраивать(это должно быть только, если не установлен чекобокс) Сейчас настройки плага хранятся в каждой конкретной базе. При первом вызове плага берутся настройки в иде по-умолчанию. При последующих -- результаты предыдущих вызовов плага для ЭТОЙ базы. Нужны кнопки Save / Load default settings, при нажатии которых будет сохранятся/загружаться некая рабочая конфигурация? Demon666 пишет: 2. мелочь но приятно будет – когда меняешь настройки в твоем окне Options, чтобы изменения делались сразу в окне ИДЫ!, а не после нажатия OK, а вот если нажать ОТМЕНА, все возвращалось к старому как раньше, до изминений В текущей реализации диалогового апи в IDA (по крайней мере в SDK 5.2) НЕТ CALLBACKов на изменения состояния элементов диалога, а только на нажатия кнопок. Поэтому невозможно отследить изменение состояния элементов диалога, созданного с помощью диалогового апи в IDA. Demon666 пишет: так визуально удобнее будет удобно сразу видно на что влияет та или другая опция Для этого были добавлены всплываюие подсказки (хинты) ----- DREAMS CALL US |
|
Создано: 30 ноября 2008 03:07 · Личное сообщение · #8 вместо этих слов, мог быть написан полезный код. =TS= Более подробно о первой опции Что имеем два тест файла 1_test.exe и 2_test.exe запускаем ИДУ, НО при этом у нас НЕ установлен твой плагин(или установлен(это не суть важно), но настройки трогать этот раз НЕ БУДЕМ) открываем 1_test.exe, после того как ИДА проанализирует этот тест файл – закрываем ИДУ сохраняя базу нажав на OK теперь УСТАНАВЛИВАЕМ твой плагин и запускаем ИДУ, НО при этом у нас уже установлен твой плагин открываем 2_test.exe, после того как ИДА проанализирует этот тест файл открываем окно настроек плагина и там устанавливаем, ну к примеру Show opcodes И у опций Instructions indention 0 и у Opcode length 10 (кстати там убогие комбобоксы, такие страшные ужаснах, куда симпотнее и функциональнее подходят Editы с встроенными в них msctls_updown32 - ИМХО) Жмем OK Теперь закрываем ИДУ, сохраняя базу нажав на OK Теперь открываем (у нас уже установлен твой плагин) 1_test.idb и что мы видим? А вот именно, ничего! – придется опять лезть в настройки и выставлять все заново Когда база одна, тут хс., а вот если их 20-30? Что во всех лазить выставлять? Для этого и нужна опция 1 чтобы открыв 1_test.idb были применены настройки сделанные в 2_test.exe Назовем это настройками для всех открываемых баз(глобальные), но если отключить эту опцию, то настройки действуют только на ту базу(локальную) которая на данный момент открыта(там еще есть пара мелочей отслеживание за настройками что в базе и глобальными, но да хс. это уже не столь так и важно) Получается твой плагин от стандартного диалога настроек далеко и не ушел, разницца только в Shift-O ЗЫ: лучше я уже врятли смогу объяснить, даже представить не могу, как уже подробнее описать =TS= пишет: В текущей реализации диалогового апи в IDA (по крайней мере в SDK 5.2) НЕТ CALLBACKов на изменения состояния элементов диалога а может просто взять и реализовать через WIN32 API DialogBoxParam и обрабатывать сообщения приходящие от контролов(формочек, бгг) тут и изменения будут сразу в окне ИДЫ, да и подсказки сделать на русском ;) P. S. кстати вот это реальный показатель в каком жопе находятся дзенствующие за ООП ООП – ИМХО, это консервная банка для кодера(минимум интеллекта, лень в первые ряды и в гугл тупо на поиски компонентов/классов итд.) %)) если нет этой реализации в убогом VC-кхе-кхе, то значит и я ее делать не буду - ЖЕСТЬ ---------------------------------------------------------------------- --------- Так, теперь что мы имеем.. да нихрена! Отказ от реализации второй опции, много букафф в описании(2-х разовом) первой опции(а их(опций) 12) ИМХО - вот это лольно Чтобы могло бы быть, выложив ты исходники в паблик Через пару дней я добавил бы эти 12 опций и тот кто хотел бы, их юзал + имея на руках исходники А не ждал бы, пока аффтар жив.. может он асилит хоть одну опцию из двух?..... ЗЫ: вот именно в этом и была истЕна ;) Засим постить(срать) здесь больше не буду code.google.com/p/idapython/ www.fantom-lab.narod.ru/Python/LerningNoName/IndexNoName.html ----- ЗЫ: истЕна где-то рядом, Welcome@Google.com |
|
Создано: 01 декабря 2008 07:37 · Личное сообщение · #9 svladim пишет: Насчет времени окончании лицензии hexrays. Походу можно пропатчить hexrays.plw: Comparing files HEXRAYS_ORIG\hexrays.plw and HEXRAYS.PLW 000FCCDC: 70 00 000FCCDD: 83 00 000FCCDE: 2C 00 000FCCDF: 49 00 Вроде бы помогло по крайней мере (изменил 49 на 50) у меня до 2012 года не будет ругаться |
|
Создано: 01 декабря 2008 14:11 · Личное сообщение · #10 |
|
Создано: 02 декабря 2008 00:00 · Личное сообщение · #11 Народ сведующий, подскажите плз, как в иде сделать чтобы русские строки в коде нормально показывало А то показывает вот это: Code:
или это: Code:
вместо: Code:
|
|
Создано: 02 декабря 2008 19:55 · Личное сообщение · #12 |
|
Создано: 02 декабря 2008 20:01 · Личное сообщение · #13 |
|
Создано: 02 декабря 2008 20:28 · Поправил: Kiev78 · Личное сообщение · #14 |
|
Создано: 17 декабря 2008 16:50 · Поправил: theCollision · Личное сообщение · #15 Есть вопрос , может кому-нить покажется интересным. В HIEW я могу задать адрес так, чтобы от него отсчитывались оффсеты. Есть ли подобная фича в IDA ? вот пример, того как показываются оффсеты в hiew: Code:
точно такого же хочется и в IDA ----- My love is very cool girl. |
|
Создано: 01 января 2009 22:08 · Личное сообщение · #16 |
|
Создано: 01 января 2009 22:27 · Поправил: Ultras · Личное сообщение · #17 |
|
Создано: 01 января 2009 22:29 · Личное сообщение · #18 |
|
Создано: 01 января 2009 22:30 · Личное сообщение · #19 |
|
Создано: 01 января 2009 22:31 · Личное сообщение · #20 |
|
Создано: 02 января 2009 18:47 · Личное сообщение · #21 |
|
Создано: 02 января 2009 19:59 · Личное сообщение · #22 |
|
Создано: 02 января 2009 20:53 · Личное сообщение · #23 r_e пишет: Можно. Спасибо. r_e пишет: А вообще не ленись и посмотри в %IDA%\idc каталог Заглянул. Ничего нового, кроме факта использования #define не узнал. Честно искал это в справке IDA - ничего (5.0)... app Ячейку памяти? ИМХО терминология школьника и правильного студента. Поясню, что любезно написал товарищ r_e: PatchByte(0x11111111,0xDF) ; // пропатчит байт по адресу 0x11111111 на значение 0DFh PatchWord(0x11111111,0x1234) ; // думаю дальше всё понятно - патчим WORD или DWORD PatchDword(0x11111111,0x12345678) ; |
|
Создано: 02 января 2009 21:52 · Личное сообщение · #24 |
|
Создано: 02 января 2009 23:55 · Личное сообщение · #25 |
|
Создано: 03 января 2009 00:21 · Личное сообщение · #26 app В таком случае - вперёд читать мануал от Криса Касперского: www.hackzone.ru/files/get/id/123/Obraz+Mishleniya+IDA+©+Kris+Kasperski.html Вставлять можно либо в .idc файл и применить его через меню File -> IDC file... Второй вариант в меню File -> IDC command (горячая клавиша по умолчанию [Shift]+[F2]) и набрать команду. |
|
Создано: 03 января 2009 13:05 · Личное сообщение · #27 |
|
Создано: 03 января 2009 13:27 · Личное сообщение · #28 |
|
Создано: 03 января 2009 13:48 · Личное сообщение · #29 |
|
Создано: 03 января 2009 15:08 · Личное сообщение · #30 app Вам шашечки или ехать? app пишет: -модифицировать ячейку памяти по адресу 0x11111111 необходимо в отладчике, в момент остановки в заданной breakpoint. app пишет: ...заранее неизвестен адрес модифицируемой ячейки, Напишите плаг для дебуггера - пусть все делается в плаге. Или лодер - пусть патчит все в рантайме. ----- старый пень |
|
Создано: 03 января 2009 19:14 · Личное сообщение · #31 |
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 50 . 51 . >> |
eXeL@B —› Основной форум —› Использование IDA Pro |
Эта тема закрыта. Ответы больше не принимаются. |