码迷,mamicode.com
首页 > 其他好文 > 详细

利用编译时的全局声明对抗反编译

时间:2020-03-13 10:19:10      阅读:57      评论:0      收藏:0      [点我收藏+]

标签:xxxxx   xxxx   反编译   全局   def   http   编辑   利用   alt   

先看一个简单的例子;
(defun t1 () (princ "t1"))
(defun t4()
        (defun t2 () (princ "t2"))
        (defun t3 () (princ "t1"))
        (princ "t4")
)      
(defun t5 ()(t1)(t2)(t3)(t4)
)
正常编译后,可以完美反编译。
如果在编译的时候,选择了优化,再编辑一下全局声明,drop掉 t2 t3 t4,编译后用某流行反编译软件进行反编译,得到如下结果:
(DEFUN T1() (PRINC "t1" )  )
(DEFUN C:XXXXXXXXX() (DEFUN C:XXXXXXXXX() (PRINC "t2" )  ) (DEFUN C:XXXXXXXXX() (PRINC "t1" )  ) (PRINC "t4" )  )
nil
(DEFUN T5() (T1 ) (&H24 ) (&H43 ) (&H14 )  )
可以看出, t2 t3 t4变样了,已经不是原来的代码

技术图片

利用编译时的全局声明对抗反编译

标签:xxxxx   xxxx   反编译   全局   def   http   编辑   利用   alt   

原文地址:https://www.cnblogs.com/mjgw/p/12484653.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!