Installing EDB Debugger on Ubuntu Linux

Evan's debugger, edb or EDB-debugger is a great OllyDbg-like tool to play with executables, disassemble them, write exploits, etc. In this article I will show how to install it on Ubuntu Linux.

Point is it needs some pre-requisites, and the install guide for it doesn't tell how to install them making the process not-so-straightforward. Here we fix it.

Disclaimer On this web site you might read about or get access to various kinds of software and technology, including but not limited to libraries, operating systems, software for communications, mobile phones and tablets, Android software and Linux, even cars and motorcycles, security and penetration testing software, software used in security research and forensics, some samples of software which can be used (elsewhere) for malicious or illegal purposes. You will read about or be provided with the ways to change it, to operate it and to use it. You might find advice and recommendations, which are only an opinion, and not a legal advice or commercial recommendation..
Bear in mind, please, that everything you do, you do solely at your own risk and responsibility. In no way the author of this web site, information, graphics and other materials presented here or related to it can be made liable or anyhow else responsible for your own actions as well as actions of any third party and their direct or indirect results or consequences with or without the use of this information as well as the software, technology and systems mentioned and/or presented here, no matter if developed by the author or by any third party.
In no way it is guaranteed that you will meet any suitability for any particular purpose, safety, security, legality or even simply functioning of the software and systems described here. You have to make sure each time yourself, whether what you do, is really what you intend to do, and that you are ready to be yourself responsible for. All the recommendations and experiences described here are the opinions of corresponding authors and are to be taken with care and own full responsibility.
The software provided on or through this web site, linked to from this web site or anyhow else related to this web site is provided by the corresponding authors on their own terms. We provide all the software here as is without any guarantees to you. You are responsible for deciding whether it is suitable for you or not. You are also responsible for all direct or indirect consequences of using this software.
Other web sites linked to from the current one are out of the author's control, we can not guarantee anything about their content, its quality or even legality. We can not be liable for any use of the linked to web sites or of the information presented there.
We reasonably try to keep this website running smoothly and to deliver information to the best of our knowledge corresponding to the state of the art at the times when the information is composed, usually presented together with the information, and out of good intents. We can not however guarantee and can not be liable for this website being temporarily or permanently unavailable, presenting unreliable information or software, or any other similar or not malfunctioning or functioning not up to your expectations as well as any consequences which might result from this site's operation.

The edb debugger is a great simple tool helping you to debug binaries and build exploits.

Most probably, you know what it is for if you are reading this, otherwise look here to learn more about it.

Installing edb

First install the packages needed. It is the easiest and fastest way to get your libraries in tact.

On 32bit Ubuntu this worked for me:

sudo apt-get install git build-essential pkg-config
sudo apt-get install cmake
sudo apt-get install qt5-qmake qtcore5-dev libqt5svg5-dev libqt5xmlpatterns5-dev
sudo apt-get install libboost-dev

On 64bit Ubuntu:

sudo apt-get install git build-essential 
sudo apt-get install pkg-config cmake  
sudo apt-get install qttools5-dev-tools qt5-qmake qt5-default 
sudo apt-get install libboost-dev

Next, get capstone and build it:


git  clone https://github.com/aquynh/capstone.git
# Use my fork, if the repository moved. # But better find one which is updated! # git clone https://github.com/qutorial/capstone.git cd capstone ./make.sh sudo ./make.sh install

Finally clone the edb-debugger:


git clone --recursive https://github.com/eteran/edb-debugger.git
# Again, here is my outdate version, which I installed.
# The git modules problem is fixed here.
# But better use the updated one.
# git clone --recursive https://github.com/qutorial/edb-debugger
# Check also the forks of submodules in my github account: github.com/qutorial/

and build it

cd edb-debugger
mkdir build
cd build
cmake ..
make
sudo make install

The 'cmake ..' command above might fail for a number of reasons.

The most popular reason is an absent library edb depends on. See the instructions above to install them on Ubuntu.

Another reason to fail might be connected to submodules. Check the .gitmodules file, there were two submodules at the time I wrote this manual. Make sure that both of the submodules are checked out right. In my case both submodules failed to check out.

One reason for this was a git:// url specified for one of them and an HTTP proxy on my way. I submitted a pull request already suggesting to fix it, commit link. You can modify this way the .gitmodules file, then call 'git submodule sync' and 'git submodule update --remote' if you have the same problem.

Another submodule also failed to check out. I gave it a gentle kick with 'git submodule update --remote' and then the cmake command succeeded.

You should be good to go now!

edb

Checkout PEDA if you want something console-based and maybe more powerful.

Edit 1.

This article has been updated on request.

Some Qt package names have apparently changed in Ubuntu.



Thanks for reading my blog!
Created: 20/03/2017
Last edited on: 02/11/2017
Your comment: