Open xiaoluanzzz opened 7 months ago
您好,我已收到您的来信,我会尽快给您回复。
命令行运行一下,就知道哪里报错了,你这都知道是客户端报错,看运行日志不就可以了
您好,我已收到您的来信,我会尽快给您回复。
vassist.CannotCompileException: [source error] ; is missing at javassist.CtNewMethod.make(CtNewMethod.java:84) at javassist.CtNewMethod.make(CtNewMethod.java:50) at net.rebeyond.behinder.core.Params.getTransProtocoledClass(Params.java:310) at net.rebeyond.behinder.core.Params.getParamedClass(Params.java:351) at net.rebeyond.behinder.utils.Utils.getData(Utils.java:567) at net.rebeyond.behinder.utils.Utils.getData(Utils.java:639) at net.rebeyond.behinder.core.ShellService.echo(ShellService.java:1271) at net.rebeyond.behinder.core.ShellService.doConnect(ShellService.java:284) at net.rebeyond.behinder.ui.controller.MainWindowController.doConnect(MainWindowController.java:308) at net.rebeyond.behinder.ui.controller.MainWindowController.lambda$initControls$4(MainWindowController.java:139) at java.lang.Thread.run(Thread.java:748) Caused by: compile error: ; is missing at javassist.compiler.Parser.parseDeclarators(Parser.java:643) at javassist.compiler.Parser.parseDeclarationOrExpression(Parser.java:592) at javassist.compiler.Parser.parseFor(Parser.java:380) at javassist.compiler.Parser.parseStatement(Parser.java:279) at javassist.compiler.Parser.parseBlock(Parser.java:307) at javassist.compiler.Parser.parseMethod2(Parser.java:172) at javassist.compiler.Javac.compileMethod(Javac.java:156) at javassist.compiler.Javac.compile(Javac.java:102) at javassist.CtNewMethod.make(CtNewMethod.java:79) ... 10 more
这能看出个啥呀,冰蝎4也不开源呀 @Dr-S1x17
都有报错信息了,哥。 javassist不支持 for (a : b) 写法 @xiaoluanzzz
都有报错信息了,哥。 javassist不支持 for (a : b) 写法 @xiaoluanzzz
谢谢哥,javassist的问题解决了,但服务端又报错了,研究了几天实在找不到问题所在,再请教一下您
testvvv.txt 这是报错
testvvv.txt 这是报错
服务端报错你就直接idea 调试jsp就行了,错误断在哪,跟一下传入的数据和函数,百度就能解决了,话说你给我发报错,不给我发原始的jsp shell,我也不知道哪里有问题啊
原始JSP: testorigin.txt
解决了上个BUG的算法: 分段异或2.config.zip
testvvv.txt 这是报错
服务端报错你就直接idea 调试jsp就行了,错误断在哪,跟一下传入的数据和函数,百度就能解决了,话说你给我发报错,不给我发原始的jsp shell,我也不知道哪里有问题啊
嗯,我只尝试过导出它的class用java调试过,还没试过直接调试jsp,我尝试一下,还是没怎么接触过java,没经验,呜呜
testvvv.txt 这是报错
服务端报错你就直接idea 调试jsp就行了,错误断在哪,跟一下传入的数据和函数,百度就能解决了,话说你给我发报错,不给我发原始的jsp shell,我也不知道哪里有问题啊
其实也调试过了,但是classloader里面的执行过程idea追踪不到,在实例化字节码的时候就报错了: 然后也尝试过把解密后的字节码导出成.class文件自己反编译,用反编译的代码运行,结果是正常的:
(乱码是加密后的结果,是正常的)
下面是反编译前的字节码: test.class.zip 反编译源代码可以发现几处Encrypt的调用都是正确的,实参确实都是Byte数组,好像不存在它报错中的问题
盲猜字节码数组有问题,跟一下解密的结果,对比原始的字节码看一下就知道了。原始的如何获取呢?加密选个空的,服务端jsp debug一下获取完整的字节码数组,肯定是不一样的,我这边没详细跟,但我大胆猜一下应该是字节和字符转义出现的问题
盲猜字节码数组有问题,跟一下解密的结果,对比原始的字节码看一下就知道了。原始的如何获取呢?加密选个空的,服务端jsp debug一下获取完整的字节码数组,肯定是不一样的,我这边没详细跟,但我大胆猜一下应该是字节和字符转义出现的问题
我对比了一下原始字节码和我导出的字节码的反编译结果,发现两个只有Encypt函数存在差异,其他地方都是一样的:
这是两个字节码文件反编译后的源代码: oringClass.txt myClass.txt
一致性校验通过
生成PHP木马连接没有任何问题:
JSP木马连接失败,报错javassist.CannotCompileException: [source error];is missing
而且这个过程中没有任何报文发出,说明客户端走加密函数的时候直接报错了
附上加解密算法: 分段异或.zip