本发明涉及电视互联网中视频安全运营领域,具体说是一种基于统计学的异常接口访问识别方法。
背景技术:
电视互联网是继PC互联网、移动互联网后又一新的互联网形态,它是广电网络与移动网络和互联网三者结合,而形成的以电视为中心的多屏互联互通的网络格局,是三网融合的产物。
互联网视频聚合应用(互联网视频聚合APP)是一种可以安装在互联网智能电视、电视机顶盒或手机中的一种聚合类视频应用(聚合类视频APP)。这类作为客户端的视频应用长期存在服务器接口被非法访问的风险,且其手法越来越隐蔽。
例如:目前存在一种通过视频应用(视频APP),模拟用户正常操作的方式进行视频播放,藉此非法批量获取可播放链接的手法。此类非法访问服务器接口的情况,如果简单的通过客户端日志中识别频发访问用户并进行黑名单屏蔽的方式进行识别、处理,只能识别或拦截已知的特定攻击类型,不够灵活。而且如果只是利用单一客户端日志的信息,则未能有效的利用更广泛的日志信息。
另一方面,用户操作的行为能够反映客户端的运营状态,例如:当客户端不正常运行或者交互过程设计不当时,可能产生大量的、用户重复进行某种操作的行为。而各聚合类视频应用都有各自的接口和记录方式,因此很难找到通用的办法来帮助聚合类视频应用的运营商分析运营状况。
技术实现要素:
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于统计学的异常接口访问识别方法,基于海量客户端日志进行统计分析,可有效识别通过客户端非法访问服务器的用户异常使用行为,可以为运营商提供运营支持,所述运营支持是指根据被鉴别出来的用户异常使用行为,为改进产品提供依据,以消除安全风险和屏蔽用户异常使用行为。
为达到以上目的,本发明采取的技术方案是:
一种基于统计学的异常接口访问识别方法,其特征在于,包括如下步骤:
步骤1,服务器端获取客户端访问服务器的日志,最终形成某一天内每个用户访问了哪些接口的历史记录;
所述服务器端指至少达到千万级用户总数的服务器端,或至少达到百万日活用户的服务器端,
所述客户端指所有在线且与服务器端交互数据的客户端;
步骤2,服务器端分析客户端访问服务器的日志;
通过分析得到各接口的访问频次与用户数的关系图,横坐标和纵坐标分别表示访问频次、用户数;
步骤3,根据步骤2的结果,选择需重点关注的特定的接口,获取特定的接口的访问频次与用户数的关系;
所述特定的接口指易被非法访问的接口,或所述特定的接口指能远程访问的接口,或所述特定的接口指用户最常访问的接口,或所述所述特定的接口指获取资源的最终接口;
步骤4,服务器端分析特定的接口的访问频次与用户数的关系中的异常值;
步骤5,根据异常值自动判断异常访问类型;
异常访问类型分为运营问题和非法访问两大类;
步骤6,对于非法访问的异常访问类型,拦截对应的异常客户端,屏蔽利用客户端非法访问服务器的行为;
对于运营问题的异常访问类型,通过日志获取用户的具体操作,并针对这些异常操作提供运营支持。
在上述技术方案的基础上,所述客户端访问服务器的日志中至少记载了以下内容:
用户信息,被访问的接口信息,访问的日期及时间信息,具体操作信息。
在上述技术方案的基础上,服务器端分析客户端访问服务器的日志采用后台分析。
在上述技术方案的基础上,所述访问频次指所有参与统计的用户对某一接口的访问次数,
所述用户数指以某一频次访问某一个接口的总人数。
在上述技术方案的基础上,步骤3所述需重点关注的特定的接口包括但不限于:
标志着用户进入某个页面的接口,
标志着用户进行了某项操作的接口,
后台自动任务接口。
在上述技术方案的基础上,步骤4中,按照以下原则分析异常值:
原则1,每天访问次数明显超出上限阈值的离散点,所述上限阈值为自定义值,
原则2,关系图的图形中的凸起部分,
原则3,每天访问次数明显少于下限阀值的离散点,所述下限阈值为自定义值。
在上述技术方案的基础上,步骤5中,所述异常访问类型包括:
异常访问类型1,根据原则3分析出的异常值得到,属于运营问题,
异常访问类型2,根据原则2分析出的异常值得到,属于运营问题,
异常访问类型3,根据原则1分析出的异常值得到,属于非法访问。
在上述技术方案的基础上,自动判断异常访问类型通过脚本程序实现。
本发明所述的基于统计学的异常接口访问识别方法,基于海量客户端日志进行统计分析,可有效识别通过客户端非法访问服务器的用户异常使用行为,可以为运营商提供运营支持,所述运营支持是指根据被鉴别出来的用户异常使用行为,为改进产品提供依据,以消除安全风险和屏蔽用户异常使用行为。
附图说明
本发明有如下附图:
图1本发明的流程图。
图2客户端非法访问服务器拦截示意图
图3双对数频次曲线图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1~3所示,本发明所述的基于统计学的异常接口访问识别方法,包括如下步骤:
步骤1,服务器端获取客户端访问服务器的日志,最终形成某一天内每个用户访问了哪些接口(指服务器端的接口)的历史记录;
所述服务器端指至少达到千万级用户总数的服务器端,或至少达到百万日活用户(DAU,Daily Active User)的服务器端,
所述客户端指所有在线且与服务器端交互数据的客户端;
所述客户端访问服务器的日志中至少记载了以下内容:
用户信息,被访问的接口信息,访问的日期及时间信息,具体操作信息;
更进一步,为了避免日志被非法获取或截获导致涉密信息泄露,日志中的内容采用密文形式记录,即,记载的内容均为加密后的密文,不能直接阅读,服务器端解密密文后方可进行分析,以提高安全性;
步骤2,服务器端分析客户端访问服务器的日志;
服务器端分析客户端访问服务器的日志采用后台分析,
通过分析得到各接口访问频次与用户数的关系图,横坐标和纵坐标分别表示访问频次、用户数;
例如:图3所示双对数频次曲线图即为一个关系图实例,图3中横坐标表示访问频次,纵坐标表示用户数,图中异常的凸起、曲线头部以及曲线长尾上的离散点都对应着某种异常的接口访问类型,
所述访问频次指所有参与统计的用户对某一接口的访问次数,
所述用户数指以某一频次访问某一个接口的总人数,
步骤3,根据步骤2的结果,选择需重点关注的特定的接口,获取特定的接口的访问频次与用户数的关系;
所述特定的接口指易被非法访问的接口,或所述特定的接口指能远程访问的接口,或所述特定的接口指用户最常访问的接口,或所述所述特定的接口指获取资源的最终接口;
接口选与不选与互联网视频聚合应用(互联网视频聚合APP)的具体功能及系统架构有关,可按需选择;通常可包括以下接口:
标志着用户进入某个页面的接口,例如:主页,搜索页,设置页,视频分类页,视频详情页;
标志着用户进行了某项操作的接口,例如:扫码、刷新直播节目单,点击播放;
后台自动任务接口,例如:自动更新、初始化;
步骤4,服务器端分析特定的接口的访问频次与用户数的关系中的异常值;
按照以下原则分析异常值:
原则1,每天访问次数明显超出上限阈值的离散点,所述上限阈值为自定义值,
例如:上限阈值可设为5000,图3中最右面的离散点,表示有极个别的用户(一个用户)每天访问的接口数达到54万多次(541095次),这是不可能的;
图中超多1万次访问的用户有9个,5000-10000次的用户有8个;这里的非法访问特指每天操作次数过于频繁的这种情况,事实上海量统计确实会有意想不到的发现,从这点上确实可以说能发现未知的非法访问情况,但是在发现前你不会知道怎么描述这种非法访问状态,举个例子,最右侧的孤立点,访问超过1w次的用户、5k-1w之间的用户、2k-5k之间的用户其非法访问的类型可能就是不同的;
原则2,关系图的图形中的凸起部分,
例如:图3中有两个凸起,根据统计学原理,这种图应该是平滑曲线,不应该出现这么明显的凸起;
原则3,每天访问次数明显少于下限阀值的离散点,所述下限阈值为自定义值,
例如:图3中最左侧的少数离散点;
步骤5,根据异常值自动判断异常访问类型;
所述异常访问类型包括:
异常访问类型1,根据原则3分析出的异常值得到,属于运营问题,
异常访问类型2,根据原则2分析出的异常值得到,属于运营问题,
异常访问类型3,根据原则1分析出的异常值得到,属于非法访问,
自动判断异常访问类型通过脚本程序实现;
步骤6,根据异常访问类型3,拦截对应的异常客户端,屏蔽利用客户端非法访问服务器的行为;
根据异常访问类型1、2,通过日志获取用户的具体操作,并针对这些异常操作提供运营支持,例如:修改代码解决用户没法正常操作导致的异常操作等。
由于日志中记录了具体操作信息,因此可以根据这些信息,对非法访问及运营问题进行细分,并针对各个情况进一步制定处理方案。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。