当前位置: 首页>移动开发>正文

App流量监控sdk app流量监控分析

论文分析---APP流量分类

 

亮点

1.1APP分类

1.2模糊数据处理

1.3提高可靠性(训练集和测试集数据来自一次提取还是不同时间提取)

1.4对比时间,版本,设备改变,操作系统版本改变的影响

 

1.数据获取方法:一个模拟服务器,一个安卓虚拟机,脚本在服务器模拟数据输入,用ADB命令发送给安卓虚拟机,进而在服务器捕获流量(这种方法称为UI fuzing),一次一个应用程序,最大限度减少网络噪音,但用与手机操作系统和其他应用程序本身的流量,仍然会有噪音,在通过一个网络日志工具与解复用脚本结合,进而对流量进行过滤--仅包含TCP流量,且无错误 过滤掉了网络重传,除目标APP外的其他应用

110中最常用的免费APP(因为免费的APP一般都会有广告库,而且广告库一般在APP间进行共享),每个APP用来自安卓SDK的MonkeyRunner通过UIfuzzing方式运行30分钟

(UIfuzzing通过调用UI事件进行模拟,Dynodroid [33]等框架提供的高级UI模拟技术,或者通过招募人类参与者,未研究)

2.数据分割:分割为突发流量(阀值1s,实时流量),,根据阀值中最长流量最为该阀值的流量,此过程放弃所有有负载和DNS流

3.特征:考虑三个维度:coming流大小,going流大小,coming+going流大小

每个维度:最小值,最大值,平均值,中位数绝对偏差,标准偏差,方差,偏斜度,峰度,百分位数(从10%到90%)和 包总数(共18个)。一共54个统计特征

4.分为初步分类器(python库函数,调用随机森林,不改参数,初步训练集75%,初步测试集25%,平均1132个流,随机轮换测试50次,根据精确度反向获取模糊流量,验证误标数据基本上都是第三方库流量)

增强分类器(对误标数据进行增强学习分类)

 

web框架运用在APP上,效果不如新的框架

训练数据与测试数据来自同一次采集准确率比多次数据 73.1%--40.9%

 

对比实验,通过多组数据对比获取最终的结果。

 

噪声处理:

1》对于实验环境,利用网络日志进行过滤噪音

2》对于真实环境,对于训练数据进行噪声过滤,对与测试数据集采取噪声忽略

3》对于真实环境,噪声管理,允许分类器学习,自动区分

 

模糊检测:

模糊流量是指不同APP中的相同第三方库函数产生的流量 增强学习 对其进行重新标签40.9%--74.8%

 

分类验证:

一个流最后对于每一类都有一个概率,通过高的预测概率阀值,导致有些流可以分类,有些流不能分类,标为模糊流,通过增强学习,进行分类,这样会减少流分类成功的数目,高精确率低低分类数,低精确率高分类数。获取 74.8%--96.5%  

 

图:CDF图(累计分布图,概率密度函数的积分)

 

缺陷

1:没能进行模拟实时采集流量或真实流量进行训练

2:流量覆盖(本片论文并没有涉及)

3:程序的行为是通过UI fuzing获取的,固定的操作,与实际相差较大,不能覆盖全部代码,而且提取的时间有限,不能覆盖各个时间段

4:110种准确率低70%多,40多种准确率才可以达到96%(但这是在对彼得情况下)

5:模糊检测

 

 


https://www.xamrdz.com/mobile/4sj1921896.html

相关文章: