-
Notifications
You must be signed in to change notification settings - Fork 140
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
适配范围
当我遇到以下需求:
- 需要实现一个自定义内存马
- 使用类型为
AgentFilterChain - 需要适配高版本 Java EE
如果按照文档要求,编译自定义内存马,需要项目一起编译的话,由于当前项目使用旧版本 Java EE 依赖,直接导入新版本,貌似会出现依赖冲突问题,个人尝试解决未成功
不按照文档要求,自建项目,使用 mvc 编译内存马,并将class文件放在web端使用,会提示报错 Cannot write invoke dynamic instruction for class file version Java 6 (50)
如果使用 SDK 集成:
- 直接使用已经编译好的 Jakarta 命名空间的内存马,bytebuddy 依赖会报错,大致为
java.lang.IllegalStateException: Cannot resolve type description jakarta.websocket.MessageHandler$Whole(PS:更新,已解决该问题,但出现了同样的报错Cannot write invoke dynamic instruction for class file version Java 6 (50)),即使我手动导入高版本 Java EE 依赖也无法解决。 - 聚焦在已经实现的
ServletRenameVisitorWrapper功能,此时由于 shellType 为 AgentFilterChain,无法直接进行转换,只能通过debug的形式临时修改shellConfig.isJakarta返回值来实现。
如果可以的话,希望将 Javax 转 Jakarta 作为一个单独的选项进行实现,可以适应上述情况。
或者简单一点,为所有 agent 类型,如 AgentFilterChain,添加 JakartaAgentFilterChain 类型(
相关资料
暂无
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request