开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 6518|回复: 7
打印 上一主题 下一主题
收起左侧

[闲聊] 前无古人,后无来者的反调试方法

[复制链接]
结帖率:90% (18/20)
跳转到指定楼层
楼主
发表于 2016-1-23 15:49:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式   广东省深圳市
前言:本反调试方法不同于以往的反调试方法。
以往的反调试均以摧残调试人员的意志为基本点,目前比较强大的 VMP 与 TMD 之类的也是运用这种方法,这种方法的弊端就是对于意志坚强、好奇心强或者抖 M(就是你给他一巴掌他还发自内心感觉到爽的这一种人)来说,是无效的。目前均能有破J VMP,TMD 的牛○人士,也证明了这种反调试的瓶颈。本文介绍的反调试方法均是以前其他人没有使用过的、不同于常理的、非常有效的另类反调试方法。这些反调试方法充分体现了以人为……,不透剧了,往下看你就清楚了!

方法一:心理摧残法(Heart Break)/ 跳跃消息(Jump Message)
此方法对于那些心灵脆弱的人尤为有效,具体方法也很简单:

代码:
  • 00401000 | EB 12           JMP SHORT 00401014
  • 00401002 | 46 75 63 ..     ASCII "Fuck your sister"
  • 00401012 | 2E 00           ASCII ".",0
  • 00401014 | B8 02104000     MOV EAX,00401002
  • 00401019 | C3              RETN

[color=rgb(0, 153, 204) !important]复制代码
在调试人员的必经之路上加一个 Jump 指令,然后空出的地方你就可以写上一些能够刺痛调试着心灵的并且他能看得懂的话语。俗话说的好:“人生不如意之事十有八九”,你绝对能找到他心灵上的弱点,用你学过的语文上的知识写出一段话,深深刺痛他的心灵。调试含有本反调试技术的程序的人轻则痛哭流涕,重则自杀身亡(到时候别把我供出来),效果非同凡响!

方法二:挑逗法(Come on baby)/ 空函数法(Empty Function)
当你进入一个 Call,发现里面只有 Retn 指令时,你会是什么样的心情?

代码:
  • 00401000 | C3                RETN
  • 00401001 | CC                INT3
  • ..........................................
  • 00401010 | E8 EBFFFFFF       CALL 00401000
  • 00401015 | E8 BE010000       CALL 004011D8
  • 0040101A | 33C0              XOR EAX,EAX
  • 0040101C | C3                RETN

[color=rgb(0, 153, 204) !important]复制代码
你可以自己写一个程序,向 PE 文件里面写入很多很多这样的空函数,使得调试者不清楚哪些函数里面有内容,哪些函数里面是空的。本反调试方法可以极大地摧残调试者进入 Call 的欲望,重者可能会产生 Call 恐惧症。

方法三:无聊透顶法(Not Interesting)/ 大量跳转法(Multi-Jump)
本方法在一处地方大量使用跳转指令,就是像下面这种样子就可以了(给人一种想跳就跳,不想跳就退出的感觉):

代码:
  • 00401000 | EB 1A         JMP SHORT 0040101C
  • 00401002 | EB 1A         JMP SHORT 0040101E
  • 00401004 | EB 06         JMP SHORT 0040100C
  • 00401006 | EB 0A         JMP SHORT 00401012
  • 00401008 | EB 1E         JMP SHORT 00401028
  • 0040100A | EB F6         JMP SHORT 00401002
  • 0040100C | EB 14         JMP SHORT 00401022
  • 0040100E | EB F8         JMP SHORT 00401008
  • 00401010 | EB F2         JMP SHORT 00401004
  • 00401012 | EB FA         JMP SHORT 0040100E
  • 00401014 | EB 0E         JMP SHORT 00401024
  • 00401016 | EB 08         JMP SHORT 00401020
  • 00401018 | EB F6         JMP SHORT 00401010
  • 0040101A | EB FA         JMP SHORT 00401016
  • 0040101C | EB F6         JMP SHORT 00401014
  • 0040101E | EB 06         JMP SHORT 00401026
  • 00401020 | EB E4         JMP SHORT 00401006
  • 00401022 | EB E6         JMP SHORT 0040100A
  • 00401024 | EB F4         JMP SHORT 0040101A
  • 00401026 | EB 02         JMP SHORT 0040102A
  • 00401028 | EB EE         JMP SHORT 00401018

[color=rgb(0, 153, 204) !important]复制代码
这种方法比较强大,单步步过的能使人反胃,比较厉害的人还可以使用 Call/Pop、Push/Retn、JB(<-JNAE) 等指令进行跳转。本反调试适合对付那种兴趣浓厚的人,能使他们兴冷淡,最终放弃对程序的分析!

方法四:血液流尽法(No More Blood)/ 萌杀法(Moe-Kill)
这种方法适用于在发现调试器后,弹出一个对话框,对话框上绘制一幅非常萌的图片:



等调试人员看到这个之后,鼻血连绵,最终会导致全身血液供氧不足而付出生命的代价。其实你还可以把这个换成吓死人的图片,普通的人在没有心理准备的情况下基本上结果都是会去医院的。调试人员还可能把胆吓破,这是一个极其凶残的反调试,慎用!

方法五:震瞎狗耳法(Ear Destruct)/ 音乐卡带法(Music Cut)
调试过游戏的人大多数都经历过,一旦用调试器断下播放音乐的线程(不是音效),一般情况下游戏的 BGM 就会像卡带一样,人听了非常不爽。你可以在你程序需要执行秘密代码的线程里加上播放音乐的代码(记住,要用 DirectSound,并且不要一次就把音频数据全部写入 Buffer)。一旦有人调试,断下那个线程,嘿嘿,耳膜时刻受到卡带声音的摧残,大脑嗡嗡作响,最后绝对会把显示器扔到窗外。不过这种反调试方法有一个非常致命的弱点就是调试者可以关掉音响……

如果大家看了上面的方法,说这些是小儿科、无稽之谈、卖萌取宠,并且会质疑 LZ 为什么从碗里跑出来放弃治疗,那么,下面的终极反调试(Ultimate Anti-Debug)方法会让你彻头彻尾地改变对本文的看法!

终极方法:不良引导(Missing Target)/ 色○攻J(Sex Attack)
食、色性也,如果调试人员看到了有比调试程序更诱人的东西又会怎么做呢?
(下面的其实是正常视频,别删,不信你就看看,我大 Bilibili 的)

代码:
  • 00401485 | E8 ED280000     CALL 00403D77
  • 0040148A | E9 95FEFFFF     JMP 00401324
  • 0040148F | E9 5C690000     JMP 00407DF0
  • 00401494 | 53 65 78 ..     ASCII "SexVideo:http://"
  • 004014A4 | 77 77 77 ..     ASCII "www.bilibili.tv/"
  • 004014B4 | 76 69 64 ..     ASCII "video/av294254/",0

[color=rgb(0, 153, 204) !important]复制代码
这种信息写在入口点效果更为明显,因为在调试器中一般(不排除 TLS)程序是断在 OEP 的,然后你就可以在 OEP 的上面或者下面写一些不良的、○秽○情信息或者是网站。其实你也完全可以将整个程序中都加入大量这样的信息。调试带这种反调试程序的人,没有定力的、或者被汇编代码消磨完定力的,基本上都会忍不住的!慢慢地,调试着表情会变得猥琐,行为会变得龌龊,肾功能也会渐渐衰竭,最终○尽人亡!英雄难过美人关,此招一出,谁与争锋!!!!

————————————————————————

怎么样,上面的技术简单而又厉害吧!其实像这样厉害的技术还有很多,大家慢慢发掘吧!

点评

bilibili.tv...   广东省河源市  发表于 2018-8-20 17:07

评分

参与人数 1精币 +1 收起 理由
Siempre + 1 似曾相识

查看全部评分

本帖被以下淘专辑推荐:

结帖率:100% (1/1)

签到天数: 8 天

7
发表于 2022-8-20 22:02:39 | 只看该作者   广东省深圳市
真有这网址存在?我好奇进去看了下。
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
6
发表于 2020-7-22 09:34:40 高大上手机用户 | 只看该作者   湖北省武汉市
太可怕  太可怕了
回复 支持 反对

使用道具 举报

地下
发表于 2018-3-11 09:19:36 | 只看该作者   广东省东莞市
一波骚操作
回复 支持 反对

使用道具 举报

地板
发表于 2016-1-23 16:13:25 | 只看该作者   浙江省温州市
XX宝转载来的....
回复 支持 反对

使用道具 举报

头像被屏蔽
结帖率:0% (0/1)
板凳
发表于 2016-1-23 15:57:53 | 只看该作者   广东省中山市
状我大B站~!
回复 支持 反对

使用道具 举报

沙发
发表于 2016-1-23 15:57:10 | 只看该作者   广东省揭阳市
http://www.bilibili.com/video/av294254/我只看到了这个
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表