吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7033|回复: 29
收起左侧

[Debuggers] Linux下的ollydbg - edb新版1.3.0编译

  [复制链接]
Marriner 发表于 2021-1-22 17:59
本帖最后由 Marriner 于 2021-1-22 18:07 编辑

Linux下debug是件挺麻烦的事,好在有这个工具,操作类似OllyDbg,做些基础的debug还是挺好用的。

1. 准备工作,安装好需要用到的工具
    以下为需要的工具列表(请注意版本,版本选得不好的话,可能后面会备受折磨,此处省略若干字......)
    boost   =>  1_75_0
    gcc => 5.3
    cmake => 3.12.1
    capstone => 4.0.1
    graphviz => 2.40.1
    Qt => 5.6.3

2.  设置下环境变量 (可以写入文件如edb.setup.5.3.csh,安装edb前,source edb.setup.5.3.csh
setenv EDB_ROOT /PATH/edb/RHEL6
setenv BOOSTDIR $EDB_ROOT/boost_1_75_0
setenv CPLUS_INCLUDE_PATH $BOOSTDIR/include/boost
setenv Boost_INCLUDE_DIR $BOOSTDIR/include/boost

setenv CMAKE_HOME $EDB_ROOT/cmake-3.12.1-Linux-x86_64
set path = ($CMAKE_HOME/bin $path)

setenv QMAKE_HOME $EDB_ROOT/Qt5.6.3/5.6.3
set path = ($QMAKE_HOME/gcc_64/bin $path)
################################################################
# settings below  will make find capstone and libgvc
################################################################

setenv PKG_CONFIG_PATH $EDB_ROOT/capstone-4.0.1/lib/pkgconfig:/graphviz-2.40.1/lib/pkgconfig

setenv GCC_HOME $EDB_ROOT/gcc-5.3.0-linux_x86_64
set path = ($GCC_HOME/bin $path)

setenv LD_LIBRARY_PATH $EDB_ROOT/capstone-4.0.1/lib64:$GCC_HOME/lib64:$GCC_HOME/lib:$BOOSTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

setenv CAPSTONE_INCLUDE_DIRS $EDB_ROOT/capstone-4.0.1/include
setenv CAPSTONE_LIBRARY_DIRS $EDB_ROOT/capstone-4.0.1/lib64
setenv GRAPHVIZ_INCLUDE_DIRS $EDB_ROOT/graphviz-2.40.1/include
setenv GRAPHVIZ_LIBRARY_DIRS $EDB_ROOT/graphviz-2.40.1/lib

3. 安装edb
(a) 到下面网站下载最新版edb源文件 edb-debugger-1.3.0.tgz
      https://github.com/eteran/edb-debugger
(b)  解压 tar zxvf edb-debugger-1.3.0.tgz
(c)  cd edb-debugger/include
      ln -s $EDB_ROOT/boost_1_75_0/include/boost .
      ln -s $EDB_ROOT/capstone-4.0.1/include/capstone .
      ln -s $EDB_ROOT/graphviz-2.40.1/include/graphviz .
(d) 修改两个文件
     (i)在文件src/arch/x86-generic/ArchProcessor.cpp中加入下面一行
              #define __X32_SYSCALL_BIT 0x40000000

     (ii)cd edb-debugger/include, 因为编译时报下面的错,编辑文件Value.h注释掉第82行  /* p += sprintf(p, "%016" PRIx64, *it); */
                  include/Value.h:82:27: error: expected ')' before 'PRIx64'
                            p += sprintf(p, "%016" PRIx64, *it);
(e) cmake -DBOOST_ROOT:PATH=$EDB_ROOT/boost_1_75_0
     make

好了,大功告成。

EDB.JPG
      

免费评分

参与人数 10吾爱币 +8 热心值 +8 收起 理由
JackMai222 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
ICEY + 1 + 1 哈哈哈这个之前玩ctf时候一直在用呢。比gdb好用多了!
evill + 1 + 1 鼓励转贴优秀软件安全工具和文档!
北极狼Clifton + 1 用心讨论,共获提升!
chenjingyes + 1 + 1 热心回复!
plasd + 1 + 1 谢谢@Thanks!
MX1996 + 1 谢谢@Thanks!
cpj1203 + 1 + 1 谢谢@Thanks!
fnp902003 + 1 linux装软件是个大工程.
红烧排骨 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Marriner 发表于 2021-2-24 09:40
tokyohuang123 发表于 2021-2-24 09:02
好吧。我理解错了 因为我看到变量设置edb的path路径 你这边写着rhel6 我以为只能用redhat6版本 然后装了r ...

选RHEL6是因为我们的工作环境RHEL6是主流,在RHEL5、RHEL7下编译应该也是可以的。Linux下编译是比较麻烦的,所以选好各个包的版本就可以少走弯路。学习的话还是建议自己编译试试看,有过成功的经验,下次再有新版本,就可以完全自己动手了。
tokyohuang123 发表于 2021-2-24 09:02
Marriner 发表于 2021-2-23 18:08
能具体说下什么下不到吗?另外,相关包是需要自己编译的,不是下载RPM。

好吧。我理解错了 因为我看到变量设置edb的path路径 你这边写着rhel6 我以为只能用redhat6版本 然后装了redhat6.9 切了centos6源头 结果 你上面的版本要求一个没达到 你帖子要求1.7 yum search只能到1.4
rbgaoshou 发表于 2021-1-22 23:02
mormas 发表于 2021-1-23 08:41
52破解人可以多研究下Linux下类似ollydbg 的应用,多培养Linux人才
lifz888 发表于 2021-1-23 09:19
非常好的学习资料,支持分享
cpj1203 发表于 2021-1-23 11:52
感覺linux離我很遙遠
xie83544109 发表于 2021-1-23 13:44

学习了,多谢楼主分享
snsmqing 发表于 2021-1-23 16:25
有字符界面的吗?Linux一般都是ssh过去
plasd 发表于 2021-1-23 21:26
光是设置环境变量就要搞很久。
chenjingyes 发表于 2021-1-23 21:36
x64的系统应用也能调试吗》》??
skyyihong 发表于 2021-1-23 21:39
多谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-22 19:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表