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中运行即可。
  • 相关阅读:
    面向对象之类属性、类方法,静态方法
    python面向对象之继承
    python之面向对象练习
    python面向对象
    CentOS7.5最小化安装之后的配置
    怎么在一台电脑上安装win7与centos7双系统
    安装Win7时删除系统保留的100M隐藏分区
    win7在安装时跳过输入用户名界面,直接开启管理员用户
    ESP8266 wifi干扰钓鱼实现
    ESP8266 wifi干扰、钓鱼实现
  • 原文地址:https://www.cnblogs.com/studyskill/p/7084323.html
Copyright © 2011-2022 走看看