java逆向调试_java逆向相关

1.将war文件导入到Eclipse

在导入war文件之前,新建项目,比如:webPorject

在Myeclipse中:在File===》import==》General中选择Archive File,出现对话框

在弹出的Form archive file对话框中选择要导入的项目.war

全选 =====>导入第一步中新建立的项目,点击Finish,完成导入。

2.java调试语句

Exception ex = new Exception("myexption");ex.printStackTrace();

3.java class文件修改

转:http://www.cnblogs.com/lcwlovell/archive/2013/03/07/2947225.html

采用javassit包

编写classchange.java文件:

import javassist.ClassPool;

import javassist.CtClass;

import javassist.CtMethod;

public class classchange {

public static void main(String[] args) throws Exception {

ClassPool classPool = ClassPool.getDefault();

// 必须将class文件放在这个工程编译后的class文件中,路径也对应起来

CtClass ctClass = classPool.get("pkg.myclass");

//设置方法需要的参数,一定要能匹配起来,而且必须引入这些参数类的包

CtClass[] param = new CtClass[1] ;

/*

param[0] = classPool.get("javax.servlet.http.HttpServletRequest") ;

param[1] = classPool.get("javax.servlet.http.HttpServletResponse") ;

param[2] = classPool.get("int") ;

param[3] = classPool.get("java.lang.String") ;

*/

// 找到需要修改的行所在的方法

param[0] = classPool.get("java.lang.String") ;

CtMethod method = ctClass.getDeclaredMethod("test", param);

// 在这个方法的15行添加

method.insertAt(15, "Exception ex = new Exception(\"exption\");ex.printStackTrace(); System.out.println(x);");

// 将文件写到指定的目录

ctClass.writeFile("E:/");

System.out.println("finished");

}

}

将需要修改的文件pkg/myclass.class放置到bin/pkg/myclass.class,即放到classchange生成的bin目录,注意按照包的形成存放。eclipse中运行即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值