@wpaladins
2017-11-21T05:24:30.000000Z
字数 1453
阅读 1049
笔记
各位老师,各位同学,大家下午好!我是来自计科1504班XX,我今天答辩的项目主题是基于模糊测试的安卓应用漏洞检测工具开发。我的小组成员还有,XX和XX。(翻)今天我的答辩将通过以下四个方面进行。(翻)首先,Why?为什么我们要搞这个呢?,让我们先来看一组数据。(翻)这是来自一个关于今年9月对中国用户所使用智能手机操作系统的统计数据,从数据中我们可以看出,Android操作系统的市场占有率已经高得离谱。(翻)另一个数据,有关2017年第二季度全球Gooole play中应用下载总量的统计,从中可以看出,这个数据达到了惊人的153亿次下载。面对这样的数据,足以让IT行业对Android平台引起关注,其中最重要的就应该是重视Android的平台应用资源的安全性。(翻)然而,像图中展示的这样,很多的行业,很多的事都需要App的参与,但是却都是以“我们其他的都弄好了,只差一个会写App的了?”“需要一个人写App”,是的,一个人(竖起无名指)。这样的事情屡见不鲜,而这样势必会影响App的健壮性,App不够健壮,通俗地说,它工作起来可能就会有很多的问题,甚至是带来安全隐患。(翻)而产生这样的问题的始终,是因为市场的竞争激烈和人们安全意识的淡薄。伴随着,就出现了减少开发人力投入,缩短开发周期的做法,牺牲软件测试时间的做法。(翻)说完我们的搞这个的原因,那我们搞这个的目标就显而易见了。先允许我简单介绍一下“模糊测试”的概念:
模糊测试:是一种软件测试技术。其核心思想是自动或半自动
地生成随机数据并输入到一个程序中,然后监视程序
异常,如崩溃,断言(assertion)失败,以发现可能的
程序错误,比如内存泄漏。
是的,我们就是想以这样的方式,达到以下效果:
- 掌握Android系统平台组件通信的原理及漏洞产生原因;
- 完成对Android应用程序进行监测,使得在对Android应用程序进行测
试的过程中,一旦产生漏洞,即可监测到;- 针对Android系统平台上的应用程序设计出合理的fuzzing策略,使之
能够高效地检测出漏洞。
基于我们的这些学习和实践成果,(翻)我们希望在Android应用开发者最终开发完安卓应用之后能够进行我们所提供的自动化测试,尽可能多地高效地去发掘漏洞。
(翻)
OK!第三部分,Feature?我们哪里与众不同。(翻)让我们来一起看看现存工具和实践的现状,简单总结就是:都是针对动作输入、较少的应用型工具、多理论方法的探索、仍然处于探索阶段。在这样的背景下,我们的项目就具有一定的意义。(翻)我们项目的特色与创新之处有以下两点,第一,Fuzzing测试,我们就是要基于Fuzzing测试,对Android组件间内部数据测试方面展开探索,对数据的变异算法进行改进和实现。第二,测试效率,我们的项目对Android平台下Fuzzing测试代码覆盖率不高以及测试耗时较长的问题,结合符号执行以及云计算进行改进。
(翻)最后,第四部分,Plan?我们将怎样展开行动?(翻)我们计划的时间轴如图:首先用一个多月的时间,查阅相关文献资料以及工具的使用,再用一个月时间研究Android逆向工程,再用一个月到两个月的时间研究Fuzzing技术及应用,设计fuzzing策略。之后就是用一个多月时间编写整个框架程序。再之后就是用一个多月的时间对之前研究成果进行整合,以及用剩下的时间扩充实验对研究成果进行整合,并进行工具可视化。
(翻)OK。我的答辩结束。谢谢!