首页
社区
课程
招聘
[原创]自己动手写”Hshield”:第一章:立即动手写一个最让人看不起的”Hshield
发表于: 2010-5-19 13:42 8750

[原创]自己动手写”Hshield”:第一章:立即动手写一个最让人看不起的”Hshield

2010-5-19 13:42
8750

自己动手写”Hshield”保护软件
                     第一章:立即动手写一个最让人看不起的”Hshield”

                           千里之行始于足下.
                                                                 ---古代人说的
1,1, 准备工作.
出于写程序,准备工作就跑不开硬件,软件这两方面。我们来看一下:
1,硬件
。一台计算机(Windows操作系统)

2,软件
。安装正版编程软件Microsoft Visual C++ 6.0(若是中国人可以安装翻版的)
。随便一个没anti-debug .的调试器.  (若没,可使用本人在附件中“赠送”的OD)

1,2.  1分钟完成的”Hshield”
  你相信不相信,一个”Hshield”关键只要 7 句话  ,请看。

                   代码1-1  \chapter\a\HideDll\HideDll.cpp

                 我们的最让人看不起眼的”Hshield”核心代码

证明其有Hshield功能的步骤:
1,先随意打开一个标题为”Test”的被保护进程(若无者,有空者可自制,但我已把这个放在源码Test)


                    图1-1 :Test 作为测试程序


                    图1-2: 用冰丸查看Test线程模块

用OD调试.  正常附加之后. 再F9运行.程序是绝无反应. (在tool里边有od.exe)
(嘻嘻,因为它还没有 我们的”Hshield”保护)

                          图1-3: 用OD调试Test 无反应

2,同样.我们先打开程序 Test
  这次先打开launcher.exe –向Test发射.

              图1-4 :发射程序launcher
成功保护后会这样的提示:


                        图 1-5: Launcher成功向Test加载我们的”Hshield”
(可以把launcher.exe关闭)
   
                        图 1-6: 用冰丸查看被发射后的Test线程模块               

  之后用OD附加,F9运行程序.你还会显然发现其中的变化

                     图1-5:OD调试Test被检测发现
                  
     看.我们的“Hshield”就是这么牛X. 一个待启动线程DLL,一个发射台..然我还是自已表达太复杂了.
    还是把问题用另一种方式表达.会简单些

1.3 思路整理;


                图1-6: 各程序之间的关系
   此刻从整体而言  “Hshield”最需要思考的是: HideDll.dll  .它的代码强度决定着整个”Hshield”的反调试强度.


读者可以通过 附加的源码. 任意增加检测调试器的方法. 组成自已特色的”Hshield”

(发射台,Test普通程序是次支,可以管可不管.).

1,4理解与扩展.
如果对”Hshield”所用的技术.
1,创建远程线程.
2,检测调试器.

对远程线程不熟可以读读<<Window高级编程指南>>  --第18章  打开进程边界
看看出<<Cracking, The Anti.>>可以检测调试器.解惑..

////////后记//////////
第一次发文.才发现写文是件很累很累的事..
明明做起来是很简单的事情.. 如果要用文字表达.则是很复杂的事.  

资料引用说明:
反调试:
1、<<脱壳的艺术>> hawking
              2、<<windows anti-debugger reference>> Angeljyt
              3、http://bbs.pediy.com
              4、<<软件加密技术内幕>> 看雪学院
              5、<<ANTI-UNPACKER TRICKS>> Peter Ferrie
              6,  <<Cracking, The Anti.>>
         国内也已经有脱壳大牛 shellwolf 编写“反调试技巧总结-原理和实现“作整体总结

               

编程资料:<<Window高级编程指南>>  --第18章  打开进程边界
           Jeffrey Richter[美] 著      

           (网上皆其有下载)


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (11)
雪    币: 210
活跃值: (11)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
图挂。坐在这个位置俺感到压力很大
2010-5-19 14:02
0
雪    币: 414
活跃值: (987)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
没看明白  图挂了.....还有和3层通信喃?
2010-5-19 14:10
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
膜拜一下
你成功的写一个最让人看不起的”Hshield”
2010-5-19 14:41
0
雪    币: 289
活跃值: (236)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
5
怎么没有图啊!
2010-5-19 15:02
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
6
真的看不到图
2010-5-19 17:48
0
雪    币: 213
活跃值: (147)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
无图无真相
2010-5-20 09:51
0
雪    币: 291
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
顶起,关注续集内容
2010-5-20 14:04
0
雪    币: 375
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
9
楼主要干啥?Anti-AhnLab?
2010-5-20 14:06
0
雪    币: 8209
活跃值: (4518)
能力值: ( LV15,RANK:2473 )
在线值:
发帖
回帖
粉丝
10
先来个目录吧
2010-5-20 14:13
0
雪    币: 208
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
奇怪,在unpackcn能看到图
2010-5-20 14:57
0
雪    币: 573
活跃值: (222)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
好文要顶  只是为何  发了没多久就图挂了呢?而且这都N年了也不修复一下。。。。
2017-5-4 15:26
0
游客
登录 | 注册 方可回帖
返回
//