Log in

View Full Version : Possible to use 2 IDA databases together ??


OHPen
June 10th, 2009, 16:20
Hey,

currently i try to debug an application which is continously jumping between the main application and a special dll. For both i have created an ida database with my comments and names, etc.

Now it would be greate if i could use bot database together within a single ida debug session.

Has anybody tried that before or does anybody know whether this is possible ?

Regards,
OHPen

Kayaker
June 10th, 2009, 16:29
Don't know if this works for a debug session, but

Several files in one IDB, 4 methods:

http://www.hexblog.com/2005/10/several_files_in_one_idb.html
http://www.hexblog.com/2005/10/several_files_in_one_idb_part.html
http://www.hexblog.com/2005/10/several_files_in_one_idb_part_1.html
http://www.hexblog.com/2005/10/several_files_in_one_idb_part_2.html

OHPen
June 10th, 2009, 18:14
Thx Kayaker, I will try these methods and tell you whether it works.

Regards,
OHPen

OHPen
June 11th, 2009, 17:37
As far as I tried none of the above mentioned solutions works vor me, at least not when I want to use them together in an ida debug session ;(

I'm really astonished that nobody else needs this feature??? Shouldn't that be some basic functionallity of ida ?

Searching deeper to find a solution, maybe there is some other way to do what I want.

Regards,
OHPen

Maximus
June 11th, 2009, 19:29
Very interesting question.
hmmm....
hmmm....

At first sight, I would say no, thinking how the IDA works with its nodes. There are only two solutions to this, in my opinion:

1) you load the DLL as a binary file in the proper position, and apply the already exported comments/names.
2) you go for the 'real shit' solution:
* quick and dirt, you make a plugin that behaves as a DDE server (ugly, old unsafe and damn efficient) and make it run on the 'slave' IDA with your DLL.
* on your debugging IDA session, you keep a plugin which uses the 'client' DDE features. When your DLL is mapped in memory, your plugin kindly steal all the info from the other IDB via DDE requests to the other IDA (note that you might need to remap addresses)
3) uhm... I could code the above plugin very quickly, but now I have to work&design a bit alot in these days to a tough project, sorry mate...
4) hmmm I never tried to parse an IDB file manually. If it is possible ...but wait: one can just ask IDA to spawn a children IDA, make it load the wished DB, exchange info and then close... hmmm...
5) problem is, such change would be forever save into your own database if you take snapshots, which might not be what you want...

...(2) is quite fast to implement, and does the trick, anyway.

OHPen
June 13th, 2009, 07:48
I hope there are more simple ways of using to ida databases together. Maybe I should try to ask ilfak directly. At least he should know whether there is a more simple possibility than the mentioned ones.

Regards,
OHPen