大家好,我是傲鳥,又和大家见面了呵呵~~今天为大家带来的教程是FSG2.0快速脱壳 完美修复!
目标程序:“S-Demo播放器”
先用PEiD查壳`查出是“FSG 2.0 - bart/xt”的壳~我们用OD载入它!抓狂啊!~!~刚刚不小心按下了屏幕录象专家的F2键`冲突了我都不知道`~把教程做完了才发现~~~现在只有给大家重新演示了啊~!~唉~~抱歉!~~~开始!~~
单步向下走注意右下角的变化!~大家看第四行的数值~~“0040B3DF”`我们在数据窗口中跟随它~~
下面在此处下断点`设置硬件执行断点~~F9运行,大家看~~到OEP了~~我们先把断点祛除然后在脱壳!~~
修正植“B3DF”记下~~我们来查下壳~~Microsoft Visual C 6.0,没壳了~~~运行下看~~ohNO~~我们来修复
下看是否能运行~~打开IF```看``有效的指针~~~我们来修复看看~~OK`看能不能运行~~郁闷~~还是运行不了~~
怎么办呢?其实是RAV,也就是起始位置和大小出了问题~~此壳对IF具有迷惑性哈~~~怎么办呢?我们看看
大家看0040B40C这里有ms....这个指针~~其实我们修复程序就是为了找回
真实的指针才能使程序正常运行~~~而我们刚自动让IF查又修复不了~~~那我们只有手动查找起始位置和大小了~~
看我操作~~~~~~在左下脚的地址那按Ctrl G输入指正地址0041247C,那里只显示了41247C是因为前面是00
所以OD给祛除了 ~~我们来试试``不好意思啊`因为我刚刚做了一遍所以已经转成了HEX8字节的了~大家按我说的做就能变成这样的!~然后在地址下面点右键-》HEX-》选8字节~~我们现在要做的是把鼠标滚向上面
找出全是000000的地方~~~大家看`到了这个6F B0前面就是空的了`也就是说那里就没有指针了~所以起始位置应该在
6F这个位置~为了方便我们就看地址的00411FFC哈~我们以它作为起始点~~因为是从那开始的所以还要减去一个程序的基址00400000,
那么就是他的起始位置00011FFC了~~~~呵呵`我们来试试```大小其实也是可以计算出来的`但是为了方便菜鸟朋友们我们就填1000,这样虽然会
带来许多的垃圾指针不过我们只要把它们剪切掉就没事了~~我们来看看~~获取~~点显示无效的指针!~然后右键-》剪切~~剪掉无效的指针~看``全是有效的了~~~我们来抓取修复下看能不能实现程序的运行!!
大家看~~~第二次抓取的文件,能运行了呵呵~~那么教程就到这里了~~再见咯各位!
QQ:360134751
技术交流群:4115887or30778259
BYE-BYE!!!
点击高速下载
点击高速下载