zoukankan      html  css  js  c++  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中运行即可。
  • 相关阅读:
    遗传算法的理解
    使用Grub Rescue 修复MBR
    java 虚拟机与并发处理几个问题简要(二)
    java 虚拟机与并发处理几个问题简要(一)
    Fence Repair POJ
    Best Cow Line---POJ 3617(贪心)
    迷宫的最短路径
    最大子段和
    Lake Counting --POJ 2386
    Ants POJ
  • 原文地址:https://www.cnblogs.com/studyskill/p/7084323.html
Copyright © 2011-2022 走看看