首页
社区
课程
招聘
[原创]小议“非法模块”与“第三方检测”的那些事儿(3)-举个栗子~
发表于: 2013-5-2 12:42 13965

[原创]小议“非法模块”与“第三方检测”的那些事儿(3)-举个栗子~

2013-5-2 12:42
13965

(2)(1)上面谈了很多原理层次的东西,很多人不懂,所以补充一篇例子

先举一个关于特征码的例子:
举例是最常见的一个东西 易语言用的超级模块。
基本上这个东西都是死于作者在里面加了这么一大段废话。

处理方式:将这里一大段的文字清0~
扩展:
其他字符串的处理:字符串全部使用其他的和谐编码方法存储,不要明文出现。

接着举个关于模块名称与文件HASH的例子:
举例 易语言非独立编译的DLL加载的那几个模块
处理方式:独立编译并加壳修改文件名
扩展:
将模块加壳,或者动态修改文件的最后一个节的大小写入随机垃圾数据,或者每次加载前都修改OEP的代码(就是改OEP到添加的节或者最后节扩大的地方然后junkcode一堆,再jmp回去而已)。

接着举个关于模块特征之pdb路径
举例最新的Pchunter32被检测

处理方式:帮linxer大侠把pdb路径抹除~~
扩展:
通过合理方式禁止对关键进程的文件的访问(...)。

最后举个例子
举例:验证码处理模块
某验证码模块导出函数SendFileEx 参数格式...
于是检测的特征是谁导出谁被检测。
处理方式:修改导出名称或者以无名称的符号导出形态~~
扩展:除了导出之外,导入和资源表也可以是特征...

本篇完。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 6
支持
分享
最新回复 (17)
雪    币: 615
活跃值: (590)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
2
标记下,慢慢消化,,,
2013-5-2 12:56
0
雪    币: 130
活跃值: (1005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
顶下~~
LZ是怎么知道它检测这些文字?我想知道这个...
2013-5-2 16:02
0
雪    币: 92
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
这段文字应该编译后 就没有了吧
只有在调试的情况下才有的
2013-5-2 18:25
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
5
编译之后依然存在,清晰可见~~
2013-5-2 19:03
0
雪    币: 34
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
标记下。慢慢学习
2013-6-4 10:12
0
雪    币: 92
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
好短........
2013-6-17 18:36
0
雪    币: 11
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
加个upx就没有了啊……谁写外挂不加壳啊
2013-6-17 19:44
0
雪    币: 33
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
小白白学习了
2013-6-17 19:51
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
10
UPX一样有~~上面举例内存文字样例的加了VMP~~~
2013-6-17 21:12
0
雪    币: 11
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
不会吧……是不是最小模式下加的vmp……
要么就用的是易语言这种渣子语言
c++貌似不会有这个问题(完全模式下)
2013-6-17 21:16
0
雪    币: 219
活跃值: (783)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
12
超级模块这个家伙我最讨厌了~~~
    希望全部游戏都来检测他
2013-6-17 21:18
0
雪    币: 11
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
e语言是个渣渣语言……我最讨厌他了
2013-6-17 21:26
0
雪    币: 81
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
mark下
2013-6-17 23:03
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
15
C++,你SDK没把字符串包裹的话,还是可以搜到的~~~
2013-6-18 07:03
0
雪    币: 1361
活跃值: (1121)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
16
TCHAR szKernel32[] = {"Kernel32.dll"};
改为
TCHAR szKernel32[] = {'K','e','r','n','e','l','3','2','.','d','l','l','\0'};
还可以再加个sdk....
2013-6-18 07:40
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
17
[QUOTE=sssccc;1189432]TCHAR szKernel32[] = {"Kernel32.dll"};
改为
TCHAR szKernel32[] = {'K','e','r','n','e','l','3','2','.','d','l','l','\0'};
还可以再加个sdk....[/QUOTE]

你这样还是可以找到!
要这么用
TCHAR *szKernel32=VMProtectDecryptString(TEXT("Kernel32.dll"));
才对~~
2013-6-18 08:21
0
雪    币: 11
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
:
蛋都碎了………
2013-6-18 11:58
0
游客
登录 | 注册 方可回帖
返回
//