吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 15690|回复: 23
收起左侧

[原创] WIN7下不能断下CreateFileA的秘密

  [复制链接]
yangand 发表于 2012-5-17 23:20
      玩破解的朋友用WIN7系统的多吗?我是一直在用WIN7的。用过的朋友应该知道在WIN7系统下,用OD破解或者脱壳的时候,BP CreateFileA无论怎么样都断不下来。但这个断点对我们来说太重要了,去文件自校验,你得用到它吧,破解KEYFILE验证你还得用到它吧,WIN7下下不了这个断点是很纠结的事情。
      我们先在OD里CTRL+G来定位一下CreateFileA这个API
75EB62D1 >    8BFF          mov edi,edi    来到这里
75EB62D3  /.  55            push ebp
75EB62D4  |.  8BEC          mov ebp,esp
75EB62D6  |.  51            push ecx
75EB62D7  |.  51            push ecx
75EB62D8  |.  FF75 08       push dword ptr ss:[ebp+8]
75EB62DB  |.  8D45 F8       lea eax,dword ptr ss:[ebp-8]
75EB62DE  |.  50            push eax
75EB62DF  |.  E8 3127FDFF   call KERNELBA.75E88A15
75EB62E4  |.  85C0          test eax,eax
75EB62E6  |.  75 05         jnz short KERNELBA.75EB62ED
75EB62E8  |.  83C8 FF       or eax,FFFFFFFF
75EB62EB  |.  EB 2A         jmp short KERNELBA.75EB6317
75EB62ED  |>  56            push esi
75EB62EE  |.  FF75 20       push dword ptr ss:[ebp+20]                       ; /hTemplateFile
75EB62F1  |.  FF75 1C       push dword ptr ss:[ebp+1C]                       ; |Attributes
75EB62F4  |.  FF75 18       push dword ptr ss:[ebp+18]                       ; |Mode
75EB62F7  |.  FF75 14       push dword ptr ss:[ebp+14]                       ; |pSecurity
75EB62FA  |.  FF75 10       push dword ptr ss:[ebp+10]                       ; |ShareMode
75EB62FD  |.  FF75 0C       push dword ptr ss:[ebp+C]                        ; |Access
75EB6300  |.  FF75 FC       push dword ptr ss:[ebp-4]                        ; |FileName
75EB6303  |.  E8 6044FDFF   call KERNELBA.CreateFileW                        ; \CreateFileW

我们来在OD的模块窗口看一下这个地址是属于哪里的。
基址       大小    ? 入口       名称     (系统)       文件版本                      路径
00400000   000AC000   00447BEF   运行我                     1.0.0.0                       C:\Users\yangan\Desktop\运行我.exe
714E0000   00032000   714E37F1   WINMM    (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\WINMM.dll
72330000   00051000   7235988C   WINSPOOL (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\WINSPOOL.DRV
72390000   00084000   723919A9   COMCTL32                5.82 (win7_rtm.090713-1255)   C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.17514_none_ec83dffa859149af\COMCTL32.dll
75E80000   0004A000   75E87E30   KERNELBA (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\KERNELBASE.dll
760D0000   0007B000   760D1AEE   comdlg32 (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\comdlg32.dll
76270000   000D4000   762BCD6F   kernel32 (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\kernel32.dll
763E0000   000A1000   76412433   RPCRT4   (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\RPCRT4.dll
766D0000   0000A000   766D136C   LPK      (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\LPK.dll
766E0000   00035000   766E145D   WS2_32   (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\WS2_32.dll
76720000   000AC000   7672A472   msvcrt   (系统)           7.0.7601.17744 (win7sp1_gdr.  C:\Windows\system32\msvcrt.dll
767D0000   00057000   767E9BA6   SHLWAPI  (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\SHLWAPI.dll
769A0000   000C9000   769BD711   USER32   (系统)           6.1.7601.17514 (win7sp1_rtm.  C:\Windows\system32\USER32.dll
76A70000   000CC000   76A7168B   MSCTF    (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\MSCTF.dll
76B40000   000A0000   76B549E5   ADVAPI32 (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\ADVAPI32.dll
76BE0000   0009D000   76C13FD7   USP10    (系统)           1.0626.7601.17514 (win7sp1_r  C:\Windows\system32\USP10.dll
76C80000   00C4A000   76D015C1   SHELL32  (系统)           6.1.7601.17514 (win7sp1_rtm.  C:\Windows\system32\SHELL32.dll
778D0000   0004E000   778D9C09   GDI32    (系统)           6.1.7601.17514 (win7sp1_rtm.  C:\Windows\system32\GDI32.dll
77AE0000   0015C000   77B2BA3D   ole32    (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\ole32.dll
77C40000   0013C000              ntdll    (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\SYSTEM32\ntdll.dll
77D90000   0001F000   77D91355   IMM32    (系统)           6.1.7601.17514 (win7sp1_rtm.  C:\Windows\system32\IMM32.DLL
77DB0000   00006000   77DB1782   NSI      (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\system32\NSI.dll
77DC0000   00019000   77DC4975   sechost  (系统)           6.1.7600.16385 (win7_rtm.090  C:\Windows\SYSTEM32\sechost.dll
77DE0000   0008F000   77DE3FB1   OLEAUT32 (系统)           6.1.7601.17676                C:\Windows\system32\OLEAUT32.dll

       我们发现这个地址是属于KERNELBASE.dll,也就是我们在下BP CreateFileA断点的时候,实际上是断在了kernelbase.dll的CreateFileA函数了。学过一般脱壳的人都知道,一般程序调用里模块里是没有kernelbase.dll的。而只调用kernel32的CreateFileA. 我在XP环境下,用OD加载同一个程序,就没有kernelbase.dll这个模块。这里其实是在OD里,kernel32.dll里的CreateFileA被kernelbase.dll的CreateFileA给屏蔽掉了。其实不只CreateFileA, CreateThread也被屏蔽掉了。我相信还有其它的N多个,不过我还没发现,因为我今天才发现这个秘密。  
      其它OD里被他屏蔽掉,我们还是一样可以下断点的。我在NOOBY给别人回帖中找到了答案。
      只要Ctrl+G, 输入"kernel32.CreateFileA",我们就可以定位到kernel32的CreateFileA了,在这里下断,我们就可以拦下程序了。同理一样可以定位CreateThread.
      希望此文能给在WIN7系统下玩脱壳破解的朋友带来一点帮助。
      在此膜拜大牛前辈NOOBY。


发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

ziv 发表于 2015-3-13 21:26
原来如此                 ,
骇客之技术 发表于 2015-3-11 23:33
感谢,今天确实碰到这个问题,自带的API断点函数没有断错地方,而BP CreateFileA确实会出问题。
lp123sun 发表于 2012-5-17 23:36
WinArc 发表于 2012-5-17 23:46
用的ollyice带的断点插件。。还一直没注意这个问题。
332595 发表于 2012-5-18 01:19
论坛需要这样的网友大力支持。。。
1206248470 发表于 2012-5-18 07:39
先记下这个,我也是win7,遇到过的软件都能断下来,还没碰到过这种情况,说不定以后会用到
xie83544109 发表于 2012-5-18 20:45

又学到了一点点哟
fuxz2010 发表于 2012-5-26 23:05
感谢原创的探索
mlwy 发表于 2012-5-27 21:45
这种探索很有意义,谢谢分享
toor 发表于 2012-9-25 10:57
支持。终于找到原因了。不过我为什么可以给CreateFileW下断呢。不过条件断点还是有问题。
winxx 发表于 2013-1-30 02:08
原来这样,俺是初学者,也遇到这个问题.
百度之,又回到了俺们论坛...
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 12:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表