首页
社区
课程
招聘
[原创]运行程序前执行自己的代码
发表于: 2008-12-31 19:49 6139

[原创]运行程序前执行自己的代码

2008-12-31 19:49
6139

来看雪两年多了,到现在还是个相当菜的菜鸟,只索取,从来没有过回报,因为水平太次,实在是写不出来什么~
这个小程序实际是做毕业设计的时候写的,当时写完之后,没有太大的问题了,就没有再改(能蒙混过关就是目的),里面现在仍然是bug多多。它主要是利用Tls CallBack来实现在运行程序之前先运行我们的代码,我们要把代码写入到exe中才行。

TLS是Thread Local Storage,即线程局部存储。线程局部存储有2种,动态的和静态的。动态线程局部存储使用TlsAlloc, TlsFree, TlsSetValue和TlsGetValue这些API,利用TLS机制可以为进程中的每个线程关联若干个数据,各个线程通过由TLS分配的全局索引来访问与自己关联的数据。
而静态线程局部存储是在Windows的PE/COFF可执行文件格式中所支持的静态线程局部存储。即在PE头中数据目录表中的第10项,这一项指向的是Tls目录,Tls目录的结构如下:


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (2)
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谢谢你的文章!我要向你学习!!
2009-1-2 21:32
0
雪    币: 300
活跃值: (179)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
我记得的论坛里有朋友放了个修改之后的记事本,但一直没找到原理介绍的文章。受益匪浅,谢谢楼主了...
2009-1-5 22:21
0
游客
登录 | 注册 方可回帖
返回
//