首页
社区
课程
招聘
乱弹
发表于: 2005-10-22 20:14 9097

乱弹

2005-10-22 20:14
9097

真得没事做了,灌灌水吧,随意说了。

OllyDbg 有个 bug (也许不能叫 bug),遇到异常会清掉 DRx,
如果壳用DRX值来解码就会出错。这就是为什么不能直接用 OllyDbg 跟完 hying's PE-Armor 而要中途保存 DRx的原因。

TLS 的 callback 可以在程序进入入口之前执行(甚至在import被装入之前?
)但听说9x下不会。Execryptor就用这个,习惯了open with ollydbg的还得改改,麻烦啊。

令X=[GetProcessHeap+0Ch] and 40h,非调试时应该为0。

SetUnhandledExceptionHandler 会用ZwQueryProcessInformation查询class=7(可能是11,我记不清了)的调试信息,只要hook 那个native api就行了。

ZwSetInformationThread可以把调试端口设置为0,调试器就收不到debug event了。

native api都是这种形式的:
mov eax, ServiceId
mov edx, xxxxxxxx
call [edx]
retn xx
2k下大同小异:
mov eax, ServiceId
lea edx, [esp+4]
int 2e
retn xx
hying新版会扫描所有代码直到retn(并且第一条指令不能为retn),就没法设置断点了,因为它还会复制代码,memory breakpoint也不好用。不过可以用这种形式:
mov eax, ServiceId
mov edx, PtrToMyPage ;指向自己的内存
call [edx]
retn xx
执行后就可以肆意妄为了,不怕检测。更狠得可以hook SSDT(服务描述表)。

有些程序利用调试器的 bug,我们可以自己写个调试器,只具有基本的功能,
来完成脱壳不受影响。

不知道我在说什么呢。现在流行VM啊,一个opcode table把debugger搞得团团转,设计VM是体力活,解VM更是体力活,可能reverse技术发展到一定程度脱壳真地如loveboom说的走不远了。

写代码和调试的时候要听音乐,否则人真的会疯掉。

易语言这东西有前途。

一个好壳除了AntiDebug不能太软,输入表和代码处理分支要足够多,200个以上为佳。

有时间应该写个好的polymorphic engine,把drx解码嵌进去。

。。。。。。


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

收藏
免费 7
支持
分享
最新回复 (11)
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
多唱歌 哈哈 这样生活就有趣了
2005-10-22 20:32
0
雪    币: 398
活跃值: (343)
能力值: (RANK:650 )
在线值:
发帖
回帖
粉丝
3
关于Tls CallBack 应该是Import被装入后进入
进去的时候,能在Stack中看到ep, 出来后再走走就call ep了

其实进程在ExitProcess退出的时候, 还会进一次这个CallBack
大约是在ExitProcess中的LdrShutDownProcess中进的
当然如果喜欢用int2E或sysenter退进程就不会到那个地方了
2005-10-22 20:36
0
雪    币: 0
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
4
疯掉就疯掉,老子想疯还疯不了
2005-10-22 20:56
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
5
弹的不错
2005-10-22 21:31
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
弹JJ
2005-10-22 21:46
0
雪    币: 440
活跃值: (737)
能力值: ( LV9,RANK:690 )
在线值:
发帖
回帖
粉丝
7
曲高和寡
太高深,谈得听不懂

2005-10-22 22:00
0
雪    币: 61
活跃值: (160)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
8
弹的好!
2005-10-23 08:58
0
雪    币: 267
活跃值: (235)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
9
狠,vm的opcode多了速度慢,少了又不堪一击,如果能修改.net的VM,增加一些调试标志,嘿嘿,幻想ing.........
2005-10-23 09:13
0
雪    币: 99
活跃值: (2433)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
杞人忧天
2005-10-23 09:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
呵呵,我倒不认为加密保护的手段会导致reverse的终结.毕竟很多reverse分析的工作可以写程序交由电脑完成.只是reverse的难度会大大提高,不是一个会用olldbg的小菜鸟就可以搞定的了.
2005-10-23 13:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
顶你一下,8错
2005-10-23 18:30
0
游客
登录 | 注册 方可回帖
返回
//