Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IDA Freeware Plugin #158

Open
joxeankoret opened this issue Feb 6, 2018 · 14 comments
Open

IDA Freeware Plugin #158

joxeankoret opened this issue Feb 6, 2018 · 14 comments

Comments

@joxeankoret
Copy link

I just noticed that the plugin (for Linux, at least) doesn't work in IDA 7.0 Freeware. It seems that the symbol "inf" is not exported in that version. Would it be possible to port the plugin to IDA 7.0 Freeware?

@yegord
Copy link
Owner

yegord commented Feb 6, 2018

Is there something else missing? You could check by LD_PRELOADing an .so exporting inf when running IDA.

@joxeankoret
Copy link
Author

I tried to do so but there are many other symbols missing: callui, get_func_qty, get_func_name... I don't think it would be easy to port any plugin to the IDA Freeware version.

@yegord
Copy link
Owner

yegord commented Feb 7, 2018

I guess, then it is a conscious decision of Hex-Rays, to forbid running (native code) plugins in IDA Freeware.

@joxeankoret
Copy link
Author

Kind of. After diffing with Diaphora libida64.so, I just realized that some symbols have been renamed to zyaXXX. That's all.

@yegord
Copy link
Owner

yegord commented Feb 7, 2018

So, were the needed by the plugin symbols renamed, or just some unrelated symbols were renamed?

@joxeankoret
Copy link
Author

Some of the most common exported for plugins symbols, but not all, were renamed to zyaXXX. As long as one creates a DLL/SO to forward/re-export the names, plugins "should work" unmodified.

@yegord
Copy link
Owner

yegord commented Feb 8, 2018

I guess, one either needs to rename corresponding variables in the IDA SDK and Snowman or, better, make a workaround using #defines in IdaWorkaroundStart.h, and some #undefs and using in IdaWorkaroundEnd.h based on CMake configuration variable. And then rebuild the plugin and see if it works. Any volunteers?

@SakiiR
Copy link

SakiiR commented May 9, 2018

How is it going with this issue ?

@timofurrer
Copy link

Any solution for this?

@fabiolanza
Copy link

Any solution to this?

@BanjoFox
Copy link

BanjoFox commented Dec 4, 2019

Damn... I am getting this same error on Windows with IDA Free. Guess I should have checked here before sending to the mailing list. OOps

@sparr
Copy link

sparr commented Feb 9, 2020

Is it possible to build the plugin on Linux for Linux? Or to even get the SDK without an IDA license? The documentation suggests it can only be built in Windows. I'd love to try tackling this problem, but without the ability to rebuild the plugin I am at an impasse.

@yegord
Copy link
Owner

yegord commented Feb 9, 2020

Is it possible to build the plugin on Linux for Linux?

Totally. If you follow the build instructions, it should just work. Obviously, you do not need MSVC to build it on Linux, more or less any GCC version should work.

Concerning IDA SDK, you have to get it somewhere, yes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants
@sparr @timofurrer @fabiolanza @yegord @joxeankoret @BanjoFox @SakiiR and others