我非常喜欢IDA,但我正在Solaris上开展这个项目。我确实有一台Linux机器,如果与IDA在同一个联盟中没有任何东西,那么我会说服管理层为它购买许可证。
除此之外,我正在寻找替代建议。 IDA中的其他一些功能非常方便,但目前我需要的主要功能是基于源代码的呼叫流图生成器不。如果它需要构建步骤的额外输出,那很好,但我需要查看的一些库没有源代码。
到目前为止,看起来我最好的选择是Valgrind的Callgrind,lida和gprof。欢迎任何进一步的建议。
re:gprof,由Windriver提供给我们的GNU编译器集缺少一些通常由GNU编译器提供的库,以提供(以及其他)用于分析的工具。对于更普遍的问题,它是一个很好的解决方案,但是现在我选择先尝试其他解决方案。
编辑一些Rational工具(Purify,Quantify等)也可能适用于此。我和IDA在同一条船上,但是我觉得有人谷歌搜索可能会觉得这个建议很有帮助。
edit2 Valgrind尚未移植到solaris / sparc; p
答案 0 :(得分:3)
看看ERESI Project。它是一个逆向工程框架,它有一个名为ELFsh的工具,具有从机器代码生成CFG的功能。它还没有稳定/最终,但它值得一试。
如果您想尝试一下:
elfsh32
。你将输入一个shell。load /bin/bash
analyse
graph
你会得到一个.dot格式的图形和一个渲染的PNG(这个太大而不能在这里发布)。
答案 1 :(得分:2)
答案 2 :(得分:1)
答案非常晚,但仍然有用..在Solaris上,您可以使用collect
。
collect your_program your_args...
test.1.er
er_print -calltree test.1.er
analyser