Android智能终端二维码安全检测系统的设计与实现

2017-06-01 23:25伊恩泽佟新魏震冯晓萌侯永跃董晓
电脑知识与技术 2017年8期

伊恩泽 佟新 魏震 冯晓萌 侯永跃 董晓梅

摘要:随着二维码技术的应用与推广,二维码已成为病毒传播的新通道,如钓鱼网站、手机病毒、恶意程序等通过二维码传播的潜在风险日益严重。文中分别分析了恶意钓鱼网站、跨站脚本攻击和恶意APP应用下载等攻击方式的特点,设计并实现了一个全方位深层次的二维码安全检测系统。为提高查询效率,该系统将黑白名单同时保存在客户端服务器端进行黑/白名单检测、并重点针对恶意钓鱼网站采用文本相似度算法、SIFT(尺度不变特征检测)匹配算法、SVM(支持向量机)进行综合分析。该系统不僅可以应用于普通用户的日常扫码行为,同时该系统可被政府机构二维码安全监管提供参考工具。

关键词:二维码安全检测;黑伯名单检测;文本相似度算法;SVM;SIFT算法

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)08-0061-04

1背景

二维码是20世纪719年代由日本发明的一项将数据信息记录在图形中的条码技术,它使用若干个几何形体来表示文字或数值信息,通过图像输入设备或光电扫描设备自动识读以实现信息自动处理。由于二维码的应用时间不长,恶意二维码导致的安全事件也是近几年才发现的,因此对于恶意二维码进行安全检测的相关工作还不多。某些手机安全防护软件中虽然提供了对恶意二维码的安全检测功能,如腾讯手机管家、360手机卫士等,但是此类安全防护软件一般主要基于黑白名单进行匹配,时效性较差,对于未知网站无法给出检测结果;同时给用户提供的信息量也比较少,用户体验不好。在学术界,对恶意二维码检测技术的研究也不多见。如文献提出了一个恶意二维码检测系统,但是主要针对钓鱼网站进行检测,且采用C/S模式,黑白名单存于服务器端,导致系统通信开销较大,效率不高。针对黑名单检测机制的不足,有研究者提出了基于机器学习的检测机制,与黑名单直接匹配不同,机器学习检测是从特征角度来进行检测识别。如文献选取URL的一些特征,但都是基于URL文本的一些特征,没有考虑网站特征,检测不够全面。

本文针对钓鱼网站、跨站脚本攻击、恶意下载链接三种代表性的攻击方式提出一个全方位深层次的二维码安全检测系统。系统的特色与创新之处变现为:1)提出结合黑伯名单和文本相似性匹配的轻量级恶意网站检测方法;2)提出恶意网址用户举报制度;3)基于机器学习和数据挖掘技术的未知URL深度分析方法;4)基于SIFT匹配算法的计算机视觉技术的未知URL深度分析方法。

2系统总体框架

本文提出了一个二维码安全检测系统,其硬件结构主要采用C/S结构(客户机和服务器结构)。不同于文献,本文的系统将黑白名单分别存在客户端Sqlite中和服务器端SQL Server中用于查找,并且将轻量级检测功能部署到客户端,将深度检测算法部署到服务器端。功能分布如图1所示。

3系统流程

本文系统客户端为运行Android操作系统的智能终端,服务器端为PC机或桌面工作站。每部分都由一定的功能模块组成,如图2所示。

系统的流程如下:

Step1:二维码扫描和解码实现

通过Zxing提供的关于二维码扫描和解码的算法和相关代码,来完成这部分的工作。

Step2:客户端基于黑白名单的恶意URL快速检测

扫描二维码后,将解码后得到的URL与客户端中的黑白名单中的URL进行比较来完成快速的检测。若在黑白名单里,即可直接返回结果。否则进行Step3。

Step3:利用文本相似性计算/匹配技术设计快速检测出钓鱼网站

由于钓鱼网站总是会仿冒一些知名网站来欺骗用户,因此其域名/网址和被仿冒的知名网站的域名/网址具有很大的相似性。根据这个特点,本系统利用文本相似性计算/匹配技术设计一种针对钓鱼网站的轻量级的检测算法,与知名网址进行文本相似性计算,同时进行Step4。

Step4:分类检测

对于在客户端无法确定的可疑URL,传送至服务器端,首先进行URL合法检测,若不合法,可直接在客户端输出“URL不合法”,否则分别进行针对跨站脚本的检测、针对下载链接检测和针对钓鱼网站的检测。

1)攻击者会根据该漏洞在URL里面加入某些参数和恶意代码来进行跨站脚本攻击,因此通过判断URL或者所指页面是否嵌入恶意代码可以进行初步的检测。

2)从URL链接上可以根据头部信息获得相应下载文件类型,而下载内容需要下载到手机后经进一步扫描才能检测其安全性。

3)针对钓鱼网站的检测

①服务器端基于黑白名单的恶意URL快速检测

将客户端传人的URL与服务器端中的黑白名单中的URL进行比较来完成快速的检测。若在黑白名单里,即可直接返回结果。

②基于SVM的恶意URL深度检测算法

利用SVM分类器对恶意URL深度检测,在服务器端通过对该URL及其指向的网站进行特征提取、分类学习、预测判断等。

③基于SIFT匹配算法的恶意URL深度检测算法

对于SVM检测后的钓鱼网站URL,我们使用SIFT匹配算法的页面相似度检测技术进一步检测。提取该钓鱼网站页面的视觉特征与被仿冒的目标网页相对比,得到更具有准确性的结论。

4恶意二维码检测方法

4.1针对多种攻击方式的全方位检测

通过二维码检测到的往往只是URL信息,通过URL传人恶意数据的大都是非持久型XSS,因此本系统只针对URL中的相关参数进行检测。大部分Web漏洞都源于Web应用程序没有处理好用户的输入,XSS就是利用该漏洞,通过在URL中嵌入脚本代码来进行攻击的。但二维码解析后的URL中出现一些代码不免有些奇怪,所以攻击者为避免被发现,会使用一个看似没有问题的URL去链向携带恶意脚本的链接,而使他人进入圈套。因此,本系统首先对二维码解析后的URL进行检测是否有

公司地址: 北京市西城区德外大街83号德胜国际中心B-11

客服热线:400-656-5456  客服专线:010-56265043  电子邮箱:longyuankf@126.com

电信与信息服务业务经营许可证:京icp证060024号

Dragonsource.com Inc. All Rights Reserved

icp