joern如何运行——初探

目录

 

1 joern的安装

2 joern导入代码

2.1 填充数据库

2.2 启动数据库服务器

3 使用python-joern分析代码

3.1 测试前的准备

3.2 开始测试


 

1 joern的安装

请看我的上一篇博客【joern安装】

2 joern导入代码

本文算是官方文档的一个搬运,加入了一些自己的理解。小子不才,建议英文基础好的人还是去看官方文档吧。

2.1 填充数据库

  1. 完成joern的安装后,进入joern的安装目录,我的安装目录在/home/linux用户名/joern-0.3.1

  2. 填充数据库

    1. 两种方法,根据填充的数据的大小来采用不同的方法

    2. 第一种:分析小型程序

      1.  // 模板
         java -jar $JOERN/bin/joern.jar $CodeDirectory

        $JOERN:joern安装目录,$CodeDirectory:待分析的程序目录

      2.  // 实际运行,示例
         sudo java -jar /home/linux用户名/joern-0.3.1/bin/joern.jar /home/linux用户名/joern-0.3.1/testcode/

        joern-0.3.1文件夹内自带一个testcode文件夹,用于测试

        该命令运行完后会在该目录(joern-0.3.1)下生成一个 .joernIndex的隐藏文件(ctrl+h可以查看)。注意,如果此目录已经存在,则joern.jar就会在其中添加代码,因此在每次你想要创建一个新的数据库之前需要删除.joernIndex,然后重复此步骤。

    3. 第二种:分析大型程序

      1.  // 模板
         java -Xmx$SIZEg -jar $JOERN/bin/joern.jar $CodeDirectory

        $JOERN:joern安装目录,$CodeDirectory:待分析的程序目录,$SIZE:给jvm分配内存 (以GB为单位)

      2.  // 实际运行,实例
         sudo java -Xmx1g -jar /home/linux用户名/joern-0.3.1/bin/joern.jar /home/linux用户名/joern-0.3.1/testcode/
  3. 常见问题:

    1. 问题1:

      1. 问题描述:Caused by: java.lang.NoClassDefFoundError: javax/transaction/TransactionManager

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值