【正牌宝G的博客,反汇编】为了CTF比赛,如何学习逆向和反汇编?
需要看的书籍:1.Intel 微处理器.2.Windows环境下32位汇编语言程序设计3.WindowsPE权威指南4.C反汇编与逆向分析技术揭秘5.加密与解密第三版6.IDA Pro权威指南需要掌握的工具:静态反汇编工具: IDA Pro动态反汇编工具: ollydbgWindows内核调试工具: windbg看这些书的基础:熟悉C,熟悉编程.针对不同的语言,你也要知道一些.至此,软件逆向你就入门了.此时参加CTF我想是没有问题的.我始终认为,要在逆向与反汇编上有大的成就,编程是必须会的.再接着就是必须熟悉密码学.熟悉软件工程.因为越往后走,你会越发现,软件逆向并不是简单的反汇编,而是需要很多的知识.其中编译器的知识是需要的.软件逆向是会走向工程化的.很多时候一个人是在短时间内无法完成的.这个时候借鉴软件工程的方法,会有好处.目前在国内外对于软件逆向的研究并不是很成熟,软件逆向工程性的方法理论目前也没有成熟.因此在软件逆向领域是非常有挑战性的.这是一门新兴的领域,需要广大爱好者的研究和投入.其次软件逆向是针对不同的语言,难易程度不同.对于非编译型语言,逆向的难度要小很多.目前我认为编译型语言逆向最难的是C.对于C的逆向,我十分推荐上面提到的4.C反汇编与逆向分析技术揭秘这本书.国外也有两篇极佳的论文/文章:黑帽大会上的演讲:https://www.blackhat.com/presentations/bh-dc-07/Sabanal_Yason/Paper/bh-dc-07-Sabanal_Yason-WP.pdfReversing Microsoft Visual CPart II: Classes, Methods and RTTI. igorsk .http://www.openrce.org/articles/full_view/23国内论坛上也有一些文章:【原创】RTTI结构详细分析(VC)【原创】易语言消息机制分析(消息拦截原理)【原创】MFC消息拦截分析( 示例程序分析)【原创】逆向分析 C继承内存分布(带虚函数) 及动态绑定实现 。
推荐阅读
- 技术小白的微信小程序搭建之路,小程序后台
- 进击的巨人丨人物志,莫布里特
- 简单的硬盘检测全搞定,硬盘检测软件哪个好
- 老爸的大屏智能手机,红米智能手机
- 怎么堆物攻才是最好的,物理攻击
- 小米配置,小米手机设置里面受信任的凭据是干什么的能删除吗介绍一下吧
- 诺基亚旋转手机,诺基亚的旋转手机有几款
- 奥运五环的由来
- 九段线的由来
- 桌面壁纸少女心小仙女 好看的桌面壁纸少女心