自制反汇编逆向分析工具 迭代第二版本

上一篇介绍了我的工具选用了bash和html5,以及基础的可视化分析功能。

本篇则是基于上一版本,迭代功能的版本。先看一下效果图。

 

再一张过滤寄存器rbx和mov数据传送指令,(当然还包括一个小虫,有一处rbx没有显示正确的颜色。)

这个版本增加了汇编码与可视分析图关联对应的功能:1个代码显示区域,2个代码过滤功能按键(分别是指令操作和指令操作寄存器的过滤),1个放缩倍数功能按键。

1.汇编码在最右则新增加的区域中显示,并且显示位置与指令在代码段中偏移位置对应。

2.汇编代码区可以选择过滤某一寄存器相关的指令操作。以及可以过滤去立即数相关的指令操作。

3.如果某一寄存器被选择作为过滤目标,寄存器对应的不同位的使用也作为过滤目标。例如rax,对应rax,eax,ax,ah和al。

4.如果寄存器过滤选择了none,汇编代码区将完整显示全部代码。

5.在寄存器过滤器选择了某一寄存器的情况下,指令操作过滤器作为二级过滤起作用。

6.指令操作过滤器,目前版本只对数据传送指令和比较检测指令提供支持。

7.对数据传送指令的过滤功能为,将指令分为四类,非数据传送指令的指令以灰色显示,数据传送指令由另外三类组成,红色目的操作寄存器被修改,蓝色目的操作寄存器寻址内存单元被修改,绿色为源操作寄存器读访问。

8.对比较检测指令的过滤功能只将指令高亮。

9.放缩功能,是因为显示代码是按指令在代码段的偏移位置作为排版的依据,放缩是提供垂直方向上的位移单位。

 

本工具还在开发,还有其它用途的工具。

最后谢谢路过的你观看。

 

PS: html5 javascript编程用到算法数据结构都是以apple sdk的cf基础库和mach内核代码的queue.h为基础,就是将c的东西和算法思想移植过去,并不是说舍弃本业。

posted on 2016-03-28 16:42  bbqz007  阅读(571)  评论(0编辑  收藏  举报