首页
论坛
课程
招聘
发一个简单修复aspr2.1 iat的脚本
2006-9-15 19:21 5221

发一个简单修复aspr2.1 iat的脚本

2006-9-15 19:21
5221
//还原ASProtect 2.1x SKE 代码段 call 011B0000 的 api

//这个版本的aspr异常特点是2个int3异常

//ollydbg,ollyscript,patch结合的例子

//program by jskew 2006-9-15 19:12

#log
var GetModuleFileNameA
var patch_addr
var patch_end
var tmp
var tmp2
var oep_addr
var saveapi
var cbase
var csize
var getapi

gpa "GetModuleFileNameA", "kernel32.dll"
mov GetModuleFileNameA,$RESULT

GMI eip, CODEBASE
mov cbase,$RESULT
GMI eip, CODESIZE
mov csize,$RESULT

bp GetModuleFileNameA //壳delphi程序入口
esto
bc GetModuleFileNameA
rtu

find eip,#8B551429D08945FC# //得到api
mov getapi,$RESULT

find eip,#31C031DB648F0383C404# //int3异常后出来的地址
bp $RESULT
esto
esto
bc $RESULT

bprm cbase,csize
esto
bpmc
mov oep_addr,eip

exec
push 40h
push 1000h
push 1000h
push 0
call VirtualAlloc
ende
mov patch_addr,eax
mov tmp,eax

/*
_codebegin        equ 0h
_codeend        equ 4h
_iatbegin        equ 8h
_iatend                equ 0ch

_esp                equ 10h //保存esp的地址,建议用_codeend的地址
_api                equ 14h //保存api的地址,建议用_codeend+4的地址
_magiccall        equ 18h
*/

mov [tmp],cbase
add tmp,4
mov tmp2,cbase
add tmp2,csize
sub tmp2,10
mov [tmp],tmp2
add tmp,4
mov [tmp],0047E000
add tmp,4
mov [tmp],0047E5C0
add tmp,4

mov [tmp],tmp2
add tmp,4
add tmp2,4
mov [tmp],tmp2
add tmp,4
mov [tmp],010C0000
add tmp,4
mov [tmp],0
add tmp,4

add patch_addr,50
mov [patch_addr],#60E8000000005F81E700FFFFFF8B57108997910000008997B60000008B57148997AF0000008997BE0000008B17803AE8755E8B5A0103DA83C3053B5F18755160B8246987248920FFE290909064FF35000000006AFF648925000000005B5BBB246987248903B8246987248B2061B8246987248B188B47083918740A83C0043B470C72F4EB1166C702FF1589420283C205423B5704729761909090EBFB#

mov eip,patch_addr

find eip,#90909064FF35# //patch保存api
mov saveapi,$RESULT

find eip,#9090EBFB# //patch结束
mov patch_end,$RESULT
bp patch_end

bphws getapi,"x"

leb1:
esto
cmp eip,getapi
jne over
mov eip,saveapi
jmp leb1

over:
bphwc getapi
bc patch_end
mov eip,oep_addr
ret

------------------------------------------------------

修改了下代码,省去手动输入4个patch参数

测试其他程序要设置3个参数

_iatbegin        equ 8h
_iatend        equ 0ch

_magiccall        equ 18h

测试软件,如果要测试,可能还要修改_magiccall的参数

iat用例子的就可以
http://www.xlightftpd.com/download/setup.exe

【看雪培训】《Adroid高级研修班》2022年夏季班招生中!

收藏
点赞0
打赏
分享
最新回复 (8)
雪    币: 106
活跃值: 活跃值 (355)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
nbw 活跃值 24 2006-9-15 19:23
2
0
支持小圈!
雪    币: 27
活跃值: 活跃值 (26)
能力值: ( LV9,RANK:970 )
在线值:
发帖
回帖
粉丝
wynney 活跃值 24 2006-9-15 19:50
3
0
楼主发个测试文件看看
刚才试了下好象不行
雪    币: 200
活跃值: 活跃值 (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
girl 活跃值 1 2006-9-15 19:59
4
0
------
雪    币: 214
活跃值: 活跃值 (319)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xingbing 活跃值 2006-9-15 21:30
5
0
支持,这个脚本我还是第一次见。
雪    币: 7017
活跃值: 活跃值 (2996)
能力值: (RANK:1130 )
在线值:
发帖
回帖
粉丝
海风月影 活跃值 22 2006-9-15 23:04
6
0
哇,难怪这几天没你消息,原来在搞这个啊
雪    币: 0
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
bestchao 活跃值 1 2006-9-16 08:14
7
0
国人是牛人啊 一出手就是精华
雪    币: 199
活跃值: 活跃值 (160)
能力值: ( LV12,RANK:2670 )
在线值:
发帖
回帖
粉丝
KuNgBiM 活跃值 66 2006-9-16 18:34
8
0
收藏!!!!!
雪    币: 205
活跃值: 活跃值 (95)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
softbihu 活跃值 3 2006-9-16 19:55
9
0
呵呵,这个还简单啊,我觉得算很了不起了,呵呵~
游客
登录 | 注册 方可回帖
返回