首页
社区
课程
招聘
求助:在跟踪一软件时遇到sysenter问题,不知如何解决。
发表于: 2006-6-23 15:50 4373

求助:在跟踪一软件时遇到sysenter问题,不知如何解决。

2006-6-23 15:50
4373
在跟踪一软件时,如果不进入JMP.&kernel32.DeviceIoControl,就出错,进去后遇到SYSENTER,就退出来了,不知道如何解决?代码如下:

005EDBEF  |.  6A 00         PUSH 0                                   ; /pOverlapped = NULL
005EDBF1  |.  8D55 F8       LEA EDX,DWORD PTR SS:[EBP-8]             ; |
005EDBF4  |.  52            PUSH EDX                                 ; |pBytesReturned
005EDBF5  |.  6A 0C         PUSH 0C                                  ; |OutBufferSize = C (12.)
005EDBF7  |.  8D4D E8       LEA ECX,DWORD PTR SS:[EBP-18]            ; |
005EDBFA  |.  51            PUSH ECX                                 ; |OutBuffer
005EDBFB  |.  6A 0C         PUSH 0C                                  ; |InBufferSize = C (12.)
005EDBFD  |.  8D45 E8       LEA EAX,DWORD PTR SS:[EBP-18]            ; |
005EDC00  |.  50            PUSH EAX                                 ; |InBuffer
005EDC01  |.  68 1C002200   PUSH 22001C                              ; |IoControlCode = 22001C
005EDC06  |.  FF75 08       PUSH DWORD PTR SS:[EBP+8]                ; |hDevice
005EDC09  |.  E8 429CE1FF   CALL <JMP.&kernel32.DeviceIoControl>     ; \DeviceIoControl跟进去代码如:7C801625
005EDC0E  |.  8945 FC       MOV DWORD PTR SS:[EBP-4],EAX             ;  eax值为0时就错,eax值为1就对。
005EDC11  |.  8B55 FC       MOV EDX,DWORD PTR SS:[EBP-4]
005EDC14  |.  85D2          TEST EDX,EDX

7C801625 >  6A 14           PUSH 14
7C801627    68 C80C817C     PUSH kernel32.7C810CC8
7C80162C    E8 9A0E0000     CALL kernel32.7C8024CB
7C801631    8B4D 0C         MOV ECX,DWORD PTR SS:[EBP+C]
7C801634    8BC1            MOV EAX,ECX
7C801636    25 0000FFFF     AND EAX,FFFF0000
7C80163B    3D 00000900     CMP EAX,90000
7C801640    0F95C0          SETNE AL
7C801643    8B75 24         MOV ESI,DWORD PTR SS:[EBP+24]
7C801646    33DB            XOR EBX,EBX
7C801648    FF75 1C         PUSH DWORD PTR SS:[EBP+1C]
7C80164B    FF75 18         PUSH DWORD PTR SS:[EBP+18]
7C80164E    FF75 14         PUSH DWORD PTR SS:[EBP+14]
7C801651    FF75 10         PUSH DWORD PTR SS:[EBP+10]
7C801654    51              PUSH ECX
7C801655    3BF3            CMP ESI,EBX
7C801657    75 3E           JNZ SHORT kernel32.7C801697
7C801659    3AC3            CMP AL,BL
7C80165B    8D45 DC         LEA EAX,DWORD PTR SS:[EBP-24]
7C80165E    50              PUSH EAX
7C80165F    53              PUSH EBX
7C801660    53              PUSH EBX
7C801661    53              PUSH EBX
7C801662    FF75 08         PUSH DWORD PTR SS:[EBP+8]
7C801665    0F84 D8000000   JE kernel32.7C801743
7C80166B    FF15 3810807C   CALL DWORD PTR DS:[<&ntdll.NtDeviceIoCon>; ntdll.ZwDeviceIoControlFile
7C801671    3D 03010000     CMP EAX,103
7C801676    0F84 B0000000   JE kernel32.7C80172C
7C80167C    3BC3            CMP EAX,EBX
7C80167E    0F8C CA000000   JL kernel32.7C80174E
7C801684    8B45 20         MOV EAX,DWORD PTR SS:[EBP+20]
7C801687    8B4D E0         MOV ECX,DWORD PTR SS:[EBP-20]
7C80168A    8908            MOV DWORD PTR DS:[EAX],ECX
7C80168C    33C0            XOR EAX,EAX
7C80168E    40              INC EAX
7C80168F    E8 770E0000     CALL kernel32.7C80250B   跟进去代码如下:
7C801694    C2 2000         RETN 20

7C92EB8B >  8BD4            MOV EDX,ESP
7C92EB8D    0F34            SYSENTER
7C92EB8F    90              NOP
7C92EB90    90              NOP
7C92EB91    90              NOP
7C92EB92    90              NOP
7C92EB93    90              NOP
7C92EB94 >  C3              RETN

请高手指导,谢谢。

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
2
sysenter指令会进入0级,想继续跟就得用SoftIce。
2006-6-23 16:51
0
雪    币: 210
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
步过7C80250B行不行?
2006-7-2 23:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
步过不行,进入才能读写软件锁。
2006-7-3 17:29
0
游客
登录 | 注册 方可回帖
返回
//