Ubuntu 20.04上安装Datalog Disassembly工具的过程

这篇博客只是简单记录和吐槽一下。Datalog Disassembly发表于USENIX Security 2020。GitHub repo是:GitHub - GrammaTech/ddisasm: A fast and accurate disassembler

看到其repo上说

Pre-built packages are available to install ddisasm on Windows or Ubuntu.

See the GTIRB readme for details.

所以想试一下怎么通过安装这个GTIRB来安装Datalog Disassembly:GitHub - GrammaTech/gtirb: Intermediate Representation for Binary analysis and transformation

按照上面这个链接的介绍,要在Ubuntu 20.04安装,实际上很简单:

wget -O - https://download.grammatech.com/gtirb/files/apt-repo/conf/apt.gpg.key | apt-key add -
echo "deb https://download.grammatech.com/gtirb/files/apt-repo focal stable"| sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install libgtirb gtirb-pprinter ddisasm

但当我运行了第一步,就会报错:

正在解析主机 download.grammatech.com (download.grammatech.com)... E: This command can only be used by root.
52.55.10.209
正在连接 download.grammatech.com (download.grammatech.com)|52.55.10.209|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 2456 (2.4K) [application/pgp-keys]
正在保存至: “STDOUT”

-                     0%[                    ]       0  --.-KB/s    用时 0s    


无法写入 “-” (成功)。

我也没有仔细看这个原因,难道是因为没有以root运行? 切换成root之后(参考这里:ubuntu怎么切换到root用户,切换到root账号方法_@红@旗下的小兵的博客-CSDN博客_切换root)果然就可以了(注意,如果用sudo是不能代替这里的root用户的)。呵呵呵,觉得大家写这些步骤的时候都太不用心了,不知道ubuntu一般并不以root账号运行吗?

另外一种解决方法是,当报了下面的错后:

错误:5 https://download.grammatech.com/gtirb/files/apt-repo focal InRelease
  由于没有公钥,无法验证下列签名: NO_PUBKEY EE667DBA5CF2A4BC

参考网友的方法:由于没有公钥,无法验证下列签名 :NO_PUBKEY 的解决方法_Half_A的博客-CSDN博客_由于没有公钥,无法验证下列签名:

 手动加入这个key:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EE667DBA5CF2A4BC

然后后面就可以正常安装了。所以还是想吐槽一下,我很少很少能看到readme写得贴心完整的,往往是各种bug,各种猜测,不得不说很多人做事都太不细心了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值