CN1874560A - 手机安全保护*** - Google Patents

手机安全保护*** Download PDF

Info

Publication number
CN1874560A
CN1874560A CNA2005100263582A CN200510026358A CN1874560A CN 1874560 A CN1874560 A CN 1874560A CN A2005100263582 A CNA2005100263582 A CN A2005100263582A CN 200510026358 A CN200510026358 A CN 200510026358A CN 1874560 A CN1874560 A CN 1874560A
Authority
CN
China
Prior art keywords
packet
data
filter
execution
driver
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2005100263582A
Other languages
English (en)
Other versions
CN100469167C (zh
Inventor
何翔
何代水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inventec Appliances Shanghai Corp
Original Assignee
Inventec Appliances Shanghai Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Appliances Shanghai Corp filed Critical Inventec Appliances Shanghai Corp
Priority to CNB2005100263582A priority Critical patent/CN100469167C/zh
Publication of CN1874560A publication Critical patent/CN1874560A/zh
Application granted granted Critical
Publication of CN100469167C publication Critical patent/CN100469167C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种手机安全保护***,在嵌入式可配置操作***平台上建立网络设备驱动程序,该网络设备驱动程序包括高层驱动程序和底层驱动程序,并执行下列步骤:步骤一,当网络上有数据包从手机外部进入硬件缓冲区时,首先对从手机外部进入的数据包作协议分析,鉴别出是何种协议数据单元,然后再按照各自协议所定义的格式,对数据包进行分析;步骤二,如果协议数据单元不需要进行过滤,则执行步骤四,如果协议数据单元需要过滤,则执行步骤三;步骤三,再根据***设定的过滤策略来过滤可疑通信流量,如有问题,直接删除,如无问题执行步骤四;步骤四,将数据复制到分配收集缓冲区。

Description

手机安全保护***
技术领域
本发明涉及一种手机安全保护***,特别涉及一种采用GSM模块并在嵌入式可配置操作***(eCos)平台上的手机安全保护***。
背景技术
目前随着手机性能飞速提高、应用领域逐渐扩大,安全上的问题将会越来越多。比如手机用户接收到的短信息、通过无线网络下载到手机的文件数据以及通过其它一些通信手段接收的数据都可能会含有病毒、木马等危害手机安全的内容。另外已遭受感染的手机,可能还会在用户未知的情况下主动把手机中的一些私人的可能是很重要的数据传送给恶意用户。
因此,如何安全、高效的保证通信的安全将会是未来手机开发的一个重要问题。作为运营商来讲,可以采用更加安全的通信协议,以保证节点之间通信过程的安全;作为手机制造商来讲,则可以对手机的软硬件进行改进,过滤不安全的通信数据,以保证通信内容的安全。
发明内容
本发明要解决的技术问题是提供一种手机安全保护***。
为解决上述技术问题,本发明在嵌入式可配置操作***(eCos)平台上建立网络设备驱动程序,该网络设备驱动程序包括高层驱动程序和底层驱动程序,并执行下列步骤:步骤一,当网络上有数据包从手机外部进入硬件缓冲区时,首先对从手机外部进入的数据包作协议分析,鉴别出是何种协议数据单元,然后再按照各自协议所定义的格式,对数据包进行分析;步骤二,如果协议数据单元不需要进行过滤,则执行步骤四,如果协议数据单元需要过滤,则执行步骤三;步骤三,再根据***设定的过滤策略来过滤可疑通信流量,如有问题,直接删除,如无问题执行步骤四;步骤四,将数据复制到分配收集缓冲区。
为防止手机受感染后向外发送有害信息,本发明还利用嵌入式可配置操作***平台上建立的网络设备驱动程序,执行下列步骤:步骤一,当手机向外发送数据时首先调用底层驱动程序判断手机硬件是否处于忙的状态,如果手机硬件处于忙的状态,该数据包将在硬件驱动程序外排队等待,可执行步骤三;步骤二,如可发送,即将数据写入分配收集缓冲区,并对数据根据***设定的过滤策略来过滤可疑通信流量相应的分析过滤,如有问题,直接删除,如无问题再调用底层驱动程序的发送函数,把数据复制到硬件的缓冲区buffer内,执行步骤四;在复制数据到硬件缓冲区(buffer)发送之前,可以对数据根据***设定的过滤策略来过滤可疑通信流量相应的分析过滤,如有问题,直接删除,如无问题执行步骤四;步骤三,另创建一个线程,检索排队队列中是否有等待发送的数据包,如果有,就可以从队列头根据***设定的过滤策略来过滤分析每个数据包,经分析需禁止的就可以从队列中直接删除不再发送,经分析无需禁止的,执行步骤四;步骤四,指示硬件将数据发送。
本发明由于采用了在eCos平台上的GSM模块的过滤***,过滤过程处在***底层直接与硬件打交道的驱动程序中,因此本发明具有更高的运行效率,更加能确保整个过程的安全可靠。
附图说明
图1是GSM模块的构成及其通信的过程;
图2是GSM模块通信的数据帧结构,即LAPDm帧格式;
图3是本发明中eCos平台上的网络设备驱动程序的层次结构。
具体实施方式
下面结合附图对本发明作进一步详细的说明。
本发明的手机安全保护***在底层的通讯模块向外传送数据之前、收到外部传入的数据将要进一步处理之前,对数据包进行过滤分析,由于其中多个协议栈可能调用同一个通讯模块,如在GSM模块上就包括了话音、短信等多个协议栈,
因此,本发明首先对数据包作协议分析,鉴别出是何种PDU(协议数据单元),然后再按照各自协议所定义的格式,对数据包进行分析,这样可以使分析过滤更加高效、细致,包括根据源对象的接收或拒绝、对数据段部分进行基于特征的模式匹配,以过滤可疑通信流量,等等;过滤的过程直接处在通讯模块的驱动程序中,这样就使得分析过程更加安全、高效;包含的过滤策略可以包括根据发送数据包的源对象来判断接收或拒绝包、对包中的数据域位部分做基于特征的模式匹配等等,当然还可以为某些协议的包做特定过滤分析。
下面以基于eCos平台的GSM模块上的通信的过滤为例,详细说明该过程的实现:
首先eCos(embedded Configurable operating system)即嵌入式可配置操作***,是一种完全免费的开放源代码可配置、可移植、无版税、面向深嵌入式应用的实时操作***。从eCOS的名称可以看出,它最大的特点在于它是一个配置灵活的***。eCOS的核心部分是由不同的组件组成的,包括内核、C语言库和底层运行包等。每个组件能提供大量的可配置选项,利用eCOS提供的配置工具可以很方便地进行配置。通过不同的配置使得eCOS能够满足不同的嵌入式应用,并适合于深度嵌入式应用。
如图1,为本发明手机安全***采用的GSM模块的构成及其通信的过程。GSM模块共有三层,物理层、数据链路层、消息层,如图1体现了GSM协议通信的三个单元(MS、BSS、MSC)的协议栈结构。
物理层用于无线射频信号的发送与接收。
数据链路层有两种:一种处于移动终端设备(MS)和基站子***(BSS)之间的无线射频链路之上,完成类似于D通路链路接入协议(LADP)的功能,标记为LADPm,另一种是用于BSS和移动交换中心(MSC)之间的地面连接。
至于消息层完成的功能相比而言较多,其中射频资源(RR)管理子层在BSS终止并完成无线射频上的物理连接,从而传送呼叫相关的信令信息。移动性管理(MM)子层在MSC终止并关联那些使用直接传输应用进程(DTAP)透明地通过BSS发向MS和从MS传来的消息,按照MM子层提供的功能可以划分为三个过程:MM一般过程、MM连接相关过程、MM特殊过程。连接管理(CM)子层在MSC终止,他通常包含的实体有:包括了呼叫相关的辅助服务在内的呼叫控制(CC)、短消息服务(SMS)以及不依靠呼叫的辅助的服务支持(SS)。另外在消息层中还有BSS应用部分(BSSAP)和信令连接控制部分(SCCP),主要提供了在BSS和MSC之间传送信令相关的消息的功能,包括了BSS管理应用进程(BSSMAP)和直接传输应用进程(DTAP)。
下面来看一下本发明中***所涉及的GSM模块通信的数据帧结构,如图2所示:
本发明的安全***要对GSM模块上的通信信息进行过滤,首先要鉴别该数据是属于哪一个应用协议,如前所述,在GSM模块上就包括了CC、SMS、SS等等,这里***可以根据地址域(Address field)里链路协议鉴别符(LPD)字段加以区分。分析出它属于何种协议后,再对帧的数据部分按照各自协议所定义的数据包格式,进行各自特定的分析过滤。可以采用如下的分析方法:
对语音呼叫的连接,在移动终端(MS)收到BSS发来的请求建立连接的set-up消息包后,正常的过程是MS回发包含有其负载能力等信息的呼叫确认包,BSS收到后就可以进一步建立起物理上的通信信道的连接,这里***就可以分析set-up包,找到分析请求通话的另一个终端设备“地址”,看其是否属于***想要禁止的范围中,“地址”的结构通常为CC(国家码)+NDC(地区码)+SN(用户号),判断出需要禁止,就可以不发呼叫确认的包,或者发不能负载的确认包等等,这样就可以让提出呼叫的终端,收到信息是已关机或正在通话中或不在服务区等等,从而可以有效地防止骚扰电话。
对于SMS、MMS之类的消息服务协议,***不仅可以根据源设备“地址”丢弃即不向上层转发LADPm帧;还可以对帧中数据包的数据域位部分进行内容上的基于特征的匹配分析,过滤可疑的数据。这里值得注意的有个问题:如果某协议如MMS的数据包很长,可能会被切分成多块,在LADPm帧控制域(control field)有一个顺序号加以标记其顺序,对于这种情况,***可以把分析通过的包暂不交给上层缓存起来,等到全部都检查过后再转发给上层处理,如果中间查出有问题的包,那之前缓存的包不再转发,这一顺序序列之后的包也不用再分析,直接予以丢弃。
另外,***不仅可以对接收的信息进行过滤,而且对于本机向外发送的信息也可以加以过滤与禁止,以防止某些病毒木马在用户未知的情况下,在后台向外发送信息,给用户造成损失。因此,这里***可以在上层数据包传给链路层之前,对其进行分析过滤。比如可以检查目标终端的地址,暂时地锁定往所有(如在待机时)或往部分地址的向外的某种PDU,还可以根据已知病毒的特征(例如数据上含有特定字段或目标地址为某一特定值等等),按照特定的PDU格式,检查发送的数据包中的数据域位部分是否有非法内容。
接下来再介绍如何在eCos平台上实现该***。
首先如图3所示,是eCos平台上的网络设备驱动程序的层次结构。
其中高层驱动程序是独立于具体硬件的,其包含了网络协议栈的专用程序,它是网络协议栈的一个组成部分;在其下面有一个或多个底层驱动程序,这些底层驱动程序是与具体实际的网络硬件密切相关的;而再往下就是实际的硬件,比如我本***的GSM模块,用于完成物理层上的通信工作。
在底层驱动程序中提供了对硬件进行操作的函数,通常会包括硬件的初始化和激活、硬件的停止、设备控制、状态查询、数据的发送与接收、中断处理等等。当然也会提供一些API与高层驱动程序进行通信,包括了初始化、接收和发送等一些回调函数,以及用来唤醒网络传输线程的中断滞后服务程序(DSR)等。
下面介绍GSM模块接收数据并进行过滤的过程:
(1)网络上有包从外部进入硬件buffer,产生了一个异步中断。
(2)中断服务程序(ISR)在对中断源进行处理后,将请求运行DSR。
(3)DSR将唤醒网络传输线程,该线程将调用底层驱动程序中的deliver()传送函数(该函数的功能是使设备驱动程序接收数据包)。
(4)传送函数识别出已准备就绪的数据,然后再调用高层驱动程序中的receive回调函数,告诉它有多少字节已准备好。
(5)receive回调函数在栈内分配内存,并为包的接收准备一组scatter-gather缓冲区。
(6)然后将会调用底层驱动程序中的recv()函数将数据从硬件buffer复制到上一步提供的缓冲区中,这里***先不把整个数据全部复制过来,而是先提取复制它的头部的一段信息如Address field和control field,从中获得***想要的LPD字段,从而对该数据包进行协议分析:
如果是不需要进行过滤的PDU,则可以把数据复制去缓冲区了。
如果是需过滤的协议,就可以先进行一些过滤,比如之前所说的判断源发送终端的地址是否在禁止的范围中,如果被禁止就可以不用再把数据复制去缓冲区了,同时直接返回一定的响应;如果不在禁止范围内,再把数据复制过去。
(7)网络栈得到复制过来的接收数据后,上层就可以对它进行其它的相关处理。不过在这之前,如果该数据包是需要再进行数据内容上过滤的PDU,就可以按照该协议所定义的数据格式,针对其中的数据域位部分进行相应的基于特征的匹配过滤,对于分片的数据如果发现其中某片有需禁止的内容,之前该顺序系列的数据包就都可以释放,不再交给给上层处理,该顺序系列的之后的数据包也就可以直接予以删除,同时通知recv()函数不再从硬件buffer中复制该系列的数据包到scatter-gather缓冲区。
对于本机向外发送的数据信息也可以用类似的方法进行过滤:
(1)发送数据时底层驱动程序中的can_send()函数会先被调用,以确定硬件是否有空闲可以发送数据,如果处于忙的状态,该数据包将在硬件驱动程序外排队等待。
(2)如可发送,就把数据写入scatter-gather缓冲区,再调用底层驱动程序的send()函数,把数据复制到硬件的buffer内或指示硬件将其发送。在复制到硬件buffer发送之前,可以对数据进行相应的分析过滤,通过了(注意内容过滤时,分片的数据包需整个顺序序列全部通过,如其中有一个有非法内容,则整个顺序序列的数据包全部删除)再复制发送。
(3)之后,就是发送完成后的中断响应和DSR的运行,及高层驱动程序中的发送完成回调函数所进行的一些工作等等。
另外,当硬设备处于忙之中,可以另创建一个线程,检索排队队列中是否有等待发送的数据包,如果有,就可以从队列头开始分析过滤每个数据包,分析需禁止的就可以从队列中直接删除不再发送,分析通过的,之后send()函数发送时,也就可以不用再进行分析了,从而充分利用资源。注意在该线程分析队列中的数据包时,需要锁定该数据资源,以免跟send()函数同时操作,造成非预期的致命错误。

Claims (6)

1、一种手机安全保护***,手机采用GSM模块,其特征是,在嵌入式可配置操作***平台上建立网络设备驱动程序,所述网络设备驱动程序包括高层驱动程序和底层驱动程序,并执行下列步骤:步骤一,当网络上有数据包从手机外部进入硬件缓冲区时,首先对从手机外部进入的数据包作协议分析,鉴别出是何种协议数据单元,然后再按照各自协议所定义的格式,对数据包进行分析;步骤二,如果协议数据单元不需要进行过滤,则执行步骤四,如果协议数据单元需要过滤,则执行步骤三;步骤三,再根据***设定的过滤策略来过滤可疑通信流量,如有问题,直接删除,如无问题执行步骤四;步骤四,将数据复制到分配收集缓冲区。
2、根据权利要求1所述的手机安全保护***,其特征是步骤三所述***设定的过滤策略包括根据发送数据包的源对象来判断接收或拒绝包、对数据包中的数据域位部分做基于特征的模式匹配及为某些协议的数据包做特定过滤分析。
3、根据权利要求1或2所述的手机安全保护***,
其特征是,
所述步骤一包括:当网络上有数据包从手机外部进入硬件缓冲区时,产生一个异步中断指令;中断服务程序在对中断源进行处理后,请求运行中断滞后服务程序;所述中断滞后服务程序唤醒网络传输线程,该线程将调用底层驱动程序中的传送函数;所述传送函数识别出已准备就绪的数据,然后再调用高层驱动程序中的回调函数,通知所述回调函数已准备好的字节数量;所述回调函数在栈内分配内存,并为包的接收准备一组分配收集缓冲区缓冲区;然后调用底层驱动程序中的函数将部分数据从硬件缓冲区复制到上一步提供的缓冲区中,获得链路协议鉴别符,从而对该数据包进行协议分析。
所述步骤二包括:如果协议数据单元不需进行过滤,则直接把数据复制到分配收集缓冲区,如果协议数据单元需过滤,执行步骤三;
所述步骤三包括:按照协议数据单元协议所定义的数据格式,对其中的数据域位部分进行相应的基于特征的匹配过滤,如果发现数据有需禁止的内容,则直接删除所述数据包,且不再从硬件缓冲区中复制该系列的数据包到分配收集缓冲区。
4、一种手机安全保护***,手机采用GSM模块,其特征是,在嵌入式可配置操作***平台上建立网络设备驱动程序,所述网络设备驱动程序包括高层驱动程序和底层驱动程序,并执行下列步骤:步骤一,当手机向外发送数据时首先调用底层驱动程序判断手机硬件是否处于忙的状态,如果手机硬件处于忙的状态,该数据包将在硬件驱动程序外排队等待,可执行步骤三;步骤二,如可发送,即将数据写入分配收集缓冲区,并对数据根据***设定的过滤策略来过滤可疑通信流量相应的分析过滤,如有问题,直接删除,如无问题再调用底层驱动程序的发送函数,把数据复制到硬件的缓冲区内,执行步骤四;在复制数据到硬件缓冲区发送之前,可以对数据根据***设定的过滤策略来过滤可疑通信流量相应的分析过滤,如有问题,直接删除,如无问题执行步骤四;步骤三,另创建一个线程,检索排队队列中是否有等待发送的数据包,如果有,就可以从队列头根据***设定的过滤策略来过滤分析每个数据包,经分析需禁止的就可以从队列中直接删除不再发送,经分析无需禁止的,执行步骤四;步骤四,指示硬件将数据发送。
5、根据权利要求4所述的手机安全保护***,其特征是步骤二或步骤三所述***设定的过滤策略包括根据发送数据包的源对象来判断接收或拒绝包、对数据包中的数据域位部分做基于特征的模式匹配及为某些协议的数据包做特定过滤分析。
6、根据权利要求4所述的手机安全保护***,其特征是在所述步骤三中分析队列中等待发送的数据包时,需要锁定所述数据包。
CNB2005100263582A 2005-06-01 2005-06-01 保护手机***安全的方法 Expired - Fee Related CN100469167C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100263582A CN100469167C (zh) 2005-06-01 2005-06-01 保护手机***安全的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100263582A CN100469167C (zh) 2005-06-01 2005-06-01 保护手机***安全的方法

Publications (2)

Publication Number Publication Date
CN1874560A true CN1874560A (zh) 2006-12-06
CN100469167C CN100469167C (zh) 2009-03-11

Family

ID=37484771

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100263582A Expired - Fee Related CN100469167C (zh) 2005-06-01 2005-06-01 保护手机***安全的方法

Country Status (1)

Country Link
CN (1) CN100469167C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102486740A (zh) * 2010-12-03 2012-06-06 中国科学院沈阳自动化研究所 一种多线程实时数据处理装置及方法
CN102857917A (zh) * 2012-08-24 2013-01-02 北京拓明科技有限公司 一种基于信令分析的手机连接pc上网识别方法
CN103246845A (zh) * 2012-02-03 2013-08-14 中兴通讯股份有限公司 一种智能型无线终端安全防护方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102486740A (zh) * 2010-12-03 2012-06-06 中国科学院沈阳自动化研究所 一种多线程实时数据处理装置及方法
CN103246845A (zh) * 2012-02-03 2013-08-14 中兴通讯股份有限公司 一种智能型无线终端安全防护方法及装置
CN103246845B (zh) * 2012-02-03 2017-07-21 中兴通讯股份有限公司 一种智能型无线终端安全防护方法及装置
CN102857917A (zh) * 2012-08-24 2013-01-02 北京拓明科技有限公司 一种基于信令分析的手机连接pc上网识别方法
CN102857917B (zh) * 2012-08-24 2015-06-03 北京拓明科技有限公司 一种基于信令分析的手机连接pc上网识别方法

Also Published As

Publication number Publication date
CN100469167C (zh) 2009-03-11

Similar Documents

Publication Publication Date Title
US20070232265A1 (en) Method of security management for wireless mobile device and apparatus for security management using the method
US7236791B2 (en) Radio channel allocation for national security and emergency preparedness calls
JP4499161B2 (ja) 移動通信システムにおいてデータサービスのセキュリティを実現する方法、システム及び装置
US9065846B2 (en) Analyzing data gathered through different protocols
CN1276636C (zh) 利用公共软件平台执行公共呼叫处理管理的方法和设备
CN1816215A (zh) 数据通信限制方法、数据通信限制***及移动终端
CN1832615A (zh) 一种双模终端选网注册方法
CN1299527C (zh) 通过模拟接口发送分组数据的固定蜂窝终端
CN112953753B (zh) 一种数据采集方法、装置、终端设备及存储介质
CN103340006A (zh) 多用户身份模块调制解调器管理
CN100469167C (zh) 保护手机***安全的方法
CN1299471C (zh) 一种宽带接入服务器测试网关与测试方法
CN111163471B (zh) 业务数据完整性保护方法、装置、设备及存储介质
CN1422482A (zh) 移动台应用程序识别指定事件的方法和设备
CN1672436A (zh) 用于根据无线通信协议进行工作的方法和基站控制器
CN101394674A (zh) 用户接入网络的方法、***和接入侧设备
CN105635934A (zh) 一种业务开通方法、装置和hss服务器
CN1822684A (zh) 移动通信***中的传输载体设置控制***和方法
CN101238699B (zh) 用于受保护无线网络中完整性检查的方法
CN101582880B (zh) 一种基于被审计对象的报文过滤方法及***
CN1741655A (zh) 移动通讯终端的数据访问方法
CN101043408A (zh) 通信***、通信设备以及能力控制方法
CN103476052B (zh) 一种故障检测方法和设备
CN102821415B (zh) 一种故障检测、处理方法和故障检测处理装置
CN1518388A (zh) 用于处理软交换开放式***的事件的方法和***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090311

Termination date: 20200601

CF01 Termination of patent right due to non-payment of annual fee