Reverse engineering is a very important task in information security. It is highly performed in digital forensics, binary exploitation, vulnerability analysis, malware analysis and much more. In this article, we are going to explore an amazing tool called 'IDA Pro'.
- The Linux installer is a self-unpacking binary. You may need to set file permissions to executable before running it: chmod +x./lmadmin-x64lsb-111600.bin Both the installer and lmadmin itself require LSB support installed.
- Once you have the zip file downloaded, unzip it to a directory of your choosing. Inside the decompressed folder you will see a plugins directory, and contained within it is a file named python.plw. You need to copy python.plw into IDA Pro's plugins directory; on a default installation it would be located in C:Program FilesMDAplugins.
- Run IDA Pro disassembler in Docker containers for automating, scaling and distributing the use of IDAPython scripts. intezer/docker-ida.
Ida pro linux installation Academic program mapping L2phx 3.4 1.83 Mcdonald and giles rar download Airowizard compatible card list Mortal kombat deception gamecube cheat codes Auto queue software Download lagu indonesia oktober 2012 Unlockbase keygen generator Brooks buford suspicious package. In this article, we are going to explore an amazing tool called 'IDA Pro'. According to its official website, 'IDA is a Windows, Linux or Mac OS X hosted multi-processor disassembler and debugger that offers so many features it is hard to describe them all' There are two versions of IDA: Commercial version ' IDA Pro'.
Installation
According to its official website,
'_IDA is a Windows,Linux or Mac OS X hosted multi-processor disassembler and debugger that offers so many features it is hard to describe them all' _
There are two versions of IDA:
Install Ida Pro Linux Ubuntu
- Commercial version ' IDA Pro'
- A free version of it called ' IDA Free'
To install IDA Pro on Windows you just simply need to go to: https://www.hex-rays.com/products/ida/support/download.shtml
After installing it you can start it from its desktop shortcut
Once you start it, you will have the choice to work on a new project and load an old disassembly
As a demonstration, we are going to disassemble a simple malicious PE file from Paloalto Networks. You can download it from here: https://docs.paloaltonetworks.com/wildfire/7-1/wildfire-admin/submit-files-for-wildfire-analysis/test-a-sample-malware-file
Don't forget to test the file on a sandbox or a VM
Portable Executable ( PE ) files are file formats for executables, DDLs, and object codes used in 32-bit and 64-bit versions of Windows. They contain many useful pieces of information for malware analysts, including imports, exports, time-date stamps, subsystems, sections, and resources. The following is the basic structure of a PE file:
Source: pe_format.png
Some of the components of a PE file are as follows:
DOS Header : This starts with the first 64 bytes of every PE file, so DOS can validate the executable and can run it in the DOS stub mode.
PE Header : This contains information, including the location and size of the code.
PE Sections They contain the main contents of the file.
Load the PE file:
As you can see from the previous screenshot, IDA Pro is able to detect the file type automatically.
Press 'OK' and will be guided to the main interface:
If you load a file, IDA will create a database 'idb'. The database contains:
- Name.id0
- name.id1
- name.nam
- Name.til
The main interface contains many views and windows:
This bar called 'the navigation band' illustrates the memory space used by the binary
There is also a graph view to display functions as graphs and sub-graphs
Functions Window:
It lists all the recognizable functions by IDA pro
Imports
It shows the imported libraries by the loaded binary
The following is the text view where data is represented as disassembly
You can find a lot of other available views: view -> Open Subviews
To facilitate the navigation you can simply use the IDA shortcuts including:
Go to a new window: Alt+Enter Text: Alt+T Names: Shift+F4 Functions: Shift+F3
You can find the full list here: Datarescue Interactive Disassembler (IDA) Pro Quick Reference Sheet
Based on its great capabilities IDA Pro is very helpful when it comes to Malware Analysis since it gives you the ability to extract many pieces of information including Strings (F21), imports, exports, graph flows and so on:
If you want to explore another great tool, I highly recommend you to take a look at my article:' How to Perform Static Malware Analysis with Radare2'
Based on its great capabilities IDA Pro is very helpful when it comes to Malware Analysis since it gives you the ability to extract many pieces of information including Strings (F21), imports, exports, graph flows and so on:
If you want to explore another great tool, I highly recommend you to take a look at my article:' How to Perform Static Malware Analysis with Radare2'
In this article, we did a high-level overview of IDA PRO
Since FIRST is an IDA Python plugin it only works with a license version of Hex Ray's IDA Pro. Due to the integrations with IDA Pro there is a minimum version number. The FIRST plugin only works with IDA 6.9 (service pack 1), relased May 2016, and higher.
Important
It is easier to install Python from Python.org with the latest 2.7 build instead of using the outdated version of Python bundled in with IDA Pro.
Attention
There are many ways to install FIRST, the quickest way is to use pip and run the setup script. The setup's location differs depending on the OS being used and other possible configurations. The defaults for Mac and Windows are below.
Mac
Windows
To use FIRST, you will need to download the plugin and save it to the Hex Rays IDA Pro plugin folder. Directions for this differ depending on the operating system and a basic guide can be found below.
FIRST is available on PyPI, so to use it you can use pip:
Alternatively, if you don't have setuptools installed, download it from PyPi and run
To use the bleeding-edge version of FIRST's IDA Pro Integration, you can get the source fromGitHub and install it as above:
Once first-plugin-ida is installed with pip, the post installation script needs to be executed. The script simply copies over the plugin and its files to the IDA Pro installation of your choosing. Depending on your system setup, configuration, and user privileges you may need to be admin or root to successfully use the script.
OS | Default Path |
---|---|
Mac | /usr/local/bin/first-plugin-ida |
Windows | C:Python27Scriptsfirst-plugin-ida |
The script will ask you for the full path to the IDA Pro installation. Providing it will copy the plugin to IDA Pro and its dependencies. The default location forIDA Pro installations are outline below.
OS | Default Path |
---|---|
Mac | Applications/IDA Pro 6.9/idaq.app/Contents/MacOS/plugins |
Windows | C:Program Files (x86)IDA 6.9plugins |
Installing Ida Pro Linux Bootable
Once the script completes without any errors you will be able to use FIRST in IDA Pro.
Manual Installation¶
If you do not wish to use pip or the post installation script then FIRST can be installed manually. To install the plugin you will need to get the plugin's source from GitHub. The source for the plugin includes every file in the FIRST-plugin-ida/first_plugin_ida folder except FIRST-plugin-ida/first_plugin_ida/__init__.py file. All other files need to be copied over to IDA Pro's plugins directory. Depending on the OS IDA is running on you may need to copy over other dependencies to IDA Pro's folders.
Requirements¶
Additionally, FIRST requires one third party module to work and an optional module if Kerberos Authentication is used
- [Required] Requests (https://pypi.python.org/pypi/requests)
- [Optional] Requests-kerberos (https://pypi.python.org/pypi/requests-kerberos)
Windows¶
Once you have a copy of the plug-in, installing the plug-in is as simple as copying the Python file into the plugins folder. For IDA 6.9, the default installation path can be found at:
Default IDA Pro Path | C:Program Files (x86)IDA 6.9plugins |
---|---|
Dependency Instructions | pip install requests |
Mac OS X¶
Installing on Mac OS X requires a little more work, once you've installed IDA Pro, copy the FIRST plugin to the /Contents/MacOS/plugins/ folder and the required dependencies to /Contents/MacOS/python/
Default IDA Pro Path | /Applications/IDA Pro 6.9/idaq.app/Contents/MacOS/plugins/ |
---|---|
Dependency Instructions | pip install requests cp /usr/local/lib/python2.7/site-packages/requests* /Applications/IDAPro6.9/idaq.app/Contents/MacOS/python |
Linux¶
During the setup, IDA asks whether to install with the bundled Python interpreter or use the local Python interpreter from the local system. Bundled Python is nice, everything just works by default. However the downside is that you can't really add and upgrade Python libraries, and the FIRST plugin requires the requests plugin which is not by default in the bundle.
If you installed with bundled Python, you can switch to use the local Python simply by renaming libpython2.7.so.1.0
and python/lib/python27.zip
. For instance:
Ida Pro Linux Leak
You can revert back to bundle Python by reverting the renames.
Unfortunately the downside of using local Python is that if you are running under x86_64, IDA being a 32-bit binary, it won't work out of the box. Fortunately, under recent Debian (e.g. stretch) and Ubuntu, you can install libs from other architectures. For instance, what worked for us:
Tip: if your distro is different or too old, try a chroot (e.g. debootstrap & schroot), works pretty well.
Ida Pro Download
Copy the FIRST plugin (first.py
) to your plugins directory (~/.idapro/plugins
) and start IDA (32 or 64), it should all work!