IDA Pro:不应该使用什么SDK

问候,





本文将介绍在为您的产品开发SDK时如何不这样做。一个甚至可以说最引人注目的例子就是IDA Pro。那些至少为它开发了一些东西并试图支持的人,在确定阅读这些台词的同时,现在他们颤抖了,浑身是冷汗。在这里,我收集了支持项目的经验,从IDA v6.5开始,到撰写本文时的最新版本-v7.5为止。一般来说,他们开车。



简短的介绍



IDA Pro SDK允许您开发以下类型的应用程序:



  • 各种格式的装载机
  • 处理器模块
  • 扩展功能的插件(处理器模块,接口等)
  • IDC脚本(使用自己的语言)和Python脚本(使用第三方开发IDAPython,这已成为IDA的组成部分)


Hex-Rays, SDK — 10000 USD. — , Support-, . , : , , ; , , . , (), .





, - IDA, SDK, , , , . :



1) , , , - doxygen- API, , , , , .., .



IDA API , — . , , IDA , .



2) callback-, , , ( NULL) — . — . , .. ( — -), , " ". , x64dbg/ollyDbg, — idaq.exe/ida.exe, , , , 0x00000000.



, , 200MB dmp-, IDA… .



3) IDA Pro — . , — , , .. :





legacy-, . . , , , / .



, : .. SDK, , , , , , .



Hex-Rays? , ! , , MS-DOS (, , - ). , , . , IDA , , (flat), MS-DOS "" ! IDA . , flat, ( ).



SDK . ( 6.x 7.x) - : , , API, , . .



- , , , . ! , : IDA 7.0 SDK: Porting from IDA 4.9-6.x API to IDA 7.0 API, . , , .. , , , , , . , C/C++ , - 5-6 SDK.



, , , — .





- - Motorola 68000 IDA. SDK (, , IDA Pro ), , . - — PS3, , , SDK.



, SDK , , , :





cpp-, #include? . , PS3, - — Sega Mega Drive.



: , , . , , , , ...





IDA, m68k, ( " IDA Pro. ").



, ! , SDK… debugger_t, , , , IDA. .



SDK… x64, x86! Gens, , x64, . , x64, SDK, , , .





SDK IDA Pro ; , — , , .



/ - SDK, , — , ! , IDAPython. , , , , , .



Github , IDA v7.x. , ? , , , API .



IDA Pro Book



我还想回想起曾经对我有很大帮助的一本无价的书,但是对于IDA插件的开发人员来说,这本书现在已经毫无用处了,克里斯·伊格尔(Chris Eagle)编写了IDA Pro Book其中描述的所有内容均指6.x版(约v6.5-v6.8)。从那时起,几乎一切都发生了变化。



谢谢。




All Articles