SIM卡应用与安全缺陷分析
发布时间:2006-10-14 8:00:39   收集提供:gaoqian
  一、概述

  移动电话机与SIM卡共同构成移动通信终端设备。无论是GSM系统还是CDMA系统,数字移动电话机用户在“入网”时会得到一张SIM卡(SubscriberIdentityModule)或UIM卡(UserIdentity Module)。SIM卡是一张符合GSM规范的“智慧卡”,可以插入任何一部符合GSM规范的移动电话中,实现“电话号码随卡不随机的功能”,而且通话费用自动计入持卡用户的账单上,与手机无关。

  二、SIM卡硬件特性

  1、外部特征

  在实际使用中有两种功能相同而形式不同的SIM卡:

  卡片式(俗称大卡)SIM卡,这种形式的SIM卡符合有关IC卡的ISO7816标准,类似IC卡。

  嵌入式(俗称小卡)SIM卡,其大小只有25mm×15mm,是半永久性地装入到移动台设备中的卡。

  “大卡”上真正起作用的是它上面的那张“小卡”,而“小卡”上起作用的部分则是卡面上的铜制接口及其内部胶封的卡内逻辑电路。目前国内流行样式是“小卡”,小卡也可以换成“大卡”(需加装一卡托)。“大卡”和“小卡”分别适用于不同类型的GSM移动电话,早期机型如摩托罗拉GC87C、308C等手机用的是“大卡”,而目前新出的机型基本上都使用“小卡”。

  2、 SIM卡接口

  SIM卡是通过卡面上铜制接口来连接卡内逻辑电路与移动终端的,SIM卡芯片有八个触点,通常与移动设备连接需要六个触点,具体接口定义如下图所示:



  3、内部结构

  SIM卡是一个装有微处理器的芯片卡,它的内部有5个模块,并且每个模块都对应一个功能:微处理器CPU(8位)、程序存储器ROM(3--8kbit)、工作存储器RAM(6--16kbit)数据存储器EEPROM(128--256kbit)和串行通信单元。这5个模块被胶封在SIM卡铜制接口后与普通IC卡封装方式相同。这五个模块必须集成在一块集成电路中,否则其安全性会受到威胁。因为,芯片间的连线可能成为非法存取和盗用SIM卡的重要线索。

  SIM卡同手机连接时至少需要5条连接线(通常编程口未定义)

  数据I/O口(Data)

  复位(RST)

  接地端(GND)

  电源(Vcc)

  时钟(CLK)如上图所示。

  SIM卡的供电分为5V(1998年前发行)、5V与3V兼容、3V、1.8V等,当然这些卡必须与相应的移动电话机配合使用,即移动电话机产生的SIM卡供电电压与该SIM卡所需的电压相匹配。卡电路中的电源VCC、地GND是卡电路工作的必要条件。卡电源用万用表就可以检测到。SIM卡插入移动电话机后,电源端口提供电源给SIM卡内各模块。

  检测SIM卡存在与否的信号只在开机瞬时产生,当开机检测不到SIM卡存在时,将提示“InsertCard(插入卡)”;如果检测SIM卡已存在,但机卡之间的通信不能实现,会显示“CheckCard(检查卡)”;当SIM卡对开机检测信号没有响应时,移动电话也会提示“InsertCard(插入卡)”;当SIM卡在开机使用过程中掉电、由于松动接触不良或使用报废卡时,移动电话会提示“Bad Card/SIM Error”。

  对于卡电路中的SIM­_I/O、SIM_CLK、SIM_RST,全部是由CPU的控制来实现的。虽然基站与网络之间的数据沟通随时随地进行着,但确定哪个时刻数据沟通往往很难。有一点可以肯定,当移动电话机开机时刻与网络进行鉴权时必有数据沟通,这时尽管时间很短,但测量一定有数据,所以我们在判定卡电路故障时,在这个时隙上进行监测为最佳监测时间。正常开机的移动电话机,在SIM卡座上用示波器可以测量到SIM_I/O、SIM_CLK、SIM_RST信号,它们一般是一个3V左右的脉冲。若检测不到,说明SIM卡座供电开关管周边电阻、电容元件脱焊、SIM卡卡座脱焊,也有可能是卡座接触不良,SIM卡表面氧化或是报废卡。

  当手机开机时,手机需要与SIM卡进行数据交换,用示波器可以在SIM卡卡座上检测到一些数据信号,没插卡时,这些信号不会送出。可谓“瞬间即逝”,但可以用示波器捕捉到,以此判别SIM卡电路有无故障。SIM卡触点电性能表示触点低电平高电平Vcc-U=+5V±10%,I=10mA RST -0.3≤U≤+0.6V,I=200uA 4V≤U≤Vcc,I=20uA CLK -0.3≤U≤+0.6V,I=200uA -2.4V≤U≤Vcc,I=200uA GND - - Vpp - +5V±10% I/O输入 0V≤U≤0.4V,I=1mA 0.7V≤U≤Vcc,I=20uA I/O输出 0V≤U≤0.8V,I=1mA 3.8V≤U≤Vcc,I=20uA

  电源开关时,SIM卡电气性能为:当开启电源期间,按以下次序激活各触点:RST低电平状态;Vcc加电;I/O口处于接收状态;Vpp加电;提供稳定的时钟信号。当关闭电源时,按如下次序工作:RST低电平状态;CLK低电平状态;Vpp去电;I/O口低电平状态;Vcc去电。

  SIM卡的存储容量有3kB、8kB、16kB、32kB、64kB等。目前多为16KB和32KB,STK卡(SIM application Tool Kit)是SIM卡的一种,它能为移动电话机提供增值服务,如移动梦网业务等。(将在后章节具体介绍)SIM卡能够储存多少电话号码取决于卡内数据存储器EEPROM的容量(有2K、3K、8K容量),若有8KB的存储容量,可供储存以下信息:

   *100组电话号码及其对应的性名文字;

   *15组短信息(ShortMessage);

   *25组以上最近拨出的号码;

   *4位SIM卡密码(PIN)。

  几种主要的SIM卡的结构数据



  三、SIM卡软件特性

  SIM卡采用新的单片机及存储器管理结构,因此处理功能大大增强。其智能特性的逻辑结构是树型结构。全部特性参数信息都是用数据字段方式表达,SIM卡中存有三类数据信息:

  (1)与持卡者相关的信息以及SIM卡将来准备提供的所有业务信息,这种类型的数据存储在根目录下。

  (2)GSM应用中特有的信息,这种类型的数据存储在GSM目录下。

  (3)GSM应用所使用的信息,此信息可与其它电信应用或业务共享,位于电信目录下。

  即在根目录下有三个应用目录,一个属于行政主管部门应用目录,两个属于技术管理的应用目录,分别是GSM应用目录和电信应用目录。所有的目录下均为数据字段,有二进制的和格式化的数据字段。数据字段中的信息有的是永存性的即不能更新的,有的是暂存的,需要更新的。每个数据字段都要表达出它的用途、更新程度、数据字段的特性(如识别符)、类型是二进制的还是格式化的等。

  下面按GSM的Phasel(阶段1)和Phase2(阶段2)两种情况对SIM卡的数据格式进行说明:

  (1) Phasel

  <1> GSM系统参数

  在阶段l时,所选GSM系统参数数据项目如图所示。其中6F38业务表中选有五项开放业务:

  GSM阶段1系统参数数据所选项

标识符

名称

长度

6FAD

管理(Administrative)

3

6F38

业务表(Service Table)

4

6F07

IMSI

9

6F7B

禁止PLMN(Forbidden PLMN)

12

6F7E

TMSI LAI

11

6F20

Kc, n

9

6F30

PLMN选择(PLMN Selector)

24

6F74

BCCH信息(BCCH Information)

16

6F78

接入控制(Access Control)

2



  业务1(Servicel):PIN码取消(PINDisabling)

  业务2(Service 2):缩位拨号(Abbreviated Dialing Numbers)

  业务4(Service 4):短消息存储(Short Message Storage)

  业务6(Service 6):容量配置参数(Capability Configuration Parameters)

  业务7(Service 7):PLMN选择(PLMN Selector)

  业务3、业务5和业务8在Phase 1中不开放,6F78接入控制采用低级等级。

  <2> 电信业务参数

  GSM阶段1电信业务所选项

标识符

名称

长度

6F3A

缩位拨号(Abbreviated Dialing Numbers)

50 × 22

6F3D

容量配置参数(Capability Config Parameters)

1 × 14

6F3C

短消息存储(Short Message Storage)

5 ×176

6F39

话费计数(Charging Counter)

2



  (2) Phase 2

  <1> GSM系统参数

  在阶段2时,GSM系统参数数据所选项目如图所示。其中6F38业务表在Phasel的基础上增加的业务有:

  GSM阶段2系统参数数据所选项

标识符

名称

长度

6F05

语种选择(Language Preference)

4

6F07

IMSI

9

6F20

Kc, n

9

6F30

PLMN选择(PLMN Selector)

42

6F31

HPLMN搜索(HPLMN Search)

1

6F38

业务表(Service Table)

4

6F45

小区广播消息标识(Cell Broad Message ID)

8

6F74

BCCH消息(BCCH Information)

16

6F78

接入控制(Access Control)

2

6F7B

禁止PLMN(Forbidden PLMN)

12

6F7E

TMSI LAI

11

6FAD

管理数据(Admin Data)

3

6FAE

Phase 识别(Phase Identify)

2



  业务9 (Service 9):MSISDN

  业务10 (Service l0):扩展1文件(Extension l file)

  业务12 (service l2):短消息参数(short Message Parameters)

  业务13 (Service l3):最后拨号存储(Last Number Dialed)

  业务14 (service l4):小区广播消息识别(cell Broadcasting Message Identifier fi1e)

  业务3、业务5、业务8和业务11在Phase2中不开放,6F78接入控制采用低级等级。

  <2> 电信业务参数

  GSM阶段2电信业务所选项

标识符

名称

6F3A

 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50