Interactive Disassembler

Interactive Disassembler
Original author(s)Ilfak Guilfanov
Developer(s)Hex-Rays
Initial releaseMay 21, 1991; 33 years ago (1991-05-21)[1]
Stable release
8.4 SP2[2] / May 27, 2024; 5 months ago (2024-05-27)
Written inC++[3]
Operating systemMicrosoft Windows, Mac OS X, and Linux
Available inEnglish, Russian
TypeDisassembler, Decompiler
LicenseProprietary
Websitehex-rays.com/ida-pro/

The Interactive Disassembler (IDA) is a disassembler for computer software which generates assembly language source code from machine-executable code. It supports a variety of executable formats for different processors and operating systems. It can also be used as a debugger for Windows PE, Mac OS X Mach-O, and Linux ELF executables. A decompiler plug-in, which generates a high level, C source code-like representation of the analysed program, is available at extra cost.[4][5]

IDA is used widely in software reverse engineering, including for malware analysis[6][7] and software vulnerability research.[8] IDA has been referred to as the "de-facto industry standard disassembler".[9][10][11][12]

  1. ^ Czokow, Geoffrey (2021-05-20). "IDA: celebrating 30 years of binary analysis innovation". Hex-Rays. Retrieved 2023-03-19.
  2. ^ "IDA 8.4.240527 (8.4sp2)". Archived from the original on June 2, 2024. Retrieved June 28, 2024.
  3. ^ "Hex-rays Home". Archived from the original on 2024-05-26. Retrieved 2008-03-31.
  4. ^ Eagle, Chris (2011). "Chapter 23: Real-World IDA Plug-ins". The IDA Pro Book : the Unoffical Guide to the World's Most Popular Disassembler (2nd ed.). San Francisco: No Starch Press. pp. 500–502. ISBN 978-1-59327-395-8. OCLC 830164382.
  5. ^ "Hex-Rays Decompiler". hex-rays.com. Retrieved 2023-03-18.
  6. ^ Staff, S. C. (2017-09-11). "Hex-Rays IDA Pro". SC Media. Retrieved 2023-03-13.
  7. ^ Sikorski, Michael (2012). "Chapter 5. IDA Pro". Practical Malware Analysis : a Hands-On Guide to Dissecting Malicious Software. Andrew Honig. San Francisco: No Starch Press. ISBN 978-1-59327-430-6. OCLC 830164262.
  8. ^ Shoshitaishvili, Yan; Wang, Ruoyu; Salls, Christopher; Stephens, Nick; Polino, Mario; Dutcher, Andrew; Grosen, John; Feng, Siji; Hauser, Christophe; Kruegel, Christopher; Vigna, Giovanni (2016-05-22). "SOK: (State of) the Art of War: Offensive Techniques in Binary Analysis". 2016 IEEE Symposium on Security and Privacy (SP). pp. 138–157. doi:10.1109/SP.2016.17. hdl:11311/1161277. ISBN 978-1-5090-0824-7. S2CID 3337994. Archived from the original on 2022-12-08. Retrieved 2023-03-17.
  9. ^ Ben Khadra, M. Ammar; Stoffel, Dominik; Kunz, Wolfgang (2016-10-01). "Speculative disassembly of binary code". Proceedings of the International Conference on Compilers, Architectures and Synthesis for Embedded Systems. CASES '16. New York, NY, USA: Association for Computing Machinery. pp. 1–10. doi:10.1145/2968455.2968505. ISBN 978-1-4503-4482-1. S2CID 16206393. It outperforms IDA Pro, the de-facto industry standard disassembler, in terms of disassembly correctness.
  10. ^ Di Federico, Alessandro; Payer, Mathias; Agosta, Giovanni (2017-02-05). "Rev.ng: A unified binary analysis framework to recover CFGS and function boundaries". Proceedings of the 26th International Conference on Compiler Construction. CC 2017. New York, NY, USA: Association for Computing Machinery. pp. 131–141. doi:10.1145/3033019.3033028. ISBN 978-1-4503-5233-8. S2CID 15830760. We evaluate our prototype implementation against the de-facto industry standard for static binary analysis, IDA Pro,
  11. ^ Garcia Prado, Carlos; Erickson, Jon (April 10, 2018). "Solving Ad-hoc Problems with Hex-Rays API". FireEye Threat Research Blog. Archived from the original on 2022-06-02. Retrieved March 12, 2023. IDA Pro is the de facto standard when it comes to binary reverse engineering.
  12. ^ Andriesse, Dennis (2019). "Appendix C: List of Binary Analysis Tools". Practical binary analysis : build your own Linux tools for binary instrumentation, analysis, and disassembly. San Francisco, CA. ISBN 978-1-59327-913-4. OCLC 1050453850. This [IDA Pro] is the de facto industry-standard recursive disassembler.{{cite book}}: CS1 maint: location missing publisher (link)