逆向工程——尝试分析

静态分析与动态分析

顾名思义,静态分析就是在不运行程序的时候进行分析,相反动态分析就是在运行程序的过程中分析。比如文章(https://www.jianshu.com/p/e910b3db42bd)中的实例就是动态分析。

1. 静态分析

方法:
a. 阅读反汇编代码
b. 提取可执行文件中的字符串,分析使用了那些单词

以wsample01a.exe为例分析
工具:WinHex、IDA7.0 Freeware version
源程序:https://github.com/kenjiaiko/binarybook/tree/master/chap01/wsample01a/Release

利用WinHex打开分析.png

之后可以尝试利用IDA7.0对程序进行反汇编,这个工具可以帮助我们更好地理解汇编代码,可以选择Text View或是Graph View,用不同的视图来查看代码,可以用类似流程的方式解释梳理代码的结构。

意义:我们在完全没有源代码的情况下搞清楚了程序的行为

2. 动态分析

方法:
a. 获取文件和注册表访问日志
b. 抓取网络包

以wsample01b.exe为例分析
工具:Process Monitor
源程序:https://github.com/kenjiaiko/binarybook/blob/master/chap01/wsample01b/Release/wsample01b.exe
运行程序,打开Process Monitor查看程序相关的部分,可以通过Crl+l的方式调出过滤规则设置窗口,然后找到对应的程序日志

过滤规则.png

程序日志.png

我们发现,这个程序也在C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup的位置备份了自己的程序。
接下来可以使用调试器进一步跟踪程序逻辑。我们可以用它设断点:再任意位置中断或是恢复程序的运行,或是直接单步执行(单步跳入跳出),辨认其中的内存和变量情况。
跳入:调用函数时进入函数内部
跳出:调用函数时不进入函数内部,而是将函数调用作为一条指令来执行
OllyDbg.png

页面中分为四个部分:左上为主要反汇编窗口,左下为内存数据窗口,右上为寄存器信息,右下为当前栈信息。
一些简单的操作:可以通过Ctrl+g的方式跳转需要的位置、F2用于设置断点、F9用于启动程序、F7单步跳入、F8单步跳出(对于不需要关注的函数可以选择跳出)
总结:从分类的角度,静态分析与动态分析的区别在于“是否运行目标程序”,但是实际上不止如此,静态分析更偏重于“总览全局”,而动态分析则侧重于“细看局部”。因此在软件分析的时候,常常用WinHex和IDA看一下整体的结构,粗略地有个大体印象,知道程序在做什么,然后再根据Ollydbg单步运行查看一些细节。

参考材料:
1.《有趣的二进制·软件安全与逆向分析》【日】爱甲健二

  1. 源程序:https://github.com/kenjiaiko/binarybook
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,544评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,430评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,764评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,193评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,216评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,182评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,063评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,917评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,329评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,543评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,722评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,425评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,019评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,671评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,825评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,729评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,614评论 2 353

推荐阅读更多精彩内容

  • 请允许我借鉴前辈们的东西~~~~ 感激不尽~~~~~ 以下为Android 框架排行榜 么么哒~ Android...
    嗯_新阅读 2,037评论 3 32
  • 今天有点咸🐟想做一只没有梦想的搬运工 十六进制编辑器 十六进制编辑器(二进制文件编辑器或字节编辑器)是一种允许操纵...
    Honny_Boo阅读 2,446评论 0 7
  • 昨天晚上和同事喝酒撸串,一晚上都在讨论所谓的感情,并不是很开心。晚上回家弄完工作,已经十点了,烧好水,也没有洗澡,...
    圆圆滚滚小可爱阅读 172评论 0 0
  • 那么害怕孤独 那么害怕无助 那么害怕没有方向 那么害怕陌生 那么害怕离开 那么害怕被抛弃 那么害怕谎言 那么害怕无...
    Jennifer0707阅读 409评论 0 0
  • 今天起床之后去了图书馆,快乐地看书自习,把multimedia的作业开动起来。 于是快乐地自习了一天,好累呀,大概...
    焦大仙阅读 82评论 0 0