理解软件保护技术之警告(NAG)窗口
来源:互联网 发布:new balance淘宝 编辑:程序博客网 时间:2024/05/16 05:06
Nag的本义是烦人的意思。Nag窗口是软件设计者用来不时提醒用户购买正式版本的窗口。软件设计者可能认为当用户受不了试用版中的这些烦人的窗口时就会考虑购买正式版本。它可能会在程序启动或退出时弹出来,或者在软件运行的某个时刻随机或定时地弹出来,确实比较烦人。
去除警告窗口常用的三种方法是:修改程序的资源、静态分析,动态分析。
去除警告窗口用资源修改工具是个不错的方法,可以将可执行文件中的警告窗口的属性改成透明、不可见,这样就变相去除了警告窗口。
如果是动态跟踪调试,只需找到创建此窗口的代码,跳过即可。常用的显示窗口的函数有MessageBoxA、MessageBoxExA、MessageBeep 、 DialogBoxParamA 、ShowWindow、CreateWindowExA等。然而某些警告窗口用这些断点不管用,就可试试利用消息设断点,一般都应能拦截下来。
例:利用消息断点拦截警告窗口:
切换到SOFTICE下命令: HWND
应看到如下的类似信息:
在这些列表中查找相关应用程序的窗口句柄。如果NAG窗口上有OK按钮,在class name查找“button”。如果NAG窗口上什么都没有,那可试验找出正确的句柄。句柄列表可能非常长,但通常NAG窗口的句柄一般在列表的前面。
注:在这里推荐用SMU Winspector工具协助破解NAG.它能显示你所需要的信息:Window-Handle, Window-Class Name, Window-Text, Parent Window-Handle, Parent-Window Class Name, Parent Window-Text, Module ...
一但找到NAG窗口的句柄,应用BMSG命令在Windows的消息上下断点。现在假设NAG窗口有OK按钮,你己找到正确的句柄(handle),这时下命令:
BMSG 0084 WM_DESTROY
0084是NAG窗口的句柄(handle)。这条命令是NAG窗口从屏幕上消失时,SoftICE将中断。此时将深入到一些不认识的API函数,可按F12返回程序。需要指出,跟踪的目的是发现NAG窗口在何处初始化(在返回的CALL用设断)。NAG窗口大多用Created/Destroyed类似的CALL,因此如发现这些,就可按需要跟踪下去。 .
更多分享请关注:软信网-编程-http://www.iis365.net.cn
- 理解软件保护技术之警告(NAG)窗口
- 理解软件保护技术之序列号方式
- 理解软件保护技术之Key File保护
- 理解软件保护技术之采用时间限制
- 理解软件保护技术之功能限制的程序
- 去除nag窗口
- 对付nag窗口
- 去除Nag窗口
- 软件保护技术(软件注册机制)
- OD教程(去除NAG窗口--PE文件结构)
- 软件保护技术
- 软件保护技术
- 软件保护技术
- 逆向技巧 去Nag窗口
- 软件保护技术--常见保护技巧
- 常用的软件保护技术
- 关于去掉vb中的nag窗口
- 目前常见软件保护技术概述
- 类加载器
- 安全管理器
- 如何针对Yahoo搜索进行网站优化
- 面向对象的虚拟世界(WRVirtualWorld)概要设计
- 理解软件保护技术之功能限制的程序
- 理解软件保护技术之警告(NAG)窗口
- ASP.NET回车实现点击按钮操作
- 理解软件保护技术之序列号方式
- SQL常用语句
- P2P直播软件设计的技术原理和改进
- javascript 写的日期输入!!!
- 多核时代对并发程序设计的探索
- 卷3 5.3翻译完毕
- Ajax异步调用Web服务的例子