首页
社区
课程
招聘
RORDbg 0.29版
发表于: 2006-5-31 20:52 27161

RORDbg 0.29版

2006-5-31 20:52
27161

                RORDbg V0.29

这是一个用虚拟机技术实现的简易Debugger,主要用于外壳分析和脱壳,目前只能跑exe文件的主线程。
这个工具仅仅可以作为分析外壳辅助手段,因为是虚拟执行每条指令,所以,速度很慢。

更新日志:
V0.29
        虚拟机的速度有所提升;
        修正了界面中“API调用暂停”选项不能取消的问题。
V0.28
        修复了程序异常的BUG。
V0.27
        增加了一个浮动提示窗口
        DATA窗口增加了数据更改反馈,修改的数据被红色提醒显示
        由于卡巴报病毒,sample.exe从压缩包里去除了。
V0.26
        界面进行了修饰,窗口可以缩放并可以最大化
        增加了DATA窗口,可以编辑内存数据,先使用D命令确定内存位置
        增加了一个异常的处理
V0.25
        增加了对DLL文件调试的支持,借用了一个ollydbg的一个loaddll.exe文件,表示感谢!
       (DLL文件暂时不能makepe)
V0.24
        修正了scans指令会被误判为异常的问题
        修正了jmp XXXXXXXX (E9 XXXXXXXX)指令当跳转到API入口时,会出现崩溃的问题
V0.23
        修正了几个BUG
V0.22
        LOG中增加了指令记数提示,方便下次运行设置BPC断点
        检测非常规API调用更加准确
        设置了两种运行方式,能跑的程序会更多一些
        makepe命令中对被抽掉的IAT表中的API做探测(还不成熟)
V0.21
        换了一个程序图标
        修正了界面中搜索有时出错的问题
        修正了push ax,pushfw,pop ax等指令出错的问题
        修正了某些机器上遇到jnz xx等类似指令出错的问题
        修正了makepe命令中的一个问题,成功率提高
        增加了一个API地址检测的数值选项。
V0.20
        修正了MAKEPE时偶尔会死掉的BUG
        增加了对VB程序脱壳的支持
V0.19
        修正了MAKEPE中的一个错误
        增加了命令记录功能
        增加了对SYSENTER和INT 2E指令的支持
V0.18
        修正了界面的几个小问题;
        修正了对PUSH AX等指令的支持;
        增加了对RaiseException异常的支持;
        测试了TheMida 1.1.0
V0.17
        Log窗口支持鼠标选择和右键菜单复制功能;
        强化了MAKEPE命令,智能修复IAT(Import REC工具不能修复的,本工具也许可以)
V0.16
        解决了JMP DWORD PTR [ESP-4]指令的解析出错问题;
        解决了MAKEPE中重建IAT的一个BUG;
        解决了导入WINMM.DLL的PlaySound不能正确MAKEPE的问题。
        增加了两个热键,F8(Step),F9(Go! or Pause)
        修正了界面的一些小问题
V0.15
        解决了PIII机器上(也可能是XP SP2的堆栈执行保护?)遇到条件跳出错的问题;
        增加了异常种类支持;
        测试了Arm、ACProtect、EXEStealth、Obsidium、hying、PESpin等几种加密壳。
        测试了UPX、ASPack压缩壳。
V0.14
        修正了V0.13版本的重大BUG
V0.13
        增加了X命令和G命令和BL命令
        增加了“在OEP处暂停”选项
        修正了MAKEPE命令中的BUG
        修正了其他一些BUG,兼容性更好了一些
        工具包中提供一个脱壳例子文件(脱壳方法:启动RORDbg(名字为Explorer.exe),加载Sample.exe,GO!...在OEP处停止后,
        用makepe命令即可,然后手工修复OEP处的前三个字节)
V0.12
        支持800X600屏幕分辨率
        支持双击标题栏窗口收起
        支持文件拖放
        修正了“不记录绝对跳转指令”选中时单步迟钝的问题
V0.11
        修正了“不记录绝对跳转指令”的逻辑错误
        修正了“遇到API调用暂停”条件发生后不能继续GO或者不能单步越过的问题
V0.1
        可以加载并运行一个Windows的EXE文件。
       
支持的命令:
      U  --反汇编(U命令参数为16进制内存地址,不支持表达式)
      D  --显示内存数据(显示内容并不实时更新)
      G  --不带参数的G命令会继续跑被调试程序,如果带了地址参数,会跑到那里停下来
      X  --等同于不带参数的G命令
      BL --显示所有断点信息
      BP --设置断点,如:
         BP 401000                ;执行到401000处停下来
         BP *eip==6aec8b55        ;当EIP处的数值为0x6aec8b55时停下
         BP GetWindowTextA Count==8        //第8次调用GetWindowTextA时停下

     BPC --指令执行多少条后停下(窗口顶部有个计数器)
     R   --更改寄存器的值
     MAKEPE --类似TRW2000的MAKEPE,参数为希望设置的EntryPoint的地址,保存文件名字固定为
              ROR-Unpacked.exe
     LOG --设定执行多少条指令后开始记录执行指令,参数为十进制数字
     EXP --参数为Module名字,会把这个Module的引出函数显示出来,如:EXP Kernel32.dll
     ?   --查询一个16进制数,如果是API地址,会显示这个API名字
     BD  --禁止断点(只支持参数 *)
     BE  --开放断点(只支持参数 *)
     BC  --清除断点(只支持参数 *)

界面介绍:
    Log窗口:左上的那个就是
    DATA窗口:Log窗口的下面那个
    命令窗口:在DATA下面
    寄存器窗口:右上
    STACK窗口:寄存器窗口下面

    1、如何启动一个待调试程序
       点击“打开被分析文件”按钮,按下它选择被调试文件即可
    2、“GO!”按钮是让这个程序在虚拟机下跑(不是跑飞)
    3、“放开跑”按钮是放开被调试程序,让它自由跑,控制权不能再收回,
        这个方法可测试虚拟机是否能够正常跑这个程序,如果程序运行正常,说明在这之前虚拟机跑的都正确!
    4、“单步”仅仅是step into,没有step over,以后再加
    5、“结束调试”仅仅在程序没有跑飞的时候有用。

                        苏州工业园区视算科技有限公司
                                2006-7-20
QQ:98386


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (103)
雪    币: 196
活跃值: (135)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
2
这个得支持一下.
2006-5-31 20:54
0
雪    币: 97697
活跃值: (200734)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
3
GOOD!
2006-5-31 20:54
0
雪    币: 303
活跃值: (466)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
终于又更新了,谢谢
2006-5-31 21:04
0
雪    币: 342
活跃值: (323)
能力值: ( LV9,RANK:450 )
在线值:
发帖
回帖
粉丝
5
不会用。
2006-5-31 21:07
0
雪    币: 47147
活跃值: (20380)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
6
过节送礼物了 ;)
2006-5-31 21:17
0
雪    币: 224
活跃值: (50)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
呵呵,我是赶在端午节出个新版本,前面太长时间没更新了,很对不起大家,接下来会不断更新,有很多大胆的设想想变成现实,希望大家支持。
2006-5-31 21:20
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
收下您的礼物~

BTW:但就是,杀毒软件会报病毒,再程序运行的时候。
2006-5-31 21:23
0
雪    币: 224
活跃值: (50)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
报毒??? 怎么回事? 具体说说~
2006-5-31 21:27
0
雪    币: 214
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
收礼物
2006-5-31 21:57
0
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
11
最初由 Kernel64 发布
呵呵,我是赶在端午节出个新版本,前面太长时间没更新了,很对不起大家,接下来会不断更新,有很多大胆的设想想变成现实,希望大家支持。


盼星星盼月亮终于盼来了

期待一睹"很多大胆的创新"

2006-5-31 21:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
找到了OEP:004F2550
用命令$MAKEPE 4F2550  生成脱壳文件,输出显示有反应,不知在哪找到生成的脱壳文件?
2006-5-31 22:37
0
雪    币: 224
活跃值: (50)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
最初由 lanike 发布
找到了OEP:004F2550
用命令$MAKEPE 4F2550 生成脱壳文件,输出显示有反应,不知在哪找到生成的脱壳文件?


应该有提示的,如果有问题的话,发我看下。
2006-5-31 22:38
0
雪    币: 146
活跃值: (33)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
14
最初由 Kernel64 发布
呵呵,我是赶在端午节出个新版本,前面太长时间没更新了,很对不起大家,接下来会不断更新,有很多大胆的设想想变成现实,希望大家支持。


期待
2006-5-31 22:40
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
待会发提示给你看
我估计是我把目标文件放到桌面的原因
2006-5-31 22:54
0
雪    币: 3
活跃值: (1885)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
终于又更新了
2006-5-31 22:55
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
我的机器比较慢,得等一下
2006-5-31 23:00
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
出来了
谢谢帮看看

005542FC 正常调用(指令数60165418): KERNEL32.DLL!GetProcAddress
005542FC 正常调用(指令数60165447): KERNEL32.DLL!GetProcAddress
005542FC 正常调用(指令数60165476): KERNEL32.DLL!GetProcAddress
00554295 正常调用(指令数60165508): KERNEL32.DLL!GetModuleHandleA
005542FC 正常调用(指令数60165535): KERNEL32.DLL!GetProcAddress
可能到OEP了,如果不完全正确,请再单步走几下!
005543B0 7508                JNZ 005543BA
可能到OEP了,如果不完全正确,请再单步走几下!
005543BA 6850254F00          PUSH 4F2550
005543BF C3                  RET
可能到OEP了,如果不完全正确,请再单步走几下!
004F2550 55                  PUSH EBP
Command: MAKEPE 4F2550
Make PE now
Start:7C920000 End:7C9B4000
Start:7C800000 End:7C91C000
Start:77D10000 End:77D9F000
Start:77EF0000 End:77F36000
Start:77DA0000 End:77E49000
Start:77E50000 End:77EE1000
Start:770F0000 End:7717C000
Start:77BE0000 End:77C38000
Start:76990000 End:76ACC000
Start:77BD0000 End:77BD8000
Start:5D170000 End:5D207000
Start:72F70000 End:72F96000
Start:773A0000 End:77B91000
Start:77F40000 End:77FB6000
Start:76680000 End:76722000
Start:765E0000 End:76672000
Start:76DB0000 End:76DC2000
Start:76300000 End:7631D000
Start:62C20000 End:62C29000
Start:73FA0000 End:7400B000
Start:10000000 End:1000C000
Start:77180000 End:77282000
Start:00F60000 End:01003000
Start:73D30000 End:73E2E000
Start:61BE0000 End:61BED000
Start:71A20000 End:71A37000
Start:71A10000 End:71A18000
Start:66000000 End:66152000
HODULE=00400100
nSec=10
VirtualSize RVA PhysicalSize PhysicalOffset
p=004001F8
   f2000     1000    54400      400
p=00400220
    3000    f3000     1200    54800
p=00400248
    2000    f6000        0        0
p=00400270
    3000    f8000     1000    55a00
p=00400298
    1000    fb000        0        0
p=004002C0
    1000    fc000      200    56a00
p=004002E8
    e000    fd000        0        0
p=00400310
   49000   10b000    22600    56c00
p=00400338
    4000   154000     3a00    79200
p=00400360
    1000   158000        0        0
卡在这里了
2006-5-31 23:13
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
不好意思,我犯了一个低级错误
这么低级的问题以后不会再提出来了
2006-5-31 23:44
0
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
20
终于更新了, 期待继续~
2006-6-1 09:01
0
雪    币: 10568
活跃值: (2249)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
支持
2006-6-1 09:57
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
期待继续更新
2006-6-1 11:51
0
雪    币: 208
活跃值: (376)
能力值: ( LV12,RANK:330 )
在线值:
发帖
回帖
粉丝
23
2006-6-1 14:30
0
雪    币: 223
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
这东西就是不知道怎么用的。。。。
2006-6-1 15:03
0
雪    币: 598
活跃值: (282)
能力值: ( LV13,RANK:330 )
在线值:
发帖
回帖
粉丝
25
老大还可以更新一下。

以前的一个壳,停不到入口点,(拦第二个seh,再走几步就到了)
makepe无反应。。。
上传的附件:
2006-6-1 16:34
0
游客
登录 | 注册 方可回帖
返回
//