能力值:
( LV2,RANK:10 )
|
-
-
2 楼
看 upx 源码
|
能力值:
( LV9,RANK:690 )
|
-
-
3 楼
upx有源码么?能不能麻烦兄弟传上来:)
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
最初由 cyclotron 发布 是不是只要把tls table copy出来然后修正data dir的指针就可以了,loader要不要做什么工作?
你说的基本上差不多,就是把原TLS table复制到新的PE中来,修正数据目录,最后注意重建重定位项。 ----------我记得好象是这样的,一年前弄过,现在忘了。
|
能力值:
( LV9,RANK:690 )
|
-
-
5 楼
最初由 老王 发布
你说的基本上差不多,就是把原TLS table复制到新的PE中来,修正数据目录,最后注意重建重定位项。 ----------我记得好象是这样的,一年前弄过,现在忘了。
谢谢!重建重定位项是什么意思,不会是reloc吧,loader处理tls的时候还有什么要注意的,我看到yoda源码中的loader把Address of Index
清零了,不明白是什么意思。
|
能力值:
( LV4,RANK:50 )
|
-
-
6 楼
Peditor之TLS Table Viewer:
TLS Infos
Directory Table: DWORD
TLS Data: DWORD
Index Variable: DWORD
Callback Addresses: DWORD
刚才看了看以前的代码,我的做法是:
数据目录之TLS项RVA指向新建的TLS Table,TLS Table中前两项重新生成,绝对地址,需在新PE中预留出空间(尺寸忘了),后两项照搬。
这四项均加在重定位项中,也就是说数据目录中的重定位也需要你来定置,对EXE应该是可以忽略的。
我也是自己试验出来的,并没有真正查看有关TLS的文档,建议你找找PE中有关TLS的文档好好看看再下手。
|
能力值:
( LV9,RANK:690 )
|
-
-
7 楼
谢谢您的指点:)
|
|
|