再次轻度破解EXE文件
在经历股市多年的大起大落、大赚大赔之后。痛定思痛。深切感到在金融市场拼搏。必须建立健全交易纪律守则,严格运行。
这套完整的纪律守则,就是“交易系统”。
在很多方面,它与一般的专家系统相近似。
专家系统的最佳开发工具,是Erlang下的Eresye。它的缺点是。其它语言如C、Python对它的调用不方便。
假设主程序是C或Python,一般需将Eresye做成server。通过sockets通讯调用,比較麻烦。
在简单有用方面,Prolog是第二佳的开发工具。
假设仅仅採用其推理机功能,Visual Prolog 也是不错的选择。
我用的是Visual Prolog 5.2。
这是个免费软件,其编译的EXE、DLL文件执行之始,会弹出一个窗体:
为了不显示这个窗体,我先后试过几次,在5.0、5.1和旧版5.2下均获成功。
第一次的破解,是在Win98下用动态跟踪工具(忘记了名字),无休无眠地追了22个小时,找到关键分支点,绕过了窗体弹出指令。
上一次的破解,是在Win2000下用个静态分析工具(好像叫exescope。记不清了),看到exe文件里有两个函数调用。一个好像是openwindow,还有一个好像是closewindow,以及相相应的机器码指令。然后。在ultraEdit里,用CloseWindow的机器码。覆盖OpenWindow的机器码。于是。任务完毕。
这都多年前的事情。详细细节已记不清。
第一次的动态跟踪,事后曾写过篇幅庞大、十分具体的操作过程记录。但不知何故后来丢失,可惜。
以后的破解过程,都没做记录。
这次破解,仅仅好又一次開始,摸索前行。
一、准备工具
用google、baidu等,以“静态查看EXE"等句子搜索,找到几个软件,试过后,确定用PEbrowse。
又搜到机器码编辑器010Editor,工具备齐了(UltraEdit 为了收费会自己主动罢工,等等。非常讨厌,好多年不再用它)。
二、准备目标文件
用Visual Prolog 自己主动生成并编译一个空白项目,比方 learn01.exe。
三、使用PEbrowse
1、打开目标文件learn01.exe
2、展开左栏的Sections
3、双击当中的对象.text。右栏出现反汇编的代码
4、Ctrl-F键,搜索”messagebox“,找到:
0x44329F: FF1560044900 CALL DWORD PTR [USER32.DLL!MessageBoxA]; (0x490460)
5、记住机器码:FF1560044900
6、Ctrl-F键,搜索”destroywindow“,找到:
0x431D7E: FF153C034900 CALL DWORD PTR [USER32.DLL!DestroyWindow]; (0x49033C)
7、记住机器码:FF153C034900
8、关闭 PEbrowse。
四、使用 010Editor
1、打开目标文件learn01.exe
2、Ctrl-F键。打开Find窗体
在 Type 下拉框选择 Hex Bytes (H)
在 Value 文本框填入 FF1560044900
3、button Find All,会在编辑器中找到第一处的 FF1560044900
4、按键 F3 共计3次,定位于第4处 FF1560044900
5、把 FF1560044900 改为 FF153C034900
6、保存文件learn01.exe
7、执行learn01.exe,提示窗体Attention不再弹出。
注意!
确定第4处机器码,是逐次实验的结果。即:第1处 FF1560044900 改为 FF153C034900后。存盘。并执行。未达标,则恢复第1处代码,再改动第2处代码,存盘执行,……直至改动第4处代码。
再次轻度破解EXE文件的更多相关文章
- c#:Reflector+Reflexil 修改编译后的dll/exe文件
不知道大家有没有这样的经历:现场实施时测试出一个bug,明明知道某个dll/exe文件只要修改一二行代码即可,但手头没有开发环境,紧急情况下,可以用reflector + reflexil 临时直接修 ...
- [原创]Matlab之GUI生成EXE文件
近期因为项目需要,简化流程,写了一些Matlab程序,并配备上了GUI界面使其简单易用.然后问题来了,可移植性.使用Matlab生成EXE文件(可以封装很多的function),然后在一台安装有Mat ...
- 关于win7系统中所有exe文件都被以word方式打开的解决方法
手残一刻,电脑桌面所有的软件快捷方式都变成了word的打开方式,鼠标右键选中某exe文件也没打开方式那个选项, 第一次尝试: 在控制面板——默认程序中修改默认打开方式,但是没有找到解决方法
- 如何用DELPHI编程修改外部EXE文件的版本信
右击里面有修改 点开直接修改就可以了吧. DELPHI 里程序的版本信息怎么是灰色的,无法更改 耐心读以下说明,应该能解决你的问题,如果不能解决,请Hi我~ 如何给自己的dll文件添加版本信息呢? 首 ...
- 让我们写的程序生成单个的exe文件(C#winform程序举例)
一准备: 首先你要有自己写好的代码程序 然后你需要在百度搜索Enigma Virtual Box 6.90并下载,运行后可看到如何的界面 注意:首次启动是英文的,更改语言后再次启动就是中文了. 二制作 ...
- 如何在Ubuntu安装*.exe文件
下载及安装 若你使用 Debian 或者 Ubuntu 之类的发行版,只需要一个命令即可完成安装: apt-get install wine 若你使用的为其他发行版,请访问 http://winehq ...
- 用JSmooth制作java jar文件的可运行exe文件教程【图文】
这是我之前在个人博客3yj上面写的一篇文章,如今转载过来,原文地址 (这不是广告哦) 几年前,刚接触java的是,就想用一些方法把自己的劳动果实保护起来,曾经也用过非常多这种工具,有一个特别好用,今天 ...
- 使用JSmooth制造java jar文件可以运行exe文件教程图像
这是我之前在个人博客3yj上面写的一篇文章,如今转载过来,原文地址 (这不是广告哦) 几年前,刚接触java的是.就想用一些方法把自己的劳动果实保护起来,曾经也用过非常多这种工具.有一个特别好用,今天 ...
- 反编译python打包的exe文件
目录 1.前言 2.使用环境 3.还原过程 4.号外 5.exe文件和所用到的反编译工具 6.参考 7.去签名(补漏) 前言 拿到了利用驱动人生进行传播的病毒样本,发现是python打包成的exe文件 ...
随机推荐
- C语言程序设计做题笔记之C语言基础知识(上)
C语言是一种功能强大.简洁的计算机语言,通过它可以编写程序,指挥计算机完成指定的任务.我们可以利用C语言创建程序(即一组指令),并让计算机依指令行事.并且C是相当灵活的,用于执行计算机程序能完成的几乎 ...
- Mybatis 学习
1. Mybatis 中 # 与 $ 符号的区别: a. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号. 如:order by #user_id#,如果传入的值是12,那么解 ...
- python中enumerate的使用
在python的应用中,当我们使用一个数组或者列表的时候既要遍历索引又要遍历元素的时候通常的做法是这样的: >>> lsi = [1,2,3,4,5,6,7,8,9] >> ...
- 利用MSF溢出攻击讲解
msf的强大之处也就不做探讨了,虽然这些东西网上很多.但我想说说我的感受. 这次的演示是在BT5中远程攻击一台win2003 sp2 metasploit是4.3的 需要说明的一点是 现在的BT5中不 ...
- 虚拟机下ubuntu的minicom使用指南
整理自ubuntu下的minicom的使用 minicom是linux下串口通信的软件,它的使用完全依靠键盘的操作,虽然没有"超级终端"那么易用,但是使用习惯之后读者将会体会到它的 ...
- C++内存管理(超长,例子很详细,排版很好)
[导语] 内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不 ...
- OA的一些概念
今天的主题是OA的一些概念. 先来一段百度百科的定义: 办公自动化(Office Automation,简称OA)是将现代化办公和计算机网络功能结合起来的一种新型的办公方式. OA的目的是:通过实现办 ...
- Apache FileUpload详细介绍
Apache FileUpload组件 在最初的 http 协议中,没有上传文件方面的功能.RFC1867("Form-based File Upload in HTML".)为 ...
- replace empty char with new string,unsafe method和native implementation的性能比较
1: class Program 2: { 3: static void Main(string[] args) 4: { 5: string s = File.ReadAllText(@" ...
- 安卓开发无法识别手机原因之一:手机SDK比工程要求的最小SDK低
创建工程时,设置限制的最小SDK: 如果你手机的内核版本比你工程的设置的最小SDK低,则不显示 来自为知笔记(Wiz)