我完全失明,想学习逆向工程,这样我就可以发展我的职业生涯。不幸的是,使用屏幕阅读器的盲人无法访问 IDA Pro、Immunity 和 OllyDbg。
这些工具在 Windows 和 Linux 上有什么好的替代品吗?我在 Linux 上使用过 gdb,在 Windows 上也使用过 WinDbg。
如果不能使用三大件,我只需要一个关于什么是行业标准的建议?
谢谢,唐
我完全失明,想学习逆向工程,这样我就可以发展我的职业生涯。不幸的是,使用屏幕阅读器的盲人无法访问 IDA Pro、Immunity 和 OllyDbg。
这些工具在 Windows 和 Linux 上有什么好的替代品吗?我在 Linux 上使用过 gdb,在 Windows 上也使用过 WinDbg。
如果不能使用三大件,我只需要一个关于什么是行业标准的建议?
谢谢,唐
您可以在 Linux、WinDBG上使用gdb,也可以尝试radare2:它不像前两个那样稳定,但它是为逆向工程、支持和协议量身定制的;)所有这些都有一个文本界面应该适用于盲文接口。gdb://
windbg://
但我猜想,radare2 对盲人来说的杀手锏是它有 ascii 控制流图:
=------------------------------------------------------=
| [0x400536] |
| main: |
| (fcn) sym.main 50 |
| ; arg int arg_0_2 @ rbp+0x2 |
| ; var int local_0_1 @ rbp-0x1 |
| push rbp |
| mov rbp, rsp |
| sub rsp, 0x10 |
| mov dword [rbp - 4], edi |
| mov qword [rbp - 0x10], rsi |
| cmp dword [rbp - 4], 2 ; test.c:2 if (argc > 2) |
| jle 0x400557 ;[a] |
=------------------------------------------------------=
t f
.--------------------------' '------------------------------.
| |
| |
=--------------------------------------------------= =--------------------------------------------------=
| 0x400557 | | 0x40054b |
| mov edi, 0x4005f7 ; test.c:5 puts("Oo"); | | mov edi, 0x4005f4 ; test.c:3 puts("Ok"); |
| call sym.imp.puts ;[b] | | call sym.imp.puts ;[b] |
=--------------------------------------------------= | jmp 0x400561 ;[c] |
v =--------------------------------------------------=
| v
'-----------------------------------.---------------------'
|
|
=-------------------------------------=
| 0x400561 |
| mov eax, 0 ; test.c:6 return 0; |
| leave ; test.c:7 } |
| ret |
=-------------------------------------=
关于radare2 的各种讨论中提供了很多幻灯片,但我想了解如何使用它的最简单方法是阅读radare2 书籍。我很确定每个人都会很乐意帮助您/在 irc 频道上实现缺失的功能!
一个想法 - Visual Studio 具有良好的辅助功能(至少根据他们的博客)并且它可以显示已编译应用程序的汇编代码。如果您想了解编译后的结构在二进制中是什么样的,这很好。http://opensecuritytraining.info/IntroX86.html等课程专门使用 Visual Studio 进行代码分析。我知道本课程的视频从盲人的角度讲得不好,但即使您看不到正在发生的事情,它们仍然很有用。
此外,现在 Windbg 是一个非常好的调试器。如果您掌握了 Windbg,您将是无价的。Ollie 是为 wussies 设计的 :) Immunity 本质上是 Ollie 的几年前版本,带有一些用于漏洞利用开发的插件。
抱歉回复晚了,但我现在才注意到这个问题。
免责声明:我在 Hex-Rays 工作,主要从事 IDA 开发。
碰巧我们有一些盲人用户。在他们的帮助下,在最新版本的 IDA(尤其是 6.95)中,我们对可访问性进行了重大改进,尤其是在 Windows 和 Linux 上(OS X 工作得有些好,但不是很好)。因此,我建议您尝试使用演示版,看看它如何与您的屏幕阅读器配合使用。如有任何问题,请随时与我们联系;我们始终愿意让 IDA 更易于访问。