Joern的安装与使用

  • A+
所属分类:教程
Joern的安装与使用

一.前言

最近在研究C/C++源码的漏洞挖掘,需要用到Joern工具将源码转换为图来分析,于是开始寻找关于Joern的安装教程。首先是按照别人的博客安装,发现大部分依赖库都是远古版本,根本安装不了,于是找官方教程,找到了一个官方文档(准确来说应该是旧的官方文档,文档底部显示2014年),安装的版本为joern-0.3.1,安装过程巨麻烦,且同样存在依赖库找不到的问题。于是就想写下这篇博客,初衷就是希望大家在安装Joern时可以少走弯路,避免我踩过的坑,减少不必要的时间浪费!

二.关于Joern的简介

Joern 是一个用于分析基于C/C++项目的开源工具,它不需要进行编译和依赖库就可以从整个项目或者单个源文件甚至函数代码片段中提取每个函数的代码属性图。

三.安装

安装按照Joern官方安装文档(2021),这里就不一一赘述。

下面主要介绍安装遇到的错误及解决办法。

错误1:如果在导入代码时出现如下错误,说明java版本不对应(这里有个坑,官方文档指明java版本为 Java 8 或更高,但在实际测试中,Java 8依然会报错,本人就是因为这个java版本问题卡了半天)。可以将安装java 11

Joern的安装与使用

java版本对应关系:

49.0 = Java 5
50.0 = Java 6
51.0 = Java 7
52.0 = Java 8
53.0 = Java 9
54.0 = Java 10
55.0 = Java 11
56.0 = Java 12
57.0 = Java 13
58.0 = Java 14

安装java11

sudo apt-get install openjdk-11-jre

切换默认java版本:

sudo update-alternatives --config java

错误2:在生成ASTCPGCFG等图时显示无Graphviz

安装graphviz

sudo apt install graphviz

输出版本,验证安装:

dot -version

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: