吉林大学学报(工学版)

• • 上一篇    下一篇

Java程序调用流迷惑技术

张雪松,卢奕南,崔维力   

  1. 吉林大学 计算机科学与技术学院,长春 130012
  • 收稿日期:2007-11-12 修回日期:1900-01-01 出版日期:2008-03-01 发布日期:2008-03-01
  • 通讯作者: 崔维力

Call flow obfuscation technique for Java program

Zhang Xue-song, Lu Yi-nan, Cui Wei-li   

  1. College of Computer Science and Technology, Jilin University,Changchun 130012,China
  • Received:2007-11-12 Revised:1900-01-01 Online:2008-03-01 Published:2008-03-01
  • Contact: Cui Wei-li

摘要: 提出了一种Java程序迷惑技术,将用户自定义类中的一些方法的代码提取出来,嵌入到对象池中的某个对象的方法中。由于所有位于对象池中的对象都被上溯到它们的基类型,方法多态使得只有在运行时刻才能真正确定到底哪个对象的方法被执行。从而能够显著隐藏程序的调用流程,有效防止静态分析。结合一些增强机制,在一定程度上可以抵御动态分析。实验结果显示,变换后的程序对性能影响很小。

关键词: 计算机软件, 软件保护, 迷惑, Java字节码, 静态分析, 动态分析

Abstract: A Java program obfuscation technique was proposed. It extracts the codes of some methods in user defined classes, and then embeds the codes into the methods of some other objects in the object pool. Since all objects in the class pool are upcast to their common base class, the polymorphism of the method leads to that which object method will be executed can only be ascertained at runtime. Thus, the program call flow can be drastically obscured to prevent static analysis. In cooperation with other enhanced mechanisms, this technique can even resist dynamic analysis to a certain extent. Experiments show that the influence of the transformed program on execution efficiency is insignificant.

Key words: computer software, software protection, obfuscation, Java bytecode, static analysis, dynamic analysis

中图分类号: 

  • TP309
[1] 朱伟,王传伟,顾开荣,沈惠平,许可,汪源. 一种新型张拉整体并联机构刚度及动力学分析[J]. 吉林大学学报(工学版), 2018, 48(6): 1777-1786.
[2] 马健, 樊建平, 刘峰, 李红辉. 面向对象软件系统演化模型[J]. 吉林大学学报(工学版), 2018, 48(2): 545-550.
[3] 罗养霞, 郭晔. 基于数据依赖特征的软件识别[J]. 吉林大学学报(工学版), 2017, 47(6): 1894-1902.
[4] 应欢, 王东辉, 武成岗, 王喆, 唐博文, 李建军. 适用于商用系统环境的低开销确定性重放技术[J]. 吉林大学学报(工学版), 2017, 47(1): 208-217.
[5] 李勇, 黄志球, 王勇, 房丙午. 基于多源数据的跨项目软件缺陷预测[J]. 吉林大学学报(工学版), 2016, 46(6): 2034-2041.
[6] 王念滨, 祝官文, 周连科, 王红卫. 支持高效路径查询的数据空间索引方法[J]. 吉林大学学报(工学版), 2016, 46(3): 911-916.
[7] 特日跟, 江晟, 李雄飞, 李军. 基于整数数据的文档压缩编码方案[J]. 吉林大学学报(工学版), 2016, 46(1): 228-234.
[8] 康辉, 王家琦, 梅芳. 基于Pi演算的并行编程语言[J]. 吉林大学学报(工学版), 2016, 46(1): 235-241.
[9] 陈鹏飞, 田地, 杨光. 基于MVC架构的LIBS软件设计与实现[J]. 吉林大学学报(工学版), 2016, 46(1): 242-245.
[10] 刘磊, 王燕燕, 申春, 李玉祥, 刘雷. Bellman-Ford算法性能可移植的GPU并行优化[J]. 吉林大学学报(工学版), 2015, 45(5): 1559-1564.
[11] 冯晓宁, 王卓, 张旭. 基于L-π演算的WSN路由协议形式化方法[J]. 吉林大学学报(工学版), 2015, 45(5): 1565-1571.
[12] 李明哲, 王劲林, 陈晓, 陈君. 基于网络处理器的流媒体应用架构模型(VPL)[J]. 吉林大学学报(工学版), 2015, 45(5): 1572-1580.
[13] 王克朝, 王甜甜, 苏小红, 马培军. 基于频繁闭合序列模式挖掘的学生程序雷同检测[J]. 吉林大学学报(工学版), 2015, 45(4): 1260-1265.
[14] 黄宏涛,王静,叶海智,黄少滨. 基于惰性切片的线性时态逻辑性质验证[J]. 吉林大学学报(工学版), 2015, 45(1): 245-251.
[15] 范大娟1, 2, 黄志球1, 肖芳雄1, 祝义1, 王进1. 面向多服务交互的相容性分析与适配器生成[J]. 吉林大学学报(工学版), 2014, 44(4): 1094-1103.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!