IDA Pro: ce qu'un SDK ne devrait pas être

Salutations,





Cet article explique comment ne pas le faire lors du développement d'un SDK pour votre produit. Et un exemple, pourrait-on même dire, le plus frappant, sera IDA Pro. Ceux qui au moins une fois ont développé quelque chose pour cela et ont essayé de soutenir, en lisant ces lignes, c'est sûr, maintenant ils ont frissonné et se sont couverts de sueur froide. Ici, j'ai acquis de l'expérience dans le soutien de projets, en commençant par IDA v6.5 et en terminant par la dernière version au moment de la rédaction de cet article - v7.5. En général, ils ont conduit.



Brève description



Le SDK IDA Pro vous permet de développer les types d'applications suivants:



  • Chargeurs de différents formats
  • Modules de processeur
  • Plugins qui étendent les fonctionnalités (modules de processeur, interface, etc.)
  • Scripts IDC (leur propre langage) et scripts Python (utilisent le développement tiers IDAPython, qui fait désormais partie intégrante de l'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



Je voudrais également rappeler un livre inestimable qui m'a beaucoup aidé autrefois, mais qui est maintenant absolument inutile pour un développeur de plugins IDA - IDA Pro Book de Chris Eagle . Tout ce qui y est décrit fait référence à la version 6.x (environ v6.5-v6.8). Presque tout a changé depuis.



Remercier.




All Articles