安全中国首页 > 文章中心 > 工具技巧
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

第四卷 OllyDBG 插件系列 第三篇 ODbgScript的脚本命令(2)(图)

更新时间:2008-9-30 1:04:22
责任编辑:果果龙
热 点:

作 者: hnhuqiong

4.流程控制类

我曾经教过一个小DD写脚本,他老是把OD的运行流程和ODbgScript的流程搞混淆了,这个概念要弄清除,作为新手常常弄不清这两个概念,而这两个概念是必须要弄明白的!要知道ODbgScript是一个脚本插件,它执行脚本的流程,靠脚本运行过程中各种返回值/计算值判断后,修改/控制/影响OD的流程.

还是打个比方吧:

ODbgScript是铁路传感/信号/道岔控制系统,OD就是列车,而各种返回值就是各种信号灯和传感器,列车的运行过程中,传感器系统不断的给出列车的各种运行状态,而ODbgScript就根据这些运行状态来调相应的运行时刻表让列车在控制的范围内运行.那么ODbgScript控制道岔系统就完成了一趟完整的调度系统. 大家都坐过火车吧??你喜欢的是打着信号灯的铁道工人?还是现代化的排灯/道岔控制系统???

对应上一章的中断系统,我们又换概念打比方了(呵呵,对于新手我还是感觉自己有自己的一套办法来教大家弄清这些的),断点在这里就是在铁轨上的信号灯,传感器它感受到了列车(OD)到这里了,马上给控制系统(ODbgScript)发回信号,控制系统知道列车在什么位置后,相应的控制---信号灯/道岔系统,列车就乖乖的听从我们的调度来运行了.脚本其实就是列车时刻表!!!而脚本内的标号就是所管理的机务段!

邓爷爷说:实现四个现代化,靠的是科技!

hnhuqiong说:OD逆向实现自动化,靠的是ODbgScript! (被愤怒的群众痛殴中!!!)

-----ODbgScript流程控制类

EOB :在下次中断发生时,跳转到指定标签处

COB :发生中断后,让脚本继续执行(移除EOB指令)

EOE :在下次异常发生时,跳转到指定标签处

COE :发生异常后,让脚本继续执行(移除EOE指令)

JA :大于则跳到指定标签处,在cmp命令后使用

JAE :大于等于则跳到指定标签处

JB :小于则跳到指定标签处,在cmp命令后使用

JBE :小于等于则跳到指定标签处

JE :等于则跳到指定标签处

JNE :不等于则跳到指定标签处

JMP :跳转到指定标签.

PAUSE :暂停脚本运行

RET :退出脚本

-----OD流程控制类

RUN :相当于在OllyDbg中按 F9

GO :执行到指定地址处 F4

ESTI :相当于在OllyDbg按 SHIFT-F7

ESTO :相当于在OllyDbg按 SHIFT-F9

STI :单步步入,相当于在OllyDbg中按 F7

STO :单步步过,相当于在OllyDbg中按 F8

RTR :相当于在OllyDbg中执行 "Run to return"操作 [Ctrl+F9]

RTU :相当于在OllyDbg中执行 "Run to user code"操作 [Alt+F9]

AI :在OllyDbg中执行“自动步入” [Animate into]操作 [Ctrl+F7]

AO :在OllyDbg中执行“自动步过” [Animate over]操作 [Ctrl+F8]

TI :相当于在OllyDbg中执行 "Trace into" 操作 [Ctrl+F11]

TO :相当于在OllyDbg中执行 "Trace over" 操作 [Ctrl+F12]

TICND :执行 "Trace into" 操作,直到条件为真时停止

TOCND :执行 "Trace over" 操作,直到条件为真时停止

TC :关闭Trace

LBL :在指定地址处插入一个标签

现在大家明白了ODbgScript可以给我们带来多少便利了吧????概念恐怕大家已清楚了,就不多讲解了.

其实,这些都是自动控制专业范围内的东西,刚好我本科是这个专业,所以比较轻车熟路. :)

现代化社会这些自动控制无所不在,只是你用上了却不一定留心它!

用一个复杂一点的脚本示意图我们简单的来进行类比,让大家牢牢记住它的(感谢FLY的FSG V1.X-2.X脚本)

1 2 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画