joern在windows下解析C源代码

简介:joern是一款开源的代码语法解析工具,能够生成AST抽象语法树、代码属性图CPG等,常用于基于图神经网络的代码漏洞检测等任务。joern能够解析.c源文件,并生成对应.c源文件的CPG图,主要就是节点和节点之间的连接关系。

1、joern的安装

        joern是ShiftLeft 开发的一款基于CPG制作的白盒静态扫描工具,诞生的时间不算早应该就是2021年(具体记不清了),官方地址:https://github.com/joernio/joern

        首先下载其release版本,已经经过编译的版本。地址:https://github.com/joernio/joern/releases/tag/v4.0.131

        joern是基于java开发的,支持命令行cli,底层还是依靠的是java。解压之后得到下面的文件,其中project就是joern的代码,类似于python的包,下面3个转换代码就会去project里面调用启动文件,进行源码转换,其中参数依靠cli传入。

2、java环境的安装

        joern基于java开发,所以电脑上必须安装java运行环境,也就是java解释器,提供必要的运行时容器和想要的官方库java库。

        自行下载java的jdk,然后重点:把环境变量配置正确,这样就可以在任意文件夹下运行java的启动main类了,包括joern的启动入口。

3、启动joern

完成joern的安装和java环境的配置之后,使用cli命令行的形式启动joern的转换入口类,然后将需要转换的c源码文件夹、保存文件夹做完参数传进去就可以开始解析了。

解析当中:

解析结果:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值