20.IDA-修改二进制文件、显示修改点
2016-10-13 17:23
190 查看
原文地址:
可用选项如图所示
这个对话框显示了从光标所在位置开始的16个字节的值。你可以更改显示的部分或全部字节。
同时,Address表示了虚拟地址,File offset表示了文件偏移量。
实际上,Hex View可以直接改字节,右键Edit即可
但不如人愿:
点击最右边的Help,我们可以找到答案:
所以写成push aQqres就OK了
DIF文件是一个纯文本文件,其中列出了一个IDA数据库中所有被修改的字节。
这个文件的第一行是注释,第一行是最初的二进制文件的名称,随后则是文件中被修改的字节列表。每一行都指出被修改的字节的文件偏移量(而非虚拟地址)、字节的原始值以及字节在数据库中的当前值。
1.功能选项
Edit▶Patch Program菜单是GUI版本的IDA的一项隐藏功能,用户需要编辑idagui.cfg配置文件才能激活该菜单可用选项如图所示
1.1.Change byte
用于编辑IDA数据库中的字节值。相关的字节编辑对话框如图所示这个对话框显示了从光标所在位置开始的16个字节的值。你可以更改显示的部分或全部字节。
同时,Address表示了虚拟地址,File offset表示了文件偏移量。
实际上,Hex View可以直接改字节,右键Edit即可
1.2.Change word
功能更有限,感觉没必要介绍了1.3.Assemble
利用“汇编”选项可以输入使用一个内部汇编器汇编的汇编语言语句。然后,IDA会将得到的指令字节写入当前的屏幕位置但不如人愿:
点击最右边的Help,我们可以找到答案:
<code class="hljs applescript has-numbering">This command allows you <span class="hljs-keyword">to</span> assemble instructions. Currently, only <span class="hljs-keyword">the</span> IBM PC processors provide an assembler, nonetheless, plugin writers can extend <span class="hljs-keyword">or</span> totally replace <span class="hljs-keyword">the</span> built-<span class="hljs-keyword">in</span> assembler <span class="hljs-keyword">by</span> writing their own. The assembler requires <span class="hljs-keyword">to</span> enclose all memory references <span class="hljs-keyword">into</span> square brackets. For example: mov ax, [counter] Also, <span class="hljs-keyword">the</span> keyword '<span class="hljs-command">offset</span>' must <span class="hljs-keyword">not</span> be used. Instead <span class="hljs-keyword">of</span> mov eax, <span class="hljs-command">offset</span> <span class="hljs-property">name</span> you must <span class="hljs-command">write</span> mov eax, <span class="hljs-property">name</span></code><ul style="" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li><li>7</li><li>8</li><li>9</li><li>10</li></ul><ul style="" class="pre-numbering"><li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li><li>7</li><li>8</li><li>9</li><li>10</li></ul>
所以写成push aQqres就OK了
1.4.Apply patches to input file
把改动更新到二进制文件中2.DIF显示被修改的地方
Produce file▶Create DIF fileDIF文件是一个纯文本文件,其中列出了一个IDA数据库中所有被修改的字节。
这个文件的第一行是注释,第一行是最初的二进制文件的名称,随后则是文件中被修改的字节列表。每一行都指出被修改的字节的文件偏移量(而非虚拟地址)、字节的原始值以及字节在数据库中的当前值。
相关文章推荐
- 20.IDA-修改二进制文件、显示修改点
- 20.IDA-修改二进制文件、显示修改点
- 20.IDA-修改二进制文件、显示修改点
- 20.IDA-修改二进制文件、显示修改点
- 修改Listctrl的显示Style
- 直接修改TWebBrowser显示内容
- *.cpl文件的妙用(随意修改cpu显示数据,内存显示随意修改等等)
- 05-01-14 关键字高亮显示的算法进行修改
- 通过修改视图来修改首页显示标题字体过小的问题
- 在VC中调用WORD(显示,修改,存盘,运行宏)之二去掉word的常用,格式工具栏
- 从MapX到MapXtreme2004[10]-根据zoom值修改显示范围
- 针对这一段时间ASP.NET版中比较集中突出的问题,我写了一个完整的页面,包含显示/修改/删除/添加/排序/合并/写文件/显示图片或文档,有详细代码注释
- 用户控件(显示用户信息,修改用户名密码)的WebPart预览版
- XML文件显示、修改、查找
- 修改phpmyadmin的默认显示字体
- 带客户端脚本的图片控件,可利用后台代码修改图片显示(C#代码)
- 修改XPMenu让ToolButton在Down=True时正确显示
- 写了一个将VxWorks的shell打印输出到指定内存中的接口,可广泛用于CLI下的调试函数显示以及故障自动捕获等功能,稍作修改可以适合其它嵌入式OS
- 修改Firefox的Adblock,屏蔽其状态栏的显示文字
- 修改CCS首页显示的论坛帖子和Blog日志的数量