eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
обновлён 2 декабря!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: Odin (+1 невидимый пользователь)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› Слетели ссылки на переменные в IDA
Посл.ответ Сообщение

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 20:48 New!
Цитата · Личное сообщение · #1

Слетели ссылки на переменные в IDA, вероятно, в результате каких-то моих не правильных действий.
Код теперь имеет вид
Code:
  1. .text:00000AE5                 push    (offset unk_3DFFF+3C816B5h) ; Mode
  2. .text:00000AEA                 push    (offset unk_3DFFF+3C816ADh) ; Filename
  3. .text:00000AEF                 call    _fopen


Ссылки на переменные по клавише x соответственно тоже не ищутся. Как это починить?


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 20:50 · Поправил: reversecode New!
Цитата · Личное сообщение · #2

на оффетах 'O' два раза нажать что бы обратно обычный offset был

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 21:28 New!
Цитата · Личное сообщение · #3

Не помогает, при первом нажатии получается
Code:
  1. .text:00000AE5                 push    (offset unk_3DFFF+3C816B5h) ; Mode
  2. .text:00000AEA                 push    3CBF6ACh        ; Filename
  3. .text:00000AEF                 call    _fopen

При втором обратно.

И оффсеты слетели по всей программе, каких восстановить все обратно?

Еще, unk_3DFFF указывает на конец сегмента rdata.


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 21:30 New!
Цитата · Личное сообщение · #4

logo2004 пишет:
При втором обратно.


idb можете дать? попробую глянуть что не так

logo2004 пишет:
И оффсеты слетели по всей программе, каких восстановить все обратно?


значи вспоминайте что вы там такое делали ужасное

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 21:31 New!
Цитата · Личное сообщение · #5

До этого делал только Rebase program, больше вроде ничего глобального. Файл - dll'ка.


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 21:36 · Поправил: reversecode New!
Цитата · Личное сообщение · #6

ну заребейзте обратно, может поможет

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 21:43 New!
Цитата · Личное сообщение · #7

Пробовал переребайзить, не помогает. Кроме того до этого ребейз делал много раз, такого не было.

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 21:49 New!
Цитата · Личное сообщение · #8

http://yadi.sk/d/QclP0gLH6mmR8
вот idb, например по адресу AEA можно увидеть оффсеты такие


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 21:50 · Поправил: reversecode New!
Цитата · Личное сообщение · #9

оригинальную dll дайте тоже
ps
rghost спасет отца демократии

databases is corrupt
под какой идой вы ее открываете?
и запакуйте архиватором
яндекс сакс

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 22:03 New!
Цитата · Личное сообщение · #10

http://yadi.sk/d/Y4pt01sy6mnqu
IDA version 6.1.0110409 (32-bit)
с оригинальной dll все нормально вроде. Разве что какие-то функции _chkesp мешают, но это отдельная тема.


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 22:14 · Поправил: reversecode New!
Цитата · Личное сообщение · #11

logo2004 пишет:
IDA version 6.1.0110409 (32-bit)

утекшая 6.1 от есета
6.1.110315 она не открывает, database is corrupt и писец)

Ранг: 510.2 (!)
Статус: Модератор

Создано: 13 июля 2013 22:34 New!
Цитата · Личное сообщение · #12

reversecode пишет:
database is corrupt и писец)

норм открылась (возможно дело в одном из плагинов)

лажа есть -

push (offset unk_3DFFF+3C816B5h) ; Mode
push (offset unk_3DFFF+3C816ADh) ; Filename
call _fopen

как чинить хз, у меня такое тоже случалось, связано скорей всего да- с ребейзом (или вернее багом ребейза) в иде....
я делал тупо - закрывал базу без записи или откачивался на бекап БД


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 22:39 New!
Цитата · Личное сообщение · #13

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

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 22:47 New!
Цитата · Личное сообщение · #14

плагины установлены, декомпилятор Hex-Rays и что-то еще, в наборе было.

Ранг: 3.1 (гость)
Статус: Участник

Создано: 13 июля 2013 22:49 New!
Цитата · Личное сообщение · #15

Плохо( заметил не сразу, сохранил. Куча работы по реверсу проделана.

Ранг: 510.2 (!)
Статус: Модератор

Создано: 13 июля 2013 22:54 · Поправил: sendersu New!
Цитата · Личное сообщение · #16

ет типо для *compatability* плагинчик такой маленький.....
................
Loading processor module D:\Prg\Ida\IDA61\procs\pc.w32 for metapc...OK
D:\Prg\Ida\IDA61\plugins\dbfix.plw: not IDA DLL file
Loading type libraries...
Autoanalysis subsystem has been initialized.
Database for file 'intexplorer.dll' has been loaded.
Compiling file 'D:\Prg\Ida\IDA61\idc\ida.idc'...
Executing function 'main'...
<Default>: incompatible saved desktop has been ignored
collabREate: collabREate has been loaded
D:\Prg\Ida\IDA61\plugins\dbfix.plw: not IDA DLL file
Hex-Rays Decompiler plugin has been loaded (v1.5.0.110408)
License: 57-3B73-7AE4-E2 ESET spol. s r.o. (36 users)
The hotkeys are F5: decompile, Ctrl-F5: decompile all.
Please check the Edit/Plugins menu for more informaton.
Hex-rays version 1.5.0.110408 has been detected, Hex-Rays helper ready to use
Hex-rays version 1.5.0.110408 has been detected, Hex-Rays NULL converter ready to use
--------------------------------------------------------------------------------
IDAStealth v1.3.3 release build (BETA), Copyright (C) 2008-2011 Jan Newger
--------------------------------------------------------------------------------
Can not set debug privilege: Not all privileges or groups referenced are assigned to the caller.
--------------------------------------------------------------------------------------
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)]
IDAPython v1.5.2 final (serial 3) (c) The IDAPython Team <idapython@googlegroups.com>
--------------------------------------------------------------------------------------
.......


по теме - абсолютно все офсеты сошли с ума
надо видимо скрипт писать на репарсанье

Upd: раз много сделано значит все, надо решать задачу, а то еще не раз и не у одного ета байда выскочит...


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 13 июля 2013 23:12 · Поправил: reversecode New!
Цитата · Личное сообщение · #17

попросилу есета обновления и у меня idb открылась

для начала там text не в ту сторону торчит,

и да, после ребейса полетела база idb, сегменты ребейзятся, а вот релоки по всему коду на дата сегмент остались преждними...
это можно видеть в двух разных открытых ida, в старой idb и новой

лечится ли это хз, наверное знает только ильфак)
возможно при ребейзе не делались фиксапы и оно утянуло не туда,
и теперь обратно хз как перетянуть
а может и баг иды

остается вариант только дампить idc и пробовать накласть на новый dll анализ

| Сообщение посчитали полезным: logo2004


Ранг: 3.1 (гость)
Статус: Участник

Создано: 14 июля 2013 12:46 New!
Цитата · Личное сообщение · #18

> возможно при ребейзе не делались фиксапы и оно утянуло не туда
да, снимал этот флажок было, не знаю, зачем он.

> остается вариант только дампить idc и пробовать накласть на новый dll анализ
как это сделать? Сделал File -> Produce file -> dump database to IDC file, а что с ним дальше делать?
Написано
// - reload executable into IDA with using switch -c
// - use File, Load IDC file and load this file.
Делаю

"D:\Program Files\IDA\idaq.exe" -c intexplorer.dll

Затем File -> Script file (File -> Load IDC file как написано в меню нет, но Script file открывает файлы с расширением .idc ) Ругается.

...
3C9F670: can't rename byte as 'sxps' because this byte can't have a name (it is a tail byte).
3CA0670: can't rename byte as 'browser' because this byte can't have a name (it is a tail byte).
Syntax error near: new
Void type is forbidden here


Может быть еще можно заребейзить обратно без флажка "Fix up the program" до исходного состояния?


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 14 июля 2013 12:57 New!
Цитата · Личное сообщение · #19

все правильно script file
только накладывать на новую базу открытую заново, а не на старую релоадить

Ранг: 3.1 (гость)
Статус: Участник

Создано: 14 июля 2013 13:03 New!
Цитата · Личное сообщение · #20

да, intexplorer.idb предварительно переименовал, все равно.


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 14 июля 2013 13:10 · Поправил: reversecode New!
Цитата · Личное сообщение · #21

вам там самое главное это структуры набитые перенести и имена функций,
остальное по быстренькому и руками добьете

поэтому тонкости неналожения idc можете упустить
можете для большей уверенности в ручную порезать idc, оставив там только переименования функций, и импорт структур

Ранг: 3.1 (гость)
Статус: Участник

Создано: 14 июля 2013 13:24 New!
Цитата · Личное сообщение · #22

> Может быть еще можно заребейзить обратно без флажка "Fix up the program" до исходного состояния?
А с этим как? Никак?


Ранг: 1014.5 (!!!!)
Статус: Участник

Создано: 14 июля 2013 13:59 New!
Цитата · Личное сообщение · #23

ну поиграйтесь, у меня не получилось
как вариант нужно написать idc скрипт, который дампит весь бинарный код с оригинальной dll в вашу базу через PatchByte,

теоретически это все должно делаться через 'reload input file' и все бы восстановилось,
но нифига такого не происходит

Ранг: 3.1 (гость)
Статус: Участник

Создано: 21 июля 2013 23:02 New!
Цитата · Личное сообщение · #24

> ну поиграйтесь, у меня не получилось
пробовал, тоже не вышло.
 eXeL@B —› Вопросы новичков —› Слетели ссылки на переменные в IDA

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS