|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Авг 8, 2003 16:52:02 вот за что вы взялись!!! Ну что ж интересная головоломочка :)) Согласен, планы наполеоновские :)) ИДА тут просто отдыхает... Когда задумываюсь как бы все это реализовать - волосы начинают шевелиться на... кхм... |
|
|
Дата: Авг 8, 2003 16:59:52 Max Ну это ещё не самая сложная безумная идея. :) |
|
|
Дата: Авг 8, 2003 17:54:02 Кстати, было бы хорошо админам скооперироваться с The Svin'ом и централизовано выложить его обучалки на сайте, а если + мануалы, было бы совсем хорошо. А то в какой-то другой ветке они пробегали, я скачать не успел, а теперь не найду :( а вещь полезная для всех |
|
|
Дата: Авг 8, 2003 18:03:52 админам скооперироваться с The Svin'ом Мы думаем над тем :)) |
|
|
Дата: Авг 8, 2003 18:15:32 ИДА тут просто отдыхает Ну до IDA далеко, тем более что там появился и встроенный эмулятор для PE... Хотя идея хороша:) |
|
|
Дата: Авг 8, 2003 18:27:03 Ну до IDA далеко, тем более что там появился и встроенный эмулятор для PE... Честно говоря, фраза непонятна. Пояснить можно? |
|
|
Дата: Авг 8, 2003 18:52:48 volodya Если не ошибаюсь, с версии 4.5 в IDA есть эмулятор, позволяющий виртуально исполнять PE файлы... Но сам я этого не видал (ну нету у меня 4.5 версии), поэтому извиняйте, если что не так... |
|
|
Дата: Авг 8, 2003 18:53:24 Отладчик там появился в 4.5, говорят, правда, отстойный. |
|
|
Дата: Авг 8, 2003 18:58:12 Bog_ IDA давным-давно умела частично эмулировать работу лоадера. Тому следствием, например, ориентирование только на raw-байты и невозможность иногда видеть то, что видит стандартный хекс-редактор. А что до "есть эмулятор, позволяющий виртуально исполнять PE файлы", пардон, эта фраза еще похлеще! Или я ее не понял, что очень вероятно. Если имеется в виду частичная эмуляция лоадера - да, это так, благо алгоритмы лоадера известны давно. Если что-то другое - объясните. |
|
|
Дата: Авг 8, 2003 19:06:26 |
|
|
Дата: Авг 8, 2003 19:13:06 masquer Bog_ Думается мне, глупостью Ильфак занимается. Все равно конкуренцию Soft-Ice или даже OllyDbg он не составит. Лучше бы глюки поправил в дизассемблере. IDA 4.3 падает где надо и где не надо! 4.5, к слову, значительно стабильнее в работе! |
|
|
Дата: Авг 8, 2003 19:40:03 Думается мне, глупостью Ильфак занимается Ну почему, ИДА очень наглядно отображает код (комменты всякие, процедурки понимает, FLAIR тот же). Если ко всему этому отладчик нормальный прикрутить - работать было бы одно удовольствие. |
|
|
Дата: Авг 8, 2003 19:51:10 IDA - да. Без сомнения. Самый лучший дизассебмлер. Хотя мне говорили, что с другими архитектурами, она, мягко говоря, не очень. Что до отладчика? Ну зачем? Я же говорю, до S-Ice им все равно не дотянуть! |
|
|
Дата: Авг 9, 2003 05:10:36 У меня точно такая же задумка (свой дизасемблер,ассеблер,анализатор кода,супер-пупер вирусы). и Полный контродь над кодом!Развернись мысля широоко! Всё упираеться в компактную структуру опкодов! Если появяться какие-то наработки ==>neo-book@narod.ru Жду подержки.Необходимо раскрыть механизм! |
|
|
Дата: Авг 9, 2003 06:26:47 2 The Svin >У тебя дизассемлер только в одном режиме работает? >32 разрядном? Зависит как изначально задать, см описание на http://www.quadspeedi.net/~smike/disasmdll.htm короче, имеетcя export функция void SetIntelMode(int b32Bits), которая и определяет изначальный режим. 16 разрябный режим тестировался меньше чем 32 разрядный, но вроде, тоже работает, вообще-то этот дисассамблер встроен в два моих продукта которые тоже можно скачать и посмотреть его в действии http://www.quadspeedi.net/~smike/index.html http://www.quadspeedi.net/~smike/xedit.htm >250 основных по первому байту + группа 0xf (которая для pentium 4 > практически заполнена с 0 до 256 по второму байту) > Непонятно для меня это разъяснение, я в "линейку" выложил архитектуру дисассемблера пример switch(pbyBuffer[0]) { ....................... case 0x06: case 0x0e: case 0x16: case 0x1e: //push es,cs,ss,ds nBytesInCurrentLine += 1; strcpy(szOp,szPush); nIndex = (pbyBuffer[0] & 0x18)>>3; strcat(szOp,szRegSeg[nIndex]); break; ...... отсюда - количество неветвяшихся case''ов = 245 (уточнаю, вместо 250) 256 - группы (саse'ы с ветвлением): 0xf, 0xfe, 0xff и FloatPoint группа switch(pbyBuffer[0]) { case 0xd8: case 0xd9: case 0xda: case 0xdb: case 0xdc: case 0xdd: case 0xde: case 0xdf: //floating point operations nBytesInCurrentLine = FloatPointOp(pbyBuffer, szOp); break; ............... >есть подводные камешки типа префиксов 0x66 и 0x67 > Так это на определение ID никак повлиять не может, > только на переключение размерности "полного" операнда (66) на 99% так, но не совсем, по крайней мере дисассемблеры MS VC в зависимости от префикса 0x66 меняют и символику интрукции, примеры: pushad/pusha, popad/popa, insd/insw я последовал их примеру >мелкие группки: 0xfe, 0xff и другие > ? > Непонял по какому принципу ты разделяешь FE и FF? > По биту w что ли? И они у тебя в разные группы попадают. > Разве ж это компактно? согласен, между 0xfe и 0xff много общего, но 0xfe, как правильно, вами замечено, имеет больше, пустых мест, которые возможно в дальнейшем будут задействованы, под что-то другое, скажем, так в Intel P 5/6/7 когда я писал, я не только группировал, но и думал о том, как равиваться, т е чтобы код был более читабельным, ведь через полгода можно и забыть, что и где лежит, короче, но 0xfe/0xff подгруппы я положил отдельно, именно по различию в количестве незаполненных полей, далнешем, предположим, начанаю добавлять в 0xfe, группа 0xff лежит отдельно, отлажена, работает, я ковыряю, только 0xfe, обезопасив себя от создания багов в уже отлаженной части 0xff Спасибо! за вопросы и критику, все по делу и со знанием предмета. но хочу добавить, что я был и архитектор, и кодировчик, и тестер, конечно же архитектурные огрехи есть... 2 Edmond >Так, может слабать Туториал по написанию Дизассемблера? >Я готов поддержать!!! ну туториал - это к Ильфаку, от себя я бы мог просто поделится опытом, без претензий на объективность - написать статейку типа "Горе от ума - или как я писал дисассемлер 80x86" ну а вы можете написать критику на эту статейку... :)))) а вообще-то - статейка это хорошо, ну а лучше сбацать чего-то такое, что можно продать... :))))) |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.089 |