倒车如何起步?

逆向工程 视窗 Python C#
2021-06-18 20:28:02

我是倒车新手,我想了解很多。我对此知之甚少。x86汇编还值得学习吗?因为现在几乎所有东西都适用于 x64 架构。对于像我这样刚起步的人,您有什么建议?一些书籍、指南、技巧、学习什么、不学习什么以及为什么......(我对游戏黑客很感兴趣,我也有中级水平的 Python 和 C#)。

谢谢!

1个回答

我也从 RE 开始(自 2020 年开始),我想我可以把到目前为止学到的东西放在这里。也许它可能会有所帮助。

所以首先,你需要汇编知识。你问是否还值得学习 x86,因为现在有 x64。嗯,这也是我学到的。x64 只是 x86 的扩展。x64 的真正名称实际上是 x86_64。我在 EMU8086(模拟 8086 处理器的旧程序,您可以在其中组装汇编程序并调试它们的旧程序)学习了英特尔 8086 汇编(大学) - 我建议您使用 MASM 或其他程序来获得真实的感受,因为你可以在模拟器上写一个程序,比如 2 个 MOV 和一个 INT,它会运行,没有节和任何东西 --> 那是错误的,它只是让你不写那些东西,它会为你,但你不t 学习一切)。

如果您学习 8086 汇编(这是一个 16 位处理器),它应该会让您对现代程序的工作方式有很多了解。虽然不会给你一切。将有助于说明,因为有些没有太大变化(可能还有更多我不知道的事情),但不会帮助您在汇编中制作程序。为此,您需要更深入地了解 32 位甚至 64 位汇编编程(我还没有做过)- 作为开始,您无法直接访问 32/64 位硬件在 16 位。

然后你需要一个反汇编器(我喜欢 IDA - 有一个免费版本:IDA 7.0 免费软件)。用 C 编写一些简单的(或不是?)程序,然后反汇编它们,看看它们是如何制作的。如果你想更进一步,可以在 Internet 上找到简单的程序,不看就编译它们,然后尝试翻译成 C。这对我有帮助。我有一些为大学课程编写的程序,但我已经不记得了,所以我使用了这些程序。

如果您将在 Windows 上工作,您可能还想了解如何制作 PE 可执行文件。我只是在学习这个。我正在阅读一本名为“便携式可执行文件格式 - 逆向工程师视图”的书。不知道它好不好,但它告诉我关于它们是如何制作的很酷的东西,比如标题和部分,这是我要学习的东西。如果你想改变一个程序,比如添加或删除功能,你可能需要弄乱标题——除非你只是在上面修补一些字节而不以任何方式改变文件的大小。然后就没有必要弄乱标题了(一个月前我已经修补了一个这样的文件,这是我第一次也是唯一一次 - 很棒!!!)。

您也可以学习二进制开发,但不确定这是否是您想要的。如果你确实想要这个,我可以向你推荐一个 YouTube 频道作为开始:LiveOverflow,带有这个播放列表:https : //www.youtube.com/playlist? list=PLhixgUqwRTjxglIswKp9mpkfPNfHkzyeN 通过这种方式,他还有更多关于剥削的播放列表。虽然这是应用旧的漏洞利用,但它是一个介绍(至少对我来说,即使我停下来是因为我想修补程序以暂时改进它们而不是实时利用它们-那是在我学习如何修补之后,因为它看起来更先进)。

顺便说一句,我是按照我做事的顺序写的(除了开发和学习PE格式,但我写的顺序应该是我用过的——太兴奋了,我刚开始看视频哈哈哈)。

当然,这是初学者的答案。因此,更“专业”的答案可能更好。但我只是想说一下我作为初学者对 2020 年学习 RE 的看法,即使在任何(或更多)方面是错误的如果我说的有任何错误,请纠正我)。希望这有任何帮助!这个好大哈哈哈

PS:我忘记了一些东西,但我会把它放在这里。你需要学习 C ......甚至可能在组装之前,就像我一样(大学课程顺序)。深入到指针。看看它是如何工作的。例如,制作链表。或者二叉树。达到那个水平(当然,在此之前做你需要学习的一切,但要达到那个水平)。然后启动 Assembly,当您编写用于在 C 上进行训练的程序时,您将更清楚地看到幕后发生的事情。

编辑:既然你说“游戏黑客”,这似乎是一个很好的说法......请不要攻击不好的部分。制作很酷的模组,或者任何你想做的事情(我喜欢游戏中的模组)。但是不要让它们在线或其他东西,或者如果你这样做了,不要做出愚蠢的选择......在 PS3 上,GTA 5 Online 很糟糕。能够降低其他人的等级,从他们那里拿走东西(也给他们东西,但有可能拿走哪个更糟,我宁愿在这种情况下我什么都不做)-未经 Rockstar 授权的 BAN 帐户......那是,我什至没有一个字...别说那个...