用于识别网页挖矿脚本的方法及装置制造方法及图纸

技术编号:18668507 阅读:40 留言:0更新日期:2018-08-14 20:41
本发明专利技术公开了一种用于识别网页挖矿脚本的方法及装置,属于互联网技术领域。所述方法包括:获取待测页面的JavaScript文件;根据预设的关键字列表在所述JavaScript文件中查找挖矿关键字,其中,所述关键字列表包括多个所述挖矿关键字;根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本。本发明专利技术提供的用于识别网页挖矿脚本的方法及装置能够较准确地识别网页中是否植入有挖矿脚本,有助于保护用户的利益。

Method and device for identifying web mining scripts

The invention discloses a method and a device for identifying a web page mining script, belonging to the Internet technical field. The method includes: obtaining a JavaScript file of the page to be tested; searching for a mining keyword in the JavaScript file according to a preset keyword list, wherein the keyword list includes a plurality of said mining keywords; and identifying whether there is a mining script in the page to be tested according to the search result of the mining keyword. . The method and the device for identifying the mining script of a web page can more accurately identify whether the mining script is embedded in the web page, and is helpful to protect the interests of users.

【技术实现步骤摘要】
用于识别网页挖矿脚本的方法及装置
本专利技术涉及互联网
,尤其涉及一种用于识别网页挖矿脚本的方法及装置。
技术介绍
随着比特币的成功,许多基于区块链技术的数字货币纷纷问世,例如以太币,门罗币等。这类数字货币并非由特定的货币发行机构发行,而是依据特定算法通过大量运算所得。而完成如此大量运算的工具就是挖矿机程序。挖矿机程序运用计算机强大的运算力进行大量运算,由此获取数字货币。由于硬件性能的限制,数字货币玩家需要大量计算机进行运算以获得一定数量的数字货币。由此,网页中被植入挖矿脚本的情况越来越多。对于被植入挖矿脚本的网页,用户在访问该网页时,挖矿脚本会同时进行挖矿,挖矿会严重占用用户计算机资源,导致计算机卡慢,甚至出现死机等情况,严重影响用户计算机的正常使用。但是,目前尚未有一种能够有效识别植入到网页中的挖矿脚本的方法。
技术实现思路
鉴于上述问题,本专利技术提出了一种用于识别网页挖矿脚本的方法及装置,以有效地识别网页中是否植入有挖矿脚本。第一方面,本专利技术实施例提供了一种用于识别网页挖矿脚本的方法,所述方法包括:获取待测页面的JavaScript文件;根据预设的关键字列表在所述JavaScript文件中查找挖矿关键字,其中,所述关键字列表包括多个所述挖矿关键字;根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本。进一步地,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中存在所述关键字列表中的挖矿关键字,则判定所述待测页面中存在挖矿脚本。进一步地,所述根据查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则获取所述待测页面保存当前时间的操作频率,根据所述操作频率识别所述待测页面中是否存在挖矿脚本。进一步地,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则执行以下步骤:获取待测页面的多个网络传输数据包;查找所述多个网络传输数据包中的目标数据包,所述目标数据包包括:对应于预设挖矿通信协议的第一特征数据包、第二特征数据包或第三特征数据包;根据所查找到的目标数据包的数量识别所述待测页面中是否存在挖矿脚本。进一步地,所述查找所述多个网络传输数据包中的目标数据包,包括:查找所述多个网络传输数据包中包含第一特征字段、第二特征字段或第三特征字段的网络传输数据包;将包含所述第一特征字段的所述网络传输数据包记为第一特征数据包;将包含所述第二特征字段的所述网络传输数据包记为第二特征数据包;将包含所述第三特征字段的所述网络传输数据包记为第三特征数据包。进一步地,所述根据所查找到的目标数据包的数量识别所述待测页面中是否存在挖矿脚本,包括:根据所查找到的目标数据包的数量得到挖矿交互频率;当所述挖矿交互频率大于或等于预设值时,判定所述待测页面中存在挖矿脚本;当所述挖矿交互频率小于预设值时,判定所述待测页面中不存在挖矿脚本。进一步地,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,还包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则执行以下步骤:获取渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率;根据所述渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率得到特征值;判断所述特征值是否大于或等于第一预设阈值;若所述特征值大于或等于所述第一预设阈值,则判定所述待测页面中存在挖矿脚本。进一步地,所述获取渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率之前,还包括:获取浏览器的每个渲染进程在所述预设周期内的CPU占用率;判断是否存在所述渲染进程在所述预设周期内的CPU占用率大于第三预设阈值;若存在,再对该渲染进程执行所述获取所述渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率的步骤。进一步地,若所述特征值小于所述第一预设阈值,则获取所述待测页面保存当前时间的操作频率,根据所述操作频率识别所述待测页面中是否存在挖矿脚本。进一步地,所述根据所述操作频率识别所述待测页面中是否存在挖矿脚本,包括:判断所述操作频率是否大于或等于预设频率阈值,若所述操作频率大于或等于预设频率阈值,则判定所述待测页面中存在挖矿脚本;若所述操作频率小于预设频率阈值,则执行以下步骤:获取待测页面的多个网络传输数据包;查找所述多个网络传输数据包中的目标数据包,所述目标数据包包括:对应于预设挖矿通信协议的第一特征数据包、第二特征数据包或第三特征数据包;根据所查找到的目标数据包的数量识别所述待测页面中是否存在挖矿脚本。进一步地,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,包括:获取特征检测操作的检测结果,其中,所述特征检测操作包括基于所述待测页面保存当前时间的操作频率的检测操作、基于所述待测网页的网络传输数据包的检测操作以及基于CPU占用率的检测操作的任意一种或多种组合;根据所述挖矿关键字查找结果以及第一预设规则得到第一分值;根据所述特征检测操作的检测结果以及第二预设规则得到第二分值;根据所述第一分值、所述第二分值以及第三预设规则判断所述待测页面中是否存在挖矿脚本。进一步地,所述基于所述待测页面保存当前时间的操作频率的检测操作包括:获取所述待测页面保存当前时间的操作频率,将所述操作频率作为所述基于所述待测页面保存当前时间的操作频率的检测操作的检测结果。进一步地,所述基于所述待测网页的网络传输数据包的检测操作包括:获取待测页面的多个网络传输数据包,查找所述多个网络传输数据包中的目标数据包,将所查找到的目标数据包的数量作为所述基于所述待测网页的网络传输数据包的检测操作的检测结果。其中,所述目标数据包包括:对应于预设挖矿通信协议的第一特征数据包、第二特征数据包或第三特征数据包。进一步地,所述基于CPU占用率的检测操作包括:获取渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率;根据所述渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率得到特征值;将所述特征值作为所述基于CPU占用率的检测操作的检测结果。第二方面,本专利技术实施例还提供了一种用于识别网页挖矿脚本的装置,所述装置包括:第一获取模块,用于获取待测页面的JavaScript文件;关键字查找模块,用于根据预设的关键字列表在所述JavaScript文件中查找挖矿关键字,其中,所述关键字列表包括多个所述挖矿关键字;识别模块,用于根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本。进一步地,所述识别模块包括:第一判定子模块,用于若所述JavaScript文件中存在所述关键字列表中的挖矿关键字,则判定所述待测页面中存在挖矿脚本。进一步地,所述识别模块包括:第二判定子模块,用于若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则获取所述待测页面保存当前时间的操作频率,根据所述操作频率识别所述待测页面中是否存在挖矿脚本。进一步地,所述识别模块包括:第三判定子模块,用于若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则执行以下步骤:获取待测页面的多个网络传本文档来自技高网...

【技术保护点】
1.一种用于识别网页挖矿脚本的方法,其特征在于,所述方法包括:获取待测页面的JavaScript文件;根据预设的关键字列表在所述JavaScript文件中查找挖矿关键字,其中,所述关键字列表包括多个所述挖矿关键字;根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本。

【技术特征摘要】
1.一种用于识别网页挖矿脚本的方法,其特征在于,所述方法包括:获取待测页面的JavaScript文件;根据预设的关键字列表在所述JavaScript文件中查找挖矿关键字,其中,所述关键字列表包括多个所述挖矿关键字;根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本。2.根据权利要求1所述的方法,其特征在于,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中存在所述关键字列表中的挖矿关键字,则判定所述待测页面中存在挖矿脚本。3.根据权利要求1所述的方法,其特征在于,所述根据查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则获取所述待测页面保存当前时间的操作频率,根据所述操作频率识别所述待测页面中是否存在挖矿脚本。4.根据权利要求1所述的方法,其特征在于,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则执行以下步骤:获取待测页面的多个网络传输数据包;查找所述多个网络传输数据包中的目标数据包,所述目标数据包包括:对应于预设挖矿通信协议的第一特征数据包、第二特征数据包或第三特征数据包;根据所查找到的目标数据包的数量识别所述待测页面中是否存在挖矿脚本。5.根据权利要求1所述的方法,其特征在于,所述根据所述挖矿关键字查找结果识别所述待测页面中是否存在挖矿脚本,还包括:若所述JavaScript文件中不存在所述关键字列表中的挖矿关键字,则执行以下步骤:获取渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率;根据所述渲染进程中所述待测页面的每个线程在预设周期内的CPU占用率得到特征值;判断所述特征值是否大于或等于第一预设阈值;若所述特征值大于或等于所述第一预设阈值,则判定所述待测页面中存在挖矿脚本。6.根据权利要求5所...

【专利技术属性】
技术研发人员:尹青建贾正强
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1