题目地址:http://www.shiyanbar.com/ctf/13
题目预览:
解题过程:
1、下载附件发现是exe文件
2、使用PEid和Detect It Easy查壳 和 开发语言,发现没有加壳,都是用C#开发的
3、C#和Java Python属于解释型语言,很容易就可以看到源码。
这里使用.NET Reflector(.net反编译工具) 来反编译,直接拖进去,在左侧栏找到WindowsApplication1.exe
VS默认的类名是WindowsApplication#.exe(#代表数字),这个类包含了这个窗口的方法和模块
通过搜索关键字字符串获得通关密语
zhimakaimen@2011 |
思考:这是一道很简单的逆向题,关键在于识别开发语言和壳。
反编译分为:
一、编译型程序 ELF文件 PE文件
不可能直接看到源码
二、解释型程序 C# java python
Python pyd base64
三、 混淆型程序 js
如果一开始默认为是使用C++开发,就会拖入IDA进行静态分析(直接查看软件的汇编代码),理解大致思路后拖入OD进行动态分析(利用汇编代码进行动态调试,同时模拟寄存器和堆栈的情况),这样就会变得复杂。