Сейчас на форуме: bartolomeo, johnniewalker, NIKOLA, vasilevradislav (+6 невидимых)

 eXeL@B —› Софт, инструменты —› DISJumping
. 1 . 2 . >>
Посл.ответ Сообщение

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

Создано: 30 марта 2007 13:03
· Личное сообщение · #1

Не подскажете прогу (или idc) для приведения за-jmp-енного кода к читабельному виду?
Или инфу чтоб сделать анализатор...
работоспособнасть ненужна - главное чтоб изучать можно было без бессмысленных переходов
вручную собирать код уже достало




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

Создано: 30 марта 2007 13:11
· Личное сообщение · #2

Еслия все правильно понял, то помоему IDA здесь вне конкуренции..

-----
radio uno in ibisa ...





Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 13:30
· Личное сообщение · #3

ну.. можешь слить поток инструкций файл и простейшим скриптом на перле (превет астег) или еще чем отсеять ненужные джампы..
а ида сбивается на большой вермишели :p

-----
Тут не могла быть ваша реклама





Ранг: 240.5 (наставник)
Активность: 0.190
Статус: Участник
Author of ACKiller

Создано: 30 марта 2007 13:36
· Личное сообщение · #4

lord_Phoenix пишет:
а ида сбивается на большой вермишели :p

Её пропатчить можно, чтобы сообщений не выдавалось.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 13:49
· Личное сообщение · #5

HoBleen
причем десь сообщения? она просто не видит тру команды как надо

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 14:14
· Личное сообщение · #6

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

где можно посмотреть пример idc для такого дела? а то я анализаторов еще не писал никогда...
а вот если такую штуку написать, да сделать настраиваемой...




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

Создано: 30 марта 2007 14:18
· Личное сообщение · #7

Извиняюсь за глупый вопрос, но все этого когда то не знали А что такое idc?

-----
radio uno in ibisa ...




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

Создано: 30 марта 2007 14:19
· Личное сообщение · #8

Кстати, iDA в виде блоков показывать отказывается в глухую
The graph is too big more than 1000 nodes...



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

Создано: 30 марта 2007 14:29
· Личное сообщение · #9

Icelot скрипт для иды




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 14:30
· Личное сообщение · #10

AlCr0
idc.. ну сгенерь лог в ольке хотябы и пройдись..без иды.. или сам напиши..дасм+логгер и все

-----
Тут не могла быть ваша реклама





Ранг: 240.5 (наставник)
Активность: 0.190
Статус: Участник
Author of ACKiller

Создано: 30 марта 2007 14:55
· Личное сообщение · #11

lord_Phoenix
Я вот про это говорил
AlCr0 пишет:
The graph is too big more than 1000 nodes...




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

Создано: 30 марта 2007 15:12
· Личное сообщение · #12

lord_Phoenix пишет:
сгенерь лог в ольке

хм... лог помоему не намного читаемей будет
или в ольке можно задать условием что в лог не брать?

lord_Phoenix пишет:
и пройдись..

можно и Run Trace до условия ...
но чисто интуитивно предполагаю (прим. здесь - ж@пой чую :s6 что так еще больше работы будет

lord_Phoenix пишет:
или сам напиши..дасм+логгер и все

шутк такой?
идея, конечно, не плохая, и нечто подобное уже приходило мне в голову (брать переходы, проверять что перед ними и решать - сохранять в output или нет) ...
но если смотреть на вещи реально - ниасилить "дасм+логгер", уж звиняйте



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

Создано: 30 марта 2007 15:15
· Личное сообщение · #13

Она не сбивается на вермишели ... она просто в графах отображать отказывается
А сообщение можно не патчить - поставить галку "Don't display this message again"? только толку?




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 15:16
· Личное сообщение · #14

[i]AlCr0 пишет:
идея, конечно, не плохая, и нечто подобное уже приходило мне в голову (брать переходы, проверять что перед ними и решать - сохранять в output или нет) ...
простая jmp вермишель разбирается легко

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 15:22
· Личное сообщение · #15

lord_Phoenix пишет:
простая jmp вермишель разбирается легко

с этого момента, будьте добры, поподробнее




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 15:29
· Личное сообщение · #16

AlCr0
хех.. для подробностей - покажи конкретный пример.. в общем там есть сложности ;)

-----
Тут не могла быть ваша реклама





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 30 марта 2007 15:41
· Личное сообщение · #17

AlCr0

дизасм двигов полным-полно) тебе остатся напить анализатор
так что было бы желание...

-----
[nice coder and reverser]




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

Создано: 30 марта 2007 15:45
· Личное сообщение · #18

Hellspawn посоветуй како-нть, плз.



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

Создано: 30 марта 2007 15:49 · Поправил: AlCr0
· Личное сообщение · #19

lord_Phoenix пишет:
в общем там есть сложности ;)

блин, как чувствовал...
конкретный пример... это АПИ гварданта пятой версии
dll распаковывает часть себя, SAAT структуру, кусок защищенной проги и делает все это "вприпрыжку"
я хочу проанализировать распаковку и сделать распаковщик




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 15:51
· Личное сообщение · #20

давай код :P у меня нету под рукой ничего с апи пятой версии

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 15:57
· Личное сообщение · #21

Вот она...

e75a_30.03.2007_CRACKLAB.rU.tgz - novex32.dll.rar




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 16:05
· Личное сообщение · #22

хм.. глянул экспорты.. хм.. jmp и push/ret.. все.. берешь дасм.. травишь на функу..если джамп(jmp, ну или push/ret), то дасмишь с destination'а(забыл как по русски сказать :D) и все в лог.. получаешь в логе чистый код =)

-----
Тут не могла быть ваша реклама





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 30 марта 2007 16:22
· Личное сообщение · #23

lord_Phoenix пишет:
destination


назначение?

AlCr0 пишет:
посоветуй како-нть, плз.


CADT

-----
[nice coder and reverser]





Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 16:29
· Личное сообщение · #24

Hellspawn пишет:
назначение?

назначение не звучит, хз ) сказал, как сказал
Hellspawn пишет:
CADT

ага, с удобной структурой..дабы строки не парсить..
вообщем в данной вермишели сильно сложного ничего нет ;p

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 16:47
· Личное сообщение · #25

Hellspawn пишет:
CADT

угу, спс. качнул с васма, буду смотреть

lord_Phoenix push/ret - эта фигня не сильно портит, часто не встречается, анализировать легко
там в том то и дело что jmp после каждой инструкции и по всему коду, а то и пачками
иногда они "родные", т.е. по структуре программы, надо как-то научить анализатор их различать
тс "отсеивать зерна от плевел"
спасиба!

ЗЫ не наблюдал, как скачет по телу этой фигни курсор анализатора у иды? с конца в конец...
может все-таки ее научить?

ЗЫЫ все правильно:
destination - это destination, а назначение - это назначение




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 16:57 · Поправил: lord_Phoenix
· Личное сообщение · #26

AlCr0
хм..вот некоторая трабла и есть в определении =(
вроде как вермишель вся из длинных джампов.. сталобыть короткие принадлежат проге.. этот минимум.. начинай писать анализатор =)

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 17:05
· Личное сообщение · #27

lord_Phoenix
а ведь точно! вся вермишель из E9! коротких в вермишели нет
ладно там посмотрим. спс!




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 30 марта 2007 17:20
· Личное сообщение · #28

AlCr0
ждем анализатора ;)

-----
Тут не могла быть ваша реклама




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

Создано: 30 марта 2007 18:00
· Личное сообщение · #29

lord_Phoenix Яволь! Завтра отпишусь что получилось...

ЗЫ Нарыл докучи туторов по написанию скриптов для иды. Что дельное выйдет - перенесу в нее.
В принципе ведь цель пока - получать корректный и читаемый листинг, а не работоспособный код.



Ранг: 352.4 (мудрец), 4thx
Активность: 0.150
Статус: Участник
retired

Создано: 30 марта 2007 20:15 · Поправил: ssx
· Личное сообщение · #30

гуляет по рукам idc скрипт by Dim0n для разгребания jmp-вермишели

[ну и естественно не только он, и кроме него есть инструменты...]


. 1 . 2 . >>
 eXeL@B —› Софт, инструменты —› DISJumping
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати