通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
关于注册Flag在破解中的应用
责任编辑:酷酷の鱼   更新日期:2008-2-17
 

众所周知,目前很多共享软件现在都使用全局变量,作为软件注册与否的标志,在汇编中体现为在某个内存地址中,存入1或0,往往1代表已注册,0为共享状态,计算机专业用语中,这个内存地址称之为FLAG,当程序运行时,初始化值为0,读取windoz注册表或*.ini文件中的注册信息后,若已注册,那么flag值变为1,否则,继续保持为0,程序的其他部分可以访问这个flag,维持软件的共享状态。一般情况下,我们只是非常关注一些跳转,crack时有时很难见效!如果熟练掌握了注册Flag,在破解软件中有时会起到事半功倍的效果!下面我以一个教育教学软件为例,说明此法的应用。 有不当之处,垦请各位大虾指正! 
        工具:Wdasm 8.93增强版:注[它可以直接查找汉字,对各种防止静态反编译的软件也可以反编译,如果没有的话,可以到:http://personal.dfminfo.com.cn/~kuangren处下载]                            Hacker view 很多版本都可以! 
        对象:金数龙光学物理实验室 v1.01  可以到:http://luckteacher.yeah.net物理软件中下载! 
        软件的保护:未注册时,程序启动时显示注册信息,共享时有功能限制,保存器件不能多于一个,程序未被压缩!程序运行时,在当前目录中产生s_data.obj文件,用来存放注册信息,注册成功后,注册信息就存放在此文件中,启动时,读此信息,显示在窗体上"属于xxx  xxx".如果删除此文件,启动后仍显示未注册!属共享状态! 
        开始:执行仿真物理实验室.exe,跳出NAGS,要求注册等等,随意填写注册,对话框为"注册不成功"。关闭程序,检查一下,没加壳!太好了!(-_-)用Wdasm增强版反编译,查找"注册不成功"立即找到,注[可能显示为乱码,可启动Richwin或类似的软件即可看清汉字,但这毕竟不影响]代码如下:[共有两处] 
        :004370B1 8D45FC                  lea eax, dword ptr [ebp-04] 
:004370B4 E86342FDFF              call 0040B31C 
:004370B9 50                      push eax 
:004370BA 8D95A8F7FFFF            lea edx, dword ptr [ebp+FFFFF7A8] 
:004370C0 52                      push edx 
:004370C1 E8CEF10600              call 004A6294 
:004370C6 83C408                  add esp, 00000008 
:004370C9 33C9                    xor ecx, ecx 
:004370CB 894D8C                  mov dword ptr [ebp-74], ecx 
:004370CE 894D90                  mov dword ptr [ebp-70], ecx 
:004370D1 33C0                    xor eax, eax 
:004370D3 894588                  mov dword ptr [ebp-78], eax 

* Referenced by a (U)nconditional or (C)onditional Jump at Address: 
|:0043714E(C) 

:004370D6 8B5588                  mov edx, dword ptr [ebp-78] 
:004370D9 80BC15A8F7FFFF00        cmp byte ptr [ebp+edx-00000858], 00 
:004370E1 90                      nop 
:004370E2 90                      nop 
:004370E3 8B4D88                  mov ecx, dword ptr [ebp-78] 
:004370E6 0FBE840DA8F7FFFF        movsx eax, byte ptr [ebp+ecx-00000858] 
:004370EE 8985A4F7FFFF            mov dword ptr [ebp+FFFFF7A4], eax 
:004370F4 DB85A4F7FFFF            fild dword ptr [ebp+FFFFF7A4] 
:004370FA 83C4F8                  add esp, FFFFFFF8 
:004370FD DD1C24                  fstp qword ptr [esp] 
:00437100 E88F3A0700              call 004AAB94 
:00437105 83C408                  add esp, 00000008 
:00437108 DB2D64744300            fld tbyte ptr [00437464] 
:0043710E DEC9                    fmulp st(1), st(0) 
:00437110 83C4F8                  add esp, FFFFFFF8 
:00437113 DD1C24                  fstp qword ptr [esp] 
:00437116 E895510700              call 004AC2B0 
:0043711B 83C408                  add esp, 00000008 
:0043711E D80D70744300            fmul dword ptr [00437470] 
:00437124 DC0574744300            fadd qword ptr [00437474] 
:0043712A 83C4F8                  add esp, FFFFFFF8 
:0043712D DD1C24                  fstp qword ptr [esp] 
:00437130 E82F380700              call 004AA964 
:00437135 83C408                  add esp, 00000008 
:00437138 D80D7C744300            fmul dword ptr [0043747C] 
:0043713E DC458C                  fadd qword ptr [ebp-74] 
:00437141 DD5D8C                  fstp qword ptr [ebp-74] 
:00437144 FF4588                  inc [ebp-78] 
:00437147 817D88D0070000          cmp dword ptr [ebp-78], 000007D0 
:0043714E 7C86                    jl 004370D6 
:00437150 66C745B45000            mov [ebp-4C], 0050 
:00437156 66C745B45C00            mov [ebp-4C], 005C 
:0043715C 8D45E0                  lea eax, dword ptr [ebp-20] 
:0043715F E844A7FCFF              call 004018A8 
:00437164 8BD0                    mov edx, eax 
:00437166 FF45C0                  inc [ebp-40] 
:00437169 8B4DA0                  mov ecx, dword ptr [ebp-60] 
:0043716C 8B81F0020000            mov eax, dword ptr [ecx+000002F0] 
:00437172 E885F70300              call 004768FC 
:00437177 8D45E0                  lea eax, dword ptr [ebp-20] 
:0043717A E885B60700              call 004B2804 
:0043717F DD5D94                  fstp qword ptr [ebp-6C] 
:00437182 FF4DC0                  dec [ebp-40] 
:00437185 8D45E0                  lea eax, dword ptr [ebp-20] 
:00437188 BA02000000              mov edx, 00000002 
:0043718D E8AAB40700              call 004B263C 
:00437192 66C745B41400            mov [ebp-4C], 0014 
:00437198 EB5F                    jmp 004371F9 
:0043719A 6A00                    push 00000000 

* Possible StringData Ref from Data Obj ->"提示" 
                                  | 
:0043719C B929234C00              mov ecx, 004C2329 

* Possible StringData Ref from Data Obj ->"注册不成功。" 
                                  | 
:004371A1 BA1C234C00              mov edx, 004C231C 
:004371A6 A18C714C00              mov eax, dword ptr [004C718C] 
:004371AB 8B00                    mov eax, dword ptr [eax] 
:004371AD E84EB30700              call 004B2500 
:004371B2 8B45A0                  mov eax, dword ptr [ebp-60] 
:004371B5 E86E1A0300              call 00468C28 
:004371BA FF4DC0                  dec [ebp-40] 
:004371BD 8D45F8                  lea eax, dword ptr [ebp-08] 
:004371C0 BA02000000              mov edx, 00000002 
:004371C5 E872B40700              call 004B263C 
:004371CA FF4DC0                  dec [ebp-40] 
:004371CD 8D45FC                  lea eax, dword ptr [ebp-04] 
:004371D0 BA02000000              mov edx, 00000002 
:004371D5 E862B40700              call 004B263C 
:004371DA 33C9                    xor ecx, ecx 
:004371DC 894DC0                  mov dword ptr [ebp-40], ecx 
:004371DF 8D45A4                  lea eax, dword ptr [ebp-5C] 
:004371E2 50                      push eax 
:004371E3 E8E78A0700              call 004AFCCF 
:004371E8 59                      pop ecx 
:004371E9 E96C020000              jmp 0043745A 
:004371EE 66C745B45800            mov [ebp-4C], 0058 
:004371F4 E82C840700              call 004AF625 

* Referenced by a (U)nconditional or (C)onditional Jump at Address: 
|:00437198(U) 

[1] [2] [3] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    推荐文章 瑞星公司02月17日发布 每日计算机病毒及木马播报
    普通文章 关于注册Flag在破解中的应用
    普通文章 另类的杀毒方法 Windows的安全模式下杀毒
    普通文章 “全国QQ被盗第一案”一审判决 QQ号不属于刑法保护财
    普通文章 iPhone SDK(软件开发包)遭泄
    普通文章 思科首次发表全球年度安全报告(2007)
    普通文章 苹果在音乐文件中暗留用户数据
    普通文章 印度杀毒软件厂商AvSoft网站被黑
    普通文章 Sophs:俄罗斯已成为垃圾邮件超级大国
    普通文章 PDF最新漏洞可能已导致数千人受攻击
    热门文章
    普通文章上网购物 “拜年”病毒须提防
    普通文章国家计算机病毒中心提醒春节要防范网游大盗等病毒
    普通文章遭Alexa“恶搞” 腾讯变成火葬网?
    普通文章“玛格尼亚”变种bde修改注册表 自动运行
    普通文章网上发布“传奇私服”广告 四川夫妇被判罚百万
    普通文章Google炮轰微软 称其收购雅虎是为垄断互联网
    普通文章OpenBSD rtlabel_id2name()本地拒绝执行服务漏洞
    普通文章Visual FoxPro的vfp6r.dll ActiveX 代码执行漏洞
    普通文章Trw2k1.11 时间过期和注册提示框去处
    普通文章用W32DASM破解Macro MagicV4.1p时间限制
    精彩专题