第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

声明:

1)本报告由博客园bitpeach撰写,版权所有,免费转载,请注明出处,并请勿作商业用途。

2)若本文档内有侵权文字或图片等内容,请联系作者bitpeach删除相应部分。

3)本文档内容涉及Netzob工具的安装配置,请勿认为本文是讲述使用,Netzob的使用是不在本文讲述的,下一篇博文应该会写Netzob的使用手册。

4)仅仅作为参考用途,抛砖引玉,不作为证据证明用途,请自行取舍,核实引用。文中图片大多为本人原创,如有引用他人图片会注明的。

0目录

目录

0目录    1

【1】引言    1

1.1 本文背景    1

1.1.1 本文谈些什么    1

1.2 本文不谈些什么    1

1.2 本文的意义    1

【2】噢Python!以及Ubuntu    2

2.1 噢!Python!    2

2.2 Ubuntu桌面提示错误,安装软件包有未满足依赖关系    2

【3】Netzob项目及主页简介    2

3.1 Netzob主页    3

3.1.1 Netzob工具的背景    3

3.1.2 Netzob工具的网站    3

3.2 Netzob工具安装的官方手册    5

3.2.1 Netzob下载    5

3.2.2 Netzob各版本简介    5

【4】Netzob项目的安装配置    6

4.1Netzob的安装思路    7

4.2Netzob安装过程    7

【5】附录    12

5.1引用文献及网页    12

【1】引言

1.1 本文背景

Netzob是基于网络轨迹的协议逆向工程的一种工具,它是法国学者于2010年发表论文中设计的原型系统,旨在逆向分析未知规格的协议格式。那么写着一篇报告的目的当然呼之欲出。而且它用Python语言编写的,看来这个开源代码的世界快要被Python占领了,因为Python脚本不易封装,也从一定程度上注定了写Python的相关程序功能就是为了开源。写关于Netzob安装入门手册,既满足于自身学术研究,又提高学习Python和代码实验的动手能力。

1.1.1 本文谈些什么

本文谈些什么是本篇文章的主题。也是避免网友观看本篇文章,发现不是感兴趣的研究,也浪费宝贵的时间。所以如果不是您感兴趣的部分,您可以关掉网页,去从事您感兴趣的研究。

但是,如果你对协议逆向有兴趣,对网络协议安全有兴趣,对Python有兴趣,对Ubuntu的软件安装有兴趣,那么你可以尝试观看本文。

英国之"井水词"近来广为流传,高晓松先生的版本非常有特色,其有译:(部分)"绝不向黑夜请安,老朽请于白日尽头涅槃,咆哮于光之消散。先哲虽败于幽暗,诗歌终不能将苍穹点燃,绝不向黑夜请安。贤者舞蹈于碧湾,为惊涛淹没的善行哭喊,咆哮于光之消散"。我想协议逆向工程就处于这样的困境,任何初出茅庐的学科分支总是经历阵阵疼痛和迷茫,才能走向有序。学科未出已死的先例数不胜数,所以高晓松先生译文的前半部分不是我想谈的,也是不可想象的。后半部分才是我尽力诉说的,是我们逆向分子的未来,但是可能终有一天会停止或迟滞网络轨迹的分支探索,却但愿这探索的终止和衰老来得迟一些。(部分)"狂者如夸父逐日,高歌中顿觉迟来的伤感。绝不向黑夜请安,逝者于临终迷幻。盲瞳怒放出流星的灿烂,咆哮于光之消散。"这样的击虚一歌,恰恰是本文和本人想做到的。

本文谈及的内容有:

(1)Netzob的前世今生 / Netzob的资料官网

(2)Netzob在Ubuntu系统下的安装教程,即如何配置Netzob安装环境。

(3)Ubuntu的操作系统相关基础知识。(只需要一点Linux的基本知识就行,Shell终端用过就行)

1.2 本文不谈些什么

限于本人知识水平有限,不能够提供全部的功能讲解。但本人尽力利用生平所学,生平时间去研究,去尽快发表关于Netzob的补充知识。而这些补充知识我想是本文没有讲到的,也是未来几个月可能会陆续发表的。如果我没有发表相关补充文章,也请有缘人对于协议逆向工具的理论或工具进行补充和共享。既是我的无能,抑或是我的无力,已不能苟全所有的技术细节,哪怕是所有的网络轨迹协议逆向的粗要知识。

本文针对Netzob不谈的内容有:

(1)Netzob的软件使用(以后会专门写一篇,讲解软件的功能实用)

(2)Netzob的理论框架及论文算法(以后会专门写一篇,讲解理论模型)

1.2 本文的意义

不敢小视前辈,不敢管窥蠡测,不敢夸大其词,本文的客观意义在于第一,介绍Netzob的安装方法,尽管国外官方网站提供了安装说明,但是这些说明非常简洁,实际安装中出现了一些问题很多时候还是自己琢磨解决的,具有自己的原创性;第二,Netzob的相关操作说明和学术理论在国内鲜有描述,报文序列分析的协议逆向工程相关论述更是凤毛麟角(请注意用词,软件方法的逆向或反编译工程方法的逆向是很火的,是丰富的,但我说的逆向方法专指报文序列方法,相关网络主页谈论是非常稀少的),因此本文尝试引入Netzob工具到国内博客论坛,便于Netzob的工具介绍和理论传播。

【2】噢Python!以及Ubuntu

简单谈一些Python和Ubuntu

2.1 噢!Python!

不论是Netzob还是著名的PI项目,还是后来的SAMBA项目,都迅速地转入了Python行列,可见Python还是非常强大的胶水语言。最近在写一些进制转换的程序,也适用于工程中对于某些数据的转换使用,同时也比较适合流量分类。

WEKA软件作为JAVA代表,独霸流量分类一方的软件。很多人没有意识到WEKA的强大,甚至不愿意接纳它,认为还是自己找的代码好。WEKA以其独有的数据处理和聚类分类功能,不仅继承了线性规划等旧算法,还可以拓展接口,编写支持向量机的接口。如果学流量分类不去使用WEKA,这是拒绝变化变通的前兆,也是没有调研,没有调查的先验。当然如果不愿意从事JAVA编程语言学习,另当别论,这个要尊重个人兴趣,但是如想参看WEKA相关操作,可以看我利用课余时间历时一个月的实验博客文章《WEKA使用(基础配置+垃圾邮件过滤+聚类分析+关联挖掘)》,地址为http://www.cnblogs.com/bitpeach/p/3770606.html。

期待着Python能够加入WEKA其中,python在大数据的世界还有所运用,这里就不赘述了。所以Python的创造者龟叔,作为盟主领袖魅力耀眼。当每一个编程者面对Python的时候,领略Python的时候,都会情不自禁地说一句:噢!这竟是Python!

2.2 Ubuntu桌面提示错误,安装软件包有未满足依赖关系

往往在配置国外这些软件,或者说往往在第一次接触Linux软件安装时,使用习惯了Windows了,便不太会用Linux系统的软件配置,也有可能是这个原因导致Linux只是成为爱好者的天堂,却没有成为广大用户的受众面。在此我总结一下我经历过的现象,我是如何成功解决的。网络上可以搜索到部分现象,是可以利用百度存在的解答来解决问题的,但是部分现象百度没有解答的很清晰。(这时我会讲一个非常老的段子,python有人用过,ipython也有人听过,但是很多书讲了IPython,却不讲怎么启动它。。。我敢肯定很多人一开始初学IPython的时候,就不知道怎么启动它,而且很多百度解答和博客论坛还真没有仔细论述过这个问题。因为这个问题太简单,简单到没有人去提这个问题。恰恰是这个问题,难到了无数的初学者和入门者,所以才说教程可以不写的全面,但是要写的关键,要有特色特点。明显博客论坛到处转载,到处复制粘贴,没有自己的原创,自己不去做试验,当然无法体会初学者的难处。)我在下文提出可能会在Netzob中出现的现象,以及如何真正解决的。

引用文献[3]出现了类似的现象,但是没有明确给出处理方法,有人肯定按照留言仍然解决不了,因此我这里做一个完整解决的过程介绍。首先要将错误的界面给出来,本来想把出现错误标志的图截取下来,但是解决了这个现象问题后,报错的标志消失了…所以我盗图一张,引用别人的图介绍一下错误的现象。在出现这个错误后,桌面右上角出现这样的一个标志。

第【一】部分Netzob项目工具的安装配置

鼠标移到标志上,提示内容大致为:"错误已损坏个数>0,安装软件包有未满足依赖关系。"

解决方法:

(1)使用apt-get remove –purge的指令删除指定软件,如果在此指令下未能解决该问题,则请采用下面的方法。

(2)安装新立得软件包管理器,这里不是做广告。而是这个管理器确实很不错。如果使用惯了Windows系统,对Linux入门还不太适用的同学,可以使用这个管理器作为过渡,这个管理有点像Windows里常见的软件管家之类的。安装方式:从Ubuntu软件中心可以搜索安装。

(3)打开新立得软件包。如下图。依次点选"自定义过滤器"-"破损",然后再在软件包中选择破损的包。这里由于我已经解决了问题,所以无法制作真正的破损结果,此处当注意。然后以gwhere为例,右键选中,选择"标记以便彻底删除",有点类似360的彻底卸载功能。正是可能由于卸载不彻底,导致依赖关系一直保存,所以使用新立得来解决彻底卸载的。

第【一】部分Netzob项目工具的安装配置

(3)标记之后,会发现该软件包的名称前端由绿色方块编程红色的叉图。然后点选"编辑"-"修正破损的软件包"即可,再点击确定就可以彻底删除残留文件,如下图所示。

第【一】部分Netzob项目工具的安装配置

(4)至此,Ubuntu系统桌面提示的错误便可以解决了。

【3】Netzob项目及主页简介

如果要安装Netzob项目工具,则必须要了解Netzob的主页信息。

3.1 Netzob主页

3.1.1 Netzob工具的背景

Netzob是一款软件产品工具(请注意用词,它已达到软件产品的层次,而非程序代码的简单界面。具有良好的交互性和操作性能。)Netzob的主要目的,尽管它的主页介绍了很多个,但是总结起来可以认为有两个目的:

(一)是逆向分析私有协议的格式规范(包括字段位置及语义信息),有人介绍说也可以解决状态机问题。我还没有熟练掌握它,对于性能怎么说不太好给出准确评判。但至少肯定网络层及其以上还是可以解决逆向问题的,针对链路层和物理层的帧数据,只能说有可能可以做解析。因为它是开源的,即你可以自己扩展它的代码,写出您自己可以使用的接口模式。状态机问题我查看过手册,我认为它可能不能解决状态机的问题,所谓软件界面出现了状态的交互图,但实际不能认为是真正意义上的状态机问题,只是简单的状态流程图。

(二)是模拟私有协议的通信数据。这一问题的出现与流量识别的小类问题如出一辙,在获得已有私有协议的数据上,它还能模拟该未知协议的通信过程,生成新的数据(绝非简单的数据库素材拼接)。

那么该工具的特点在于:

(一)开源。把开源放在特点的第一位,因为2010年学者Georges Bossert发布一篇论文,关于PI算法运用至实际工程的原型设计。首先要向他致敬(My honor to Prof Bossert,虽说我英文比较蹩脚,但是致敬还是会说的。)他将理论不仅做成了程序代码,更做成了软件产品(软件工程不是水的,讲的是性能与用户体验两者兼顾的最优程设成果,是绝对的干货)。而恰恰是开源,短短2年内竟然发展壮大,软件产品不断修补Bug,扩展功能,可以说是多少相关及相邻的领域人士对其百鸟朝凤。恰恰是开源的力量,壮大了程序代码的生命力。

(二)继往开来。将2004年Protocol Informatics(PI)项目的算法融入到Netzob,貌似太过时,但结合了PI项目未能提及的其他算法,如Learing算法和推断算法。虽然算法不算新,但是将众多算法融为一体的软件产品,这没有数年之功是绝对做不到的,更何况短短1年做出原型系统,后续2年的开源便开辟了产品级工具,放至在Github上的相关代码被众多兴趣者修改,又产生了新的代码变异。

Netzob的设计者前文已经提及,为法国人Georges Bossert教授,是法国高等电力学院的学者。其论文与另外两位学者一起联合发表Netzob的系统设计,具体论文可以自行查找。该教授发表的论文不能说多,但每篇都是精品(这位教授2014年6月发表了关于协议逆向的较新文献,同样是投了ACM会议,人家写的那么好,咱写的这么挫,咱被评委吐槽了英文看不懂=。=)。其他的设计参与者可以如下图所示。

第【一】部分Netzob项目工具的安装配置

3.1.2 Netzob工具的网站

通过引擎搜索,发现Netzob的正式Wiki主页比较少,大致出现了几类较为官方的网站。我不太清楚之间的联系,说不定是同一家办的不同的网站。

[1] http://www.netzob.org/

上述网址是Netzob最为正式的英文官方网站了,既有提供下载链接及安装说明的资料,又有开发该工具的技术讨论社区。这个网站的丰富功能表明有很多志愿者还在不断的维护和发展。如下图所示。

第【一】部分Netzob项目工具的安装配置

[2] https://dev.netzob.org/projects/netzob

这个网站可以认为是中文的官方网站吧,部分文字是中文的。我比较孤陋寡闻,不清楚是何人维护的。值得称赞的是,这里比英文官方的网站,首先比较亲切(=。=英文看多了,真的会吐的),然后它也具备社区。它提供了Netzob不断发展的版本修正路线图。最重要的是,该网站提供了如何安装各操作系统或环境下Netzob工具的方法。如下图所示。

第【一】部分Netzob项目工具的安装配置

[3] http://netzob.readthedocs.org/en/latest/index.html

这个网站可以认为是说明书或教程手册的英文网站。里面的资料很全面,当然了在第[1]个链接的网站里也有提供了说明。但是貌似本第[3]链接的网站说明书做的很详细,引用关系的链接做得非常。如下图所示。

第【一】部分Netzob项目工具的安装配置

[4] https://launchpad.net/~netzob

这个网站可以认为是Ubuntu的Wiki主页,是致力于Ubuntu开源工程或工作的网站。说明该Netzob工具不仅在Github得到一片天地,还在Ubuntu开源平台崭露头角,更重要的是Windows下也支持运行。这与全世界人的参与是分不开的。

[5] http://www.freebuf.com/tools/1439.html (Freebuf网站)

http://www.oschina.net/news/37445/netzob-0-4-1 (开源中国社区网站)

http://www.tuicool.com/articles/aUjmuq (推酷)

由于Freebuf网站的新闻发布较早,这里先介绍Freebuf对于Netzob的新闻,如下图所示。虽说这里的新闻广告说的是第三方安全产品,实际上看过该相关的论文知道,Netzob不但可以实现防守方的一致安全性测试,还可以实现攻击方的逆向解析。

第【一】部分Netzob项目工具的安装配置

开源中国社区发布的新闻比Freebuf要再全面一些,提供的信息也稍微多一些。主要内容涉及到Netzob的系统构架,更为重要的讯息在于Netzob作为插件可以嵌入Wireshark的抓包经典工具平台,和Peach的漏洞挖掘攻防平台。这为基于网络轨迹的逆向方法理论和实践工程推广打下了良好的基础。开源中国社区的新闻可以如下图所示。

第【一】部分Netzob项目工具的安装配置

推酷作为后台搜索引擎搜集相关IT新闻,推荐面向IT人士感兴趣的话题和知识,这里他也捕捉到了相关Netzob新闻,如下图所示。

第【一】部分Netzob项目工具的安装配置

3.2 Netzob工具安装的官方手册

3.2.1 Netzob下载

Netzob在第[1]链接的英文官方网站提供下载,其中四类平台环境,我们只关系Linux和Windows。这里Windows版本的入门安装我会以后再专门增刊补充,本篇博文只关心Ubuntu操作系统环境下的Netzob安装。如下图所示,是Netzob提供下载的页面。网址为:http://www.netzob.org/download

第【一】部分Netzob项目工具的安装配置

那么我们看中第一行,点击Use it!然后跳出页面如下,点选Ubuntu和LTS12.04。

第【一】部分Netzob项目工具的安装配置

点击Let's go后,跳出安装说明(=。=)如下图所示,没错就一句话。

第【一】部分Netzob项目工具的安装配置

这是符合Linux的特点和系统设计思路,Linux从因特网将世界联为一体的思路,认为软件实体没有必要或尽量少的从电脑实体拷贝或某某P2P软件吸血下载。所以只需要联网,然后在终端执行该命令,便会自动从该网站获取软件。另一比较典型的,体验的比较亲切的就是IOS了(人家基于Linux设计修改的嘛)。初衷是所有的软件实体,通过APP下载联网,安装完就删了安装程序(越狱不是初衷)。

所以执行上图的那句指令,然后Nezob就会安装到你的机器上了~

想得美=。=要这样简单,我写这么多干嘛。Netzob如果不经过相关库的提前预备安装,这一句指令一定会让入门者郁闷死吧~安装的时候安装中途报错,不得不中止。于是已经安装的部分不能用,但是残留着。未安装的部分导致软件又不能打开。最尴尬的是,如果你中止后,不删除干净已经安装的残留文件,会影响下次的软件安装。

所以Linux终端执行安装的命令强大值得佩服,有时只要一句指令就行,但是正是一句指令,若产生了问题作为带来的后续弥补工作,也是非常痛苦的。

3.2.2 Netzob各版本简介

在上图中点选documentation这个关键词,这个关键词带有超链接。会将网页带到第[2]链接,进入了wiki主页,主要谈及的是各版本的简介,和安装简要说明。事实上参照该简要说明,中级玩家一般都可以遵照说明,完成软件安装。由于本人还是个菜鸟,尤其还是个没有存档的初级玩家,所以还是写了一个教程,丰富一下生活,给死气沉沉的简要安装说明增添一些色彩,也方便给人参考。

第【一】部分Netzob项目工具的安装配置

Python package实际上源代码,当然运行在任何主流操作系统都可以的。因为任何主流操作系统可以配备Python环境。Debian package则为Debian版本的Linux操作系统涉及,Gentoo不太熟,Windows则不必提。由于我们是Ubuntu 12.04,还很尬尴,因为人家的wiki里木有Ubuntu的安装说明信息。我们是否可以按照Python package或Debian package的步骤来模仿做呢?有待验证。

实际上该Wiki后来补充了Ubuntu的安装说明,如下图所示,但是很简略…

第【一】部分Netzob项目工具的安装配置

实际上就要用该Launchpad平台的软件去下载。由于本人没有学习此类平台,所以我还是老老实实地去想想其他办法。

(1)观察Debian的安装方式

我只截取了部分步骤的图,由下图可知,头几步的Debian的安装方式比较复杂,既要准备数据仓库,又要做加密密钥。不是说这样的安装不好,只能说我不太了解和擅长。可能超出我能力范围,部分术语关键词由于我不太使用Debian系统,可能不太了解。(想想也是很奇怪,redhat,CentOS等我就学了个皮毛,Red-flag linux就只用了一两次,麒麟linux就摸了摸龙芯。用的比较多的还是ubuntu。Debian还确实没有学过,看到bitdust做路由器移植iNode时候,涉及到Deian环境,看来只能是仰望,不能追随了,因为精力有限,只能放在重要研究上攻坚。)

第【一】部分Netzob项目工具的安装配置

根据上图的情况,结合自己的状况,觉得Debian的安装有些脱离本人情况,第二绝大多数的Linux入门者都是接触Redhat或Ubuntu,Debian这样的安装方式估计不适用Ubuntu。

(2)接下来是Windows版本的安装方式

下图的步骤我截取是完整的,由下图可见,还是比较方便的。但是本文暂时不提供Windows的安装教程,可能会之后再提供。原因有二:(一)事实上Ubuntu和Windows下安装一样方便,如果是Ubuntu下安装Netzob过程繁琐,实际上Windows下安装也很繁琐。部分过程还不如Ubuntu方便。(二)最关键的是Ubuntu安装Netzob的相关资料没有详细对照,Windows有,所以最好写一个没参照的,以便为后人铺路。(这里的"参照"一词不准确,本文其实专指Ubuntu和Netzob之间关系的安装论述较少,其实是有别的方式作为参照的,只不过不一定和Ubuntu一样,我们需要走符合自己特点的安装道路。不稍加变通,就会停滞在上面,所以才说没有"参照"。)

第【一】部分Netzob项目工具的安装配置

(3)Python包的安装方法

由下图可知,python的安装也需要准备一些库。但是这个说明文档,只是说为python包库设计的安装简要说明。那么这个是最贴近Ubuntu12.04系统的安装方式,尽管该文档没有提及Ubuntu。

第【一】部分Netzob项目工具的安装配置

【4】Netzob项目的安装配置

本小节介绍Netzob项目软件的使用,我利用百度和谷歌搜索引擎等搜索在国内介绍Netzob相关知识,可以说是少之又少。只有Freebuf或中国开源社区等少数网站做了简单介绍,但是都没有做安装的简介。可见这个工具在国内没有传播开(hacker有没有传播开,不清楚。至少在国内中文论坛没有传播开。)并且关于它的安装入门几乎没有中文译本,也没有中文说明手册。这是必然的,因为协议逆向工程的相关技术资料大多存在形式为文献期刊,在学术界中存在。极少地存在于国内百度等或博客论坛中,本质上协议逆向工程没有传播开,作为它的其中一种工具没有传播开更是自然的一种可能性。那么,我就尝试将Netzob的安装信息传播进博客园,传播进国内,为协议逆向工程这领域做一些工具软件介绍的微末杂活。

4.1Netzob的安装思路

根据上文介绍,知道Netzob的安装方式主要有Debian,Ubuntu,Windows。我们选择python包安装的方式,因为这个道路最贴近Ubuntu安装,我们在部分出现问题的步骤作出修改,以适用于我们的道路。通过说明文档,我们知道我们要准备一些库,所以直接安装Netzob是不太顺利的。

我们准备的程序有如下图所示:

第【一】部分Netzob项目工具的安装配置

用红线标记的有11个文件。总结一下就是:

(1)Netzob源程序

(2)Setuptools (其实就是python-setuptools)

(3)python

(4)python-dev

(5)python-impacket

(6)libxm12-dev

(7)libxslt-dev

(8)gtk3

(9)graphviz

(10)python-babel

(11)python-sphinx

把第(2)-(11)所有的预备库装备完毕,则可以开始安装Netzob,这是我的关键切入点,也是我遇到阻力的核心地带。

如果在预备库安装完毕后,则安装Netzob不是什么问题了。可以有多种直接安装Netzob方法。例如Easy_install或直接从Tar包安装。如下图所示。

第【一】部分Netzob项目工具的安装配置

我总结一下可能出现的问题现象有:

现象(一):一开始未准备预备库,直接安装netzob,后发现软件由于缺少链接库中止安装,最后决定安装预备库,再安装Netzob。

出现的问题:此时会出现严重问题,由于中止安装,既不属于卸载软件的范畴,也不属于未安装的清洁状态。残留的Netzob软件文件引用依赖关系会产生混乱。怎么安装预备库,都会提示新的依赖关系,造成预备库的死锁。(使用Ubuntu或配置Linux插件的同学,都知道依赖包是有顺序的。)

一旦出现这样的现象操作,既有可能出现2.2节提到的一些问题,也有可能出现新的问题。此时解决方法有,使用彻底卸载(apt-get --purge)的终端命令尝试卸载Netzob文件及其配置,我印象记得我这么做就可以解开依赖关系的死锁问题了。或手动删除,新立得删除等等。关键在于,我在这里绕了一天多,才明白过来,是因为未准备预备库直接安装导致的依赖关系死锁。

现象(二):预备库(或称依赖包)的名称较旧,不再成为正式引用关系。

出现的问题:前文提到Linux安装软件,是联网查询,然后获取的。如果软件更名了,或者程序换了,那么引用关系也就变了。举一个例子,2004年协议逆向工程的鼻祖Beddoe在他的博客主页发布了Protocol Informatics项目的工具,名为"PI.tgz",是用Python写的。但是由于鼻祖大师被麦咖啡买了,所以代码也被买了,代码也就好久好久没再更新过,变得有问题,变得非常旧。使用的结构体不是采用Numpy的新依赖包,而是非常旧版本的Numeric包。所以不得不改写新的结构体。现在去查询Numeric的低旧版本预备库,一定提示该依赖包已被新依赖包取代,曾经找了好久的网络论坛,才把Numeric依赖包的坟挖出来。

4.2Netzob安装过程

由于没有人提供Netzob安装的《图文》教程,这里就抛砖引玉。希望高人能够指点,以更快和更简便的方式去安装Netzob,为协议逆向工程的工具使用提供一方天地。主要参考的链接为:

http://netzob.readthedocs.org/en/latest/installation/python.html#Install-Netzob-on-the-system

步骤(一):首先确定Ubuntu系统联网,然后准备安装预备库。

前文提到预备库是有顺序的,也有新旧更替的问题。其实在引用网页文献[3]中可以找到,真正的顺序。虽然它没有明确顺序序号,但实际它列举的高低顺序可以认为是先后次序。如下图所示。因此按照该顺序一一安装即可。

第【一】部分Netzob项目工具的安装配置

步骤(二):安装预备库。

由于Ubuntu12.04自备python2.7.3,则从第2个开始。千万注意:后面我都是直接开启了超级权限。因为直接开启超级权限,省得后面用sudo,太麻烦。如下图所示,我安装Python-dev插件。(好久没用老电脑的Ubuntu…都忘了,原来Python-dev也安装了….)

第【一】部分Netzob项目工具的安装配置

下图为python-impacket的安装(我曾经以前安装过,故提示已经是最新版本)

第【一】部分Netzob项目工具的安装配置

下两图安装libxml2-dev和libxslt-dev

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

下图为安装python-setuptools的图,我也曾经安装过了。

第【一】部分Netzob项目工具的安装配置

步骤(三):安装预备库中,出现大体积软件,如GTK。目前可以跳过不安装,不影响Netzob的安装。

下四图为安装GTK3,下面四图中的第一张显然不能再照猫画虎的用这样的名字。GTK的安装请参看引用网页链接[8],竟然有1.1GB,可以看第2张有软件大小。(我没有安装GTK平台,而是使用了系统自带的显示平台。即我跳过此步骤,也可以正常安装Netzob。)

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

第3张和第4张,也就是下面两张,是按照引用文献[8]提供的方案安装的。我只给出GTK安装的头两个步骤

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

下面是安装Graphviz插件,实际上Graphviz和GTK3是相似功能,主要为图像显示功能。

第【一】部分Netzob项目工具的安装配置

步骤(四):机动插件可选择性安装。

最后是两个机动安装的插件,即选择性安装。

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

步骤(五):安装Netzob

首先按照下载链接下载Netzob的tar.gz数据包。下载地址可以是:

http://www.netzob.org/repository/0.4.1/Netzob-0.4.1.tar.gz

说明我们没有使用easy_install的在线安装,我们使用数据包离线安装。如下图所示,解包后进入解包文件。

第【一】部分Netzob项目工具的安装配置

执行第一句安装指令,如下图所示:

python setpy.py build

第【一】部分Netzob项目工具的安装配置

执行第二句安装指令,如下两图所示:

python setup.py develop

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

执行第三句安装指令,如下图所示:

python setup.py install

此时就不提供截图了,与上面是接近的。

步骤(六):最后打开Netzob

其实打开的指令很简单…额外说一句,很多Linux软件安装以后,如果找不到图标快捷方式(一般都没有=。=),那可以尝试类似下面的指令,如下图所示:

./netzob 或者 netzob

第【一】部分Netzob项目工具的安装配置

第【一】部分Netzob项目工具的安装配置

在输入上述的指令后,同时会跳出软件界面,不要关掉终端,否则软件随之关掉。

有点像Eclipse,选择工作区间,然后就可以看到软件的工作界面了,如下图所示:

第【一】部分Netzob项目工具的安装配置

【5】附录

5.1引用文献及网页

  1. Netzob官方网页

    http://www.netzob.org/

  2. Netzob安装说明主页

    https://dev.netzob.org/projects/netzob

  3. Netzob说明书文档

    http://netzob.readthedocs.org/en/latest/index.html

  4. Freebuf关于Netzob的简单报道

    http://www.freebuf.com/tools/1439.html (Freebuf网站)

  5. 开源中国社区关于Netzob的简单报道

    http://www.oschina.net/news/37445/netzob-0-4-1 (开源中国社区网站)

  6. 推酷关于Netzob的简单报道

    http://www.tuicool.com/articles/aUjmuq (推酷)

  7. Ubuntu论坛求助,界面右上角出现错误信息:安装软件包有未满足依赖关系?

    http://forum.ubuntu.org.cn/viewtopic.php?t=416052

  8. Ubuntu12.04下GTK3.xx的安装

    http://wdqfirst.blog.163.com/blog/static/11334741120147724928339/


<<<<<<<<<  写在页面最底的小额打赏  >>>>>>>>>

如果读者亲愿意的话,可以小额打赏我,感谢您的打赏。您的打赏是我的动力,非常感激。

必读:如您愿意打赏,打赏方式任选其一,本页面右侧的公告栏有支付宝方式打赏,微信方式打赏。

避免因打赏产生法律问题,两种打赏方式的任一打赏金额上限均为5元,谢谢您的支持。

如有问题,请24小时内通知本人邮件。

上一篇:String类以及其常用方法


下一篇:跨域问题如何解决