当前位置: 首页 > news >正文

Codeql 编译Shiro1.2.4爬坑

0x00 前言

这个Codeql一定要编译才能生成Database,是真的比较恼火,很多项目都不一定可以生成,环境就是一个非常大的坑,为了防止以后,所以将shiro1.2.4编译过程进行记录。

0x01 正文

首先是需要下载到shiro1.2.4的源码 https://codeload.github.com/apache/shiro/zip/refs/tags/shiro-root-1.2.4

然后如果直接使用mvn的话,会遇到一个问题:

[INFO] Required toolchain: jdk [ vendor='sun' version='1.6' ]
[ERROR] No toolchain matched from 1 found for type jdk
[ERROR] Cannot find matching toolchain definitions for the following toolchain types:
jdk [ vendor='sun' version='1.6' ]

在这里插入图片描述
这个问题的解决方案就是修改mvn的配置文件toolchains.xml

  <toolchain><type>jdk</type><provides><version>1.6</version><vendor>sun</vendor></provides><configuration><jdkHome>/path/to/jdk/1.6</jdkHome></configuration></toolchain>

添加这个内容,当然需要一个 jdk1.6,自己准备,没有的话可以私聊我

这个时候你通过codeql去创建database的时候就会抛出这个错误。

java.lang.UnsupportedClassVersionError: com/semmle/extractor/java/InterceptingAgent : Unsupported major.minor version 51.0

在这里插入图片描述
百思不得其解,找了很多的资料,虽然它明明白白的告诉你是版本问题,但是你发现你去调整jdk版本的时候,就会发现,不管怎么调整版本都是不对的。

最后发现了一个方法,那个mvn 配置文件里的jdk6 改成jdk7 就成了。。。。

在最后的时候发现,只要有配置就行,mvn不会管你配置的是不是jdk7。

但是在写规则的时候遇到了问题,没有办法找出调用链。

在这里插入图片描述

http://www.lryc.cn/news/15075.html

相关文章:

  • 新C++(9):谈谈,翻转那些事儿
  • Java深克隆的几种方式
  • PointNet++的源码运行
  • npm 上传自己的包
  • 【Linux】常用命令大全(二)
  • 第一章 操作系统概述
  • ChatGPT为什么不受开发者喜欢?
  • Lua table
  • JavaScript:使用for in不是一个很好的抉择
  • Go语言学习小笔记(一)
  • 前端Docker部署方案
  • Java——无重叠区间
  • 数据库和数据表创建与管理操作
  • buu [ACTF新生赛2020]crypto-rsa3 1
  • 知识库:在医疗行业的知识管理有着怎样的意义与实际影响?
  • 带你一步步搭建Web自动化测试框架
  • Redis进阶-缓存问题
  • VS Code Spring 全新功能来了!
  • 关于大数据导入流程引擎ccflow的方案
  • AI 生成二次元女孩,免费云端部署(仅需5分钟)
  • 掌握MySQL分库分表(六)解决主键重复问题--Snowflake雪花算法
  • Melis4.0[D1s]:1.启动流程(与adc按键初始化相关部分)跟踪笔记
  • GNU make 中文手册 第三章:Makefile 总述
  • 简历的专业技能怎么写?排版需要注意的事项
  • 【Git】为什么需要版本控制?版本控制工具有那些?
  • SSH远程执行Python3 Error: UnicodeEncodeError: ‘ascii‘ codec
  • 极简TypeScript教程--面向对象
  • java TCP/UDP、Socket、URL网络编程详解
  • 【C语言】宏
  • 【测试面试】自我分析+功能+接口自动化+性能测试面试题(大全),知己知彼百战百胜......