多读书多实践,勤思考善领悟

Java逆向基础之十四.动态生成类

Java逆向基础之十四.动态生成类

为什么有这个东西,一方面时AOP框架的需要,另一方面是增加软件逆向的难度 动态生成类的技术目前大体上分为两类,一类是通过操作字节码框架如cglib/Javassist去实现,另一类就是JNI方式,调用dll/so库,内存中动态还原。这...

字节码操纵技术探秘

字节码操纵技术探秘

大家可能已经非常熟悉下面的处理流程:将一个“.java”文件输入到Java编译器中(可能会使用javac,也可能像ANT、Maven或Gradle这样的构建工具),编译器对其进行分析,最终生成一个或多个“.class”文件。 图:什么...

Java逆向基础之十.简单的补丁

Java逆向基础之十.简单的补丁

本文需要用到IDA 简单的补丁 1. 看一个例子12345678910public class nag { public static void nag_screen() { System.out.println...

java逆向基础之九.简单类

java逆向基础之九.简单类

类 简单类 1. 例子12345678910111213141516171819202122232425public class test { public static int a; private static int ...

Java逆向基础之八.异常

Java逆向基础之八.异常

异常 1. 由之前月份处理修改的例子//清单1IncorrectMonthException.java 1234567891011public class IncorrectMonthException extends Excepti...

Java逆向基础之七.字符串

Java逆向基础之七.字符串

字符串 字符串也是对象,和其他对象的构造方式相同。(包括数组) 1. 第一个例子1234567public class stringhello { public static void main(String[] args)...

Java逆向基础之六.数组

Java逆向基础之六.数组

数组 1. 简单的例子创建一个长度是10的整型的数组,对其初始化 123456789101112public class ArrayInit { public static void main(String[] args) ...

Java逆向基础之四.静态变量存取

Java逆向基础之四.静态变量存取

注意:静态变量static可以多次赋值,不能多次赋值的是final static 线性同余伪随机数算法LCG 算法数学上基于公式:X(n+1) = (a * X(n) + c) % m 其中,各系数为: 模m, m > 0 系数...