APP下载

电信增值业务安全保护方案研究

2017-04-13薛姗刘利军董航赵蓓

电信工程技术与标准化 2017年11期
关键词:攻击者密码客户端

薛姗, 刘利军, 董航, 赵蓓

(1 中国移动通信集团设计院有限公司,北京 100080;2 中国移动通信集团信息安全管理与运行中心,北京 100053)

电信增值业务安全保护方案研究

薛姗1, 刘利军2, 董航2, 赵蓓1

(1 中国移动通信集团设计院有限公司,北京 100080;2 中国移动通信集团信息安全管理与运行中心,北京 100053)

本文分析了典型的增值业务场景以及其容易受到安全威胁外,还提供了针对威胁和攻击的保护技术措施。有助于运营商确保增值业务的安全性,保护用户的利益。

增值服务;安全威胁;安全保护方案

1 引言

随着网络和终端能力的快速发展,电信运营商正在向用户提供越来越多的各种增值服务。典型的增值服务包括移动办公自动化、电子阅读、电子商务等。在许多情况下,由于增值服务涉及敏感操作或关键数据,容易成为恶意攻击者的目标。恶意用户可以通过服务漏洞谋取利益或者对其他用户造成危害。

2 典型的增值服务场景

电信增值业务主要是指与基本电信/数据服务(如语音呼叫、短消息服务(SMS)、多媒体消息服务(MMS)和数据访问)一起提供的信息服务。增值服务依赖于基础电信/数据服务,电信运营商通常将此类服务的服务器托管在运营商网络中。

电信增值服务场景通常包括了验证用户身份,服务订阅(服务订阅和服务取消订阅),用户支付费用,用户信息展示以及与其他系统进行交互等。

增值服务首先需要验证用户身份,根据验证结果,做出适当反应。如果认证失败,返回拒绝信息;如果认证成功,则返回用户认证凭证。

增值服务一般根据用户的不同需求提供不同种类的服务。用户可以通过订阅服务来更改服务种类,包括服务订阅和服务取消订阅。

用户通常还需要为服务支付费用。付款方式主要有两种类型:预付款和后付款。预付款是指用户在使用之前支付费用,通常通过第三方的在线电子支付(如信用卡)付款。相对于预付费,而对于某些服务用户无需立即付款则属于后付费的场景,其服务费用通常包含在用户的话费账单中并定期进行结算。

用户信息也是电信增值服务的重要组成部分,包括由系统服务器记录的个人信息,以及服务操作和订购信息,将用户信息显示在系统界面上供用户查询也是增值业务的主要功能之一。

此外增值服务系统通过外部接口与其他系统进行交互进而为用户提供广泛的服务。所以增值服务系统与其他系统交互的过程也是本文重点关注的场景之一。

3 增值服务面临的安全威胁

本节对上文分析的典型的增值业务服务场景(用户身份,服务订阅(服务订阅和服务取消订阅),用户支付费用,用户信息展示以及与其他系统进行交互等具体场景中的安全风险进行详细分析。

3.1 用户身份认证

3.1.1 身份冒用

身份冒用通常是指攻击者通过各种技术手段将自己伪装成合法用户登录增值服务系统。

首先,攻击者在无法利用其它漏洞的情况下会利用计算机的运算能力使用穷举的方式来尝试登录系统。常见的穷举包含密码穷举和账号穷举两种:对于支持静态密码的增值服务系统,攻击者可以通过使用各种字符组合猜测某个账户的密码来尝试登录系统这种方式通常称为密码穷举。账号穷举一般是指电信运营商提供的增值服务通常使用用户的电话号码作为登录ID。这意味着用户的登录账号可以被猜到的。攻击者可以使用少量常用的弱密码(如“123456”),穷举用户账户名称(即电话号码),来尝试登录服务系统。通过这种方式,攻击者可以快速获取大量用户账户和密码,从而登录服务系统。

另外,增值服务系统的用户认证功能通常将用户提交的登录信息与存储在系统数据库中的信息进行比较。如果一致,则认为用户认证成功。在某些情况下,如果身份验证模块中存在实现缺陷,攻击者可以构建特殊的登录信息,欺骗身份验证功能生成认证成功信息。

除此之外,用户提交登录信息后验证模块已通过身份验证,结果需要返回给客户端。服务客户端根据认证结果接受或拒绝用户请求。在某些情况下,攻击者可以拦截和修改身份验证结果,并将已被篡改的身份验证结果返回给客户端。攻击者可以通过这种方式绕过身份认证。

通常情况下为了维护用户的状态,客户端必须向服务器端发送唯一的标识(会话ID)。 对于服务器端,唯一的ID用于验证用户。攻击者可以暴力破解、猜测分析、嗅探等方式获得会话ID信息,来实现冒充该用户访问系统目的。

3.1.2 密码重置

在密码重置过程中,用户需要提供必要的凭据证明其对账户的所有权。如果用户设置的找回凭据过于简单(如秘密问题的答案设置过于简单很容易猜到或者过于位数过少的短信验证码)攻击者可以通过猜测或者暴力破解获得凭据进而伪装成用户来重置用户的密码。

部分增值服务系统可能用邮箱的方式来实现密码重置功能,如果通过预留的邮箱地址来重置密码,用户会收到包含统一的URL链接的邮件,点击链接即可重置密码。重置链接中通常有一个参数指定用户ID。如果该参数未加密,攻击者可以伪造密码重置链接进而重置任何用户的密码。

通常情况下为了正确认证用户,验证操作应在服务器端执行。如果认证在客户端进行,则攻击者可以通过在客户端伪造验证结果并将其发送到服务器端来重置任何其他用户的密码。

3.2 服务订购

电信增值业务服务订购功能常常存在被篡改的风险,例如用户订阅某项服务时,需将订阅信息(包括服务类型和用户信息)发送到服务器端。如果在此保护不当被攻击者截获修改则会对增值业务造成很大安全威胁。服务订购篡改通常保护以下两方面。

服务价格或运费:以较低的金额支付服务费用。

服务类型:攻击者可以首先选择较低价格的服务,然后以较高的价格将提交的服务类型修改为其他服务。那么攻击者可以以更低的价格获得更高价值的服务。

3.3 用户信息

电信增值业务服务系统通常保存着大量的用户信息如果保护不当就会存在被泄露的风险。例如攻击者可以在服务系统服务器和终端之间传输过程中拦截用户信息。如果信息未加密或加密可以被轻松破解,则用户信息即可被获取。

通常情况下,用户信息是不在客户端存储的。当用户查询信息时,由客户端向系统服务器发送查询请求消息。请求消息中通常有一个指定用户标识的参数。如果发送到服务器的用户ID可以被获取到,攻击者可以伪造用户的请求消息并尝试获取用户的信息。另外SQL注入也可以用于未经授权获取用户信息。

3.4 外部应用接口

攻击者还可以通过API将外部系统发送到系统服务器的正常消息分组捕获,然后将其重放到系统服务器。如果消息是由外部系统发送的数据,服务器认为其实正常的用户数据,攻击者可以冒充用户完成认证并通过API与其他外部系统进行交互,或者构建的特殊输入数据(例如超长参数、特殊SQL语句、特殊脚本)来达到系统崩溃,数据泄漏或特权升级的目的;如果该数据表是用于服务器向用户发送消息(例如SMS或电子邮件),则可能引起SMS炸弹或垃圾邮件等安全威胁。

4 增值服务安全防护

通过前文分析可以看出为了保护用户权益和运营商自身的利益,电信运营商需要其增值服务提供足够的安全保护。在此基础之上本文提出了一个增值服务的安全保护框架,主要考虑了以下5个不同的安全领域。

(1)网络拓扑安全:增值服务的服务器应部署在网络安全域中,并采取适当的安全措施。

(2)设备或操作系统安全:网络设备应具有安全配置和保护(也包括服务器的操作系统)。

(3)平台或软件安全:软件平台和第三方组件的漏洞通常会出现增值业务开发过程中,直接影响到业务安全。

(4)业务流程安全性:业务功能是在一系列操作流程的基础之上实现的,所以针对业务流程设计相应的安全机制来确保业务安全。

(5)终端安全:用户需要使用不同终端(如个人电脑,平板电脑和手机)访问业务,其安全防护对服务安全性至关重要。

在增值业务的安全保护框架之下本文提出了对应的一整套增值业务安全保护方案,分为基础安全保护方案和增值业务典型场景下的保护方案两部分。

4.1 基础安全保护方案

基础安全保护方案是为确保增值服务安全的一套通用安全保护方案,可用于不同服务场景。

4.1.1 二次确认措施

服务过程中的关键操作应由用户再次确认,以防止未经授权的操作。对于第二次确认,需要不同的认证方法。例如,如果用户通过用户名和密码进行身份验证,则当订购时可以使用短信验证码、电子邮件验证码和超链接、通过回拨的语音验证码、安全问题等方式进行第二次确认。用户二次确认过程应在系统日志中详细记录,用于日后审计。

4.1.2 系统分析措施

应对以下用户的异常行为进行分析,例如使用相同账户或使用来自IP地址的不同账户的大量失败登录;在短时间内频繁变更业务,例如每天多次更换服务;业务活动突然增加,例如某项服务的订单数量突然增加;来自相同IP地址或区域的大量业务操作等等,这些异常行为通常包含着尚未被发现的攻击行为。

4.1.3 会话安全措施

为了保护用户会话安全,系统服务器应支持以下会话ID和会话cookie的安全机制:会话ID应唯一标识用户,并将会话与所有其他业务会话区分开;对于每个新会话,会话ID将是不可预测的和重新生成的;会话ID不得以明文形式包含用户信息和认证信息,并且在过期后自动终止。

4.1.4 交互过程保护措施

从外部输入的所有数据都可能是攻击者伪造的。因此,在系统服务器使用之前,必须对输入数据进行验证、过滤和编码。由于用户直接操作客户端,所以客户端具有很大的安全隐患,其功能应受到限制。特别是用户信息认证和基于API的交互操作不应该在客户端执行。

为了防止重放攻击,客户端和服务器端之间的消息传输应采用添加时间戳或者序列号的方式来保证其安全。

4.2 典型情况下的保护措施

典型情况下的安全保护方案是为确保增值服务安全的特点制定的具有针对性的安全保护方案,可用于特定的服务场景。

4.2.1 用户身份认证保护措施

针对该类增值业务的典型场景,其保护措施主要集中在验证用户的有效性:提醒用户更改设置多于简单的密码;在客户端和服务器端之间交换认证信息的传输过程中使用加密的网络协议或对认证消息进行加密;对用户输入的信息和URL应进行检查,以防恶意输入;密码中的每个字符应在终端上显示前应进行模糊化处理;用户认证后,服务器应为符合安全会话要求的用户生成新的会话ID;实施交互过程保护措施,避免重放攻击。

4.2.2 订阅和支付服务保护措施

针对该类增值业务的典型场景,其保护措施着重于确保服务操作是根据用户自己的需求产生的。这些措施也旨在阻止特定用户的恶意服务操作。保护措施包括:完成服务订单需要输入“验证码”。最好在确认服务操作时强制用户进行二次确认。在传输过程中通过使用加密保护的网络协议或加密算法来传输用户订阅信息。

在支付环节还需要注意的是如果用户通过Wi-Fi或者Web网络下单,则需要对服务订单进行两步验证,且需要使用不同的认证方法(例如短信或电话)进行确认;需要技术手段及时监测服务费用异常情况。对于传输的关键数据(例如用户密码、支付金额、业务类型等),使用加密保护的网络协议,或者业界接受的算法来保证其传输过程安全。当服务类型更改时,应向发送用户提示消息。需要根据用户订购的内容和数量而不能根据用户输入的数据来确认用户的需要支付费用。在支付完成后服务器端应与银行系统确认用户的付款操作。

还应注意限制同一电话号码的日常业务订单的数量,防止恶意订购的行为发生。

4.2.3 用户信息保护措施

针对该类增值业务的典型场景,其保护措施侧重于用户个人信息的存储、传输和展示等环节。保护措施包括:通过使用加密保护的网络协议或加密算法来传输用户的个人信息;在终端上显示用户信息时,用特殊字符替换敏感的文本信息;审核客户信息的查询和修改操作等。

存储用户信息的过程中,还应注意对用户信息进行加密,除此之外增值服务系统应有详细记录以便定期审核任何查看,提取或修改用户信息的操作。

4.2.4 外部应用接口保护措施

针对该类增值业务的典型场景,其保护措施集中在通过API输入的信息。使用黑白名单可来协助判断,检查输入到API的数据源,丢弃对API的异常参数输入并发送统一提示消息,确保不泄露内部敏感信息。

Research on secure protection program for value-added services in telecom

XUE Shan1, LIU Li-jun2, DONG Hang2, ZHAO Bei1
(1 China Mobile Group Design Institute Co., Ltd., Beijing 100080, China; 2 China Mobile Information Security Center,Beijing 100053, China)

In addition to analyzing typical service scenarios, security threats and attack methods, this paper provides technical measures to counter threats and attacks. This will help the operators to assure the security of the value-added service, and will also protect the users’ benefits.

value-add service; security threat; security protection program

TN918

A

1008-5599(2017)11-0012-04

2017-10-12

猜你喜欢

攻击者密码客户端
密码里的爱
基于微分博弈的追逃问题最优策略设计
如何看待传统媒体新闻客户端的“断舍离”?
密码抗倭立奇功
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
正面迎接批判
密码藏在何处
有限次重复博弈下的网络攻击行为研究
夺命密码