Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【SORACOM UG】(2024年度版) SIMってなんだ? ~セルラー通信がつながる仕組み...
Search
SORACOM
PRO
April 06, 2024
Technology
0
1.3k
【SORACOM UG】(2024年度版) SIMってなんだ? ~セルラー通信がつながる仕組み、解説します~
2024年4月6日開催『
SORACOM UG Online #19 ~SIMの日を祝おう~
』で、ソラコム今井(factory)が発表した資料です。
SORACOM
PRO
April 06, 2024
Tweet
Share
More Decks by SORACOM
See All by SORACOM
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
350
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
2
930
投資家様向けビジネス概要<2025年8月版>
soracom
PRO
0
490
Business Overview for Investors[August 2025 Edition]
soracom
PRO
0
67
少人数・短期間で実現!“ゼロから作らない” 4つの事例から見る、新時代IoT【SORACOM Discovery 2025】
soracom
PRO
0
330
現場のリアルをカメラで変える!小売・商業施設の「現場改革」最前線【SORACOM Discovery 2025】
soracom
PRO
0
300
【特別講演】公開思考実験!もしも、この世界から「ヒトとモノのつながり」が消えたなら?【SORACOM Discovery 2025】
soracom
PRO
0
170
トヨタのIoT民主化を支援!「D-ROOM」の仕組みと現場浸透のくふう【SORACOM Discovery 2025】
soracom
PRO
0
390
クラウド全盛時代におけるIoTエッジ活用とグローバルサプライチェーン戦略【SORACOM Discovery 2025】
soracom
PRO
0
190
Other Decks in Technology
See All in Technology
Snowflakeとdbtで加速する 「TVCMデータで価値を生む組織」への進化論 / Evolving TVCM Data Value in TELECY with Snowflake and dbt
carta_engineering
0
140
NOT A HOTEL SOFTWARE DECK (2025/11/06)
notahotel
0
2.9k
マルチエージェントのチームビルディング_2025-10-25
shinoyamada
0
250
触れるけど壊れないWordPressの作り方
masakawai
0
660
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
1.1k
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
9
4.4k
DSPy入門
tomehirata
6
890
[AWS 秋のオブザーバビリティ祭り 2025 〜最新アップデートと生成 AI × オブザーバビリティ〜] Amazon Bedrock AgentCore で実現!お手軽 AI エージェントオブザーバビリティ
0nihajim
1
330
ゼロコード計装導入後のカスタム計装でさらに可観測性を高めよう
sansantech
PRO
1
700
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
730
OTEPsで知るOpenTelemetryの未来 / Observability Conference Tokyo 2025
arthur1
0
440
次世代のメールプロトコルの斜め読み
hirachan
3
370
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Side Projects
sachag
455
43k
Code Reviewing Like a Champion
maltzj
526
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Building an army of robots
kneath
306
46k
RailsConf 2023
tenderlove
30
1.3k
Producing Creativity
orderedlist
PRO
348
40k
Become a Pro
speakerdeck
PRO
29
5.6k
The Cult of Friendly URLs
andyhume
79
6.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
640
Transcript
SIMってなんだ? factory 2024/4/6 ~セルラー通信がつながる仕組み、解説します~ SORACOM UG Online #19
株式会社ソラコムでソリューションアーキテクトをやっ ています。 むかし、イマイファクトリーという名前でグラフィックデザイ ンとかやっていました。 今井 雄太(factory)
今日はシムの日なので SIMの勉強をしましょう。 ~2回目~
None
SIMとは 認証 ローミング ユーザデータ USIM=Universal Subscriber Identity Module USIMとは、欧州の2G(GSM)の移動機に採用されていた SIMカードを拡張したもの。
CPUを内蔵したICチップ(UICC)で、3G/LTE移動機において 不可欠なデバイスの1つ。
SIMとは セキュリティが提供されており、このなかにはキャリアと の接続時の認証に利用される鍵が入っている。 かなりざっくり言えば、SIMとはキャリアとの接続認証を うけるための鍵、と言える。 他にもキャリアの優先度や許可/拒否リスト、電話帳など 様々な情報が記録されています。
SORACOMのSIMたち SORACOMではさまざまな「サブスクリプション(回線プ ラン)」を提供しています。 この回線契約を識別するために利用されるのがSIMです。
ざっくり言えば・・・ 「SIM≒鍵」 とご理解いただくとこのあとの話が腹落 ちしやすいと思います
はい、わかりましたね?
SORACOMプラットフォームのおさらい
インターネット 端末 基地局 データセンター ISP パケット交換 帯域制御 顧客管理 課金・・・ 通信キャリア
専用線接 続 MVNO事業
インターネット 基地局 データセンター ISP パケット交換 帯域制御 顧客管理 課金・・・ 携帯通信事業者の基地局と AWSクラウドで
バーチャルキャリアを実現 端末
ソラコムを使うとデバイスとクラウドをセキュリティに接続できる! 普段はセルラー接続部分のセキュリティは所与のものと して、クラウドとの接続やアプリケーションレベルのセ キュリティの話をすることがおおいですが・・・・
インターネット 端末 基地局 データセンター ISP パケット交換 帯域制御 顧客管理 課金・・・ 通信キャリア
専用線接続 今日はこちらの仕組み とセキュリティの話で す。
SIMが挿さったデバイスが モバイルキャリアに接続されるまで
3G/LTE のSIM認証 VPC 加入者情報DB 2.認証情報レスポンス Auth Token(AUTN), Random(RAND) 4.ネットワーク の認証&鍵生成
5.認証レスポンス RES 6.SIMの認証 Secret Key Sequence Number N Secret Key Sequence Number N 7.鍵の派生 7.鍵の派生 SIM SIM 端末 接続要求 1.認証情報リクエスト 基地局・制御局 3. 認証リクエスト ATUN, RAND, XRES, Security Key (CK + IK) CK + IK RES, (RES==XRES) RES, Security Key (CK + IK)
3G/LTE のSIM認証 VPC 加入者情報DB 2.認証情報レスポンス Auth Token(AUTN), Random(RAND) 4.ネットワーク の認証&鍵生成
5.認証レスポンス RES 6.SIMの認証 Secret Key Sequence Number N Secret Key Sequence Number N 7.鍵の派生 7.鍵の派生 端末-基地局間では 鍵を交換しない SIM SIM 端末 接続要求 1.認証情報リクエスト 基地局・制御局 3. 認証リクエスト ATUN, RAND, XRES, Security Key (CK + IK) CK + IK RES, (RES==XRES) RES, Security Key (CK + IK)
3G/LTE のSIM認証 VPC 加入者情報DB 2.認証情報レスポンス Auth Token(AUTN), Random(RAND) 4.ネットワーク の認証&鍵生成
5.認証レスポンス RES 6.SIMの認証 Secret Key Sequence Number N Secret Key Sequence Number N 7.鍵の派生 7.鍵の派生 端末-基地局間では Secret Keyを交換しない さらに言えば、端末も基地局も Secret Keyを持たない! SIM SIM 端末 接続要求 1.認証情報リクエスト 基地局・制御局 3. 認証リクエスト ATUN, RAND, XRES, Security Key (CK + IK) CK + IK RES, (RES==XRES) RES, Security Key (CK + IK)
SIMとキャリアは共通鍵を使って チャレンジ&レスポンス認証をしている
SIMとキャリアは共通鍵を使って チャレンジ&レスポンス認証をしている ネットワーク越しに鍵交換はしていない つまり鍵を盗まれないように 防御すべき場所はSIM(とHSS)
あらためてSIMについて見てみよう
FLASH / EEPROM ROM RAM CPU • CPU : 32bit
• メモリー: FLASH • 標準規格: ISO / 3GPP / ETSI / GP • 電気特性: 1.8 / 3 / 5 v • クロック: 1~5MHz • 形状 : 2FF(plug-in)/3FF(micro) • 4FF(nano)/embedded • 機能 • Java Card (ver. 3.0.1) or later • OTA(RFM/RAM) • SAT/USAT • Secure Element • PKI • Crypt ベースのSecure ICは Infineon/Samsung/ST Microsystems などの半導体ベンダが供給 UICC (Universal Integrated Circuit Card)
FLASH / EEPROM ROM RAM CPU • CPU : 32bit
• メモリー: FLASH • 標準規格: ISO / 3GPP / ETSI / GP • 電気特性: 1.8 / 3 / 5 v • クロック: 1~5MHz • 形状 : 2FF(plug-in)/3FF(micro) • 4FF(nano)/embedded • 機能 • Java Card (ver. 3.0.1) or later • OTA(RFM/RAM) • SAT/USAT • Secure Element • PKI • Crypt ベースのSecure ICは Infineon/Samsung/ST Microsystems などの半導体ベンダが供給 UICC (Universal Integrated Circuit Card) CPUやRAM、ストレージ があるのに注目
そうなんです。 SIMは独立したコンピュータであり、 単なるストレージデバイスではありません。 なので鍵を外部から直接は読めないように なっている
3G/LTE のSIM認証 VPC 加入者情報DB 2.認証情報レスポンス Auth Token(AUTN), Random(RAND) 4.ネットワーク の認証&鍵生成
5.認証レスポンス RES 6.SIMの認証 Secret Key Sequence Number N Secret Key Sequence Number N 7.鍵の派生 7.鍵の派生 SIM SIM 端末 接続要求 1.認証情報リクエスト 基地局・制御局 3. 認証リクエスト ATUN, RAND, XRES, Security Key (CK + IK) CK + IK RES, (RES==XRES) RES, Security Key (CK + IK) ここはストレージ IOSではなくAPI呼び 出しだった!
UICCの論理構造 Core O.S UICC Card Manager and Security domains Remote
Applet Management Core Applications (USIM) File System servers Toolkit and Java Card runtime environment UICC API and USIM API Java Card Toolkit Applet Java Card packages Java Card Applet
スマートカードリーダー モデム
実際にはこんな感じ カードリーダ モデム アンテナ APDUの世界 ※詳細はのちほど
APDU 例:IMSIの読み取り 00 B0 00 00 3F 00 7F 20
6F 07 (Application Protocol Data Unit) • 端末とJava Cardアプレットがやり取りするためのバイト列 CLA INS P1 P2 P3 SW1 SW2 Command APDU Response APDU Data Read Binary ディレクトリ ファイル
あれ? APDUコマンドで任意の領域のファイルを 読み取れる? それはちょっとまずいんじゃ・・?
秘密はAPDUコマンドに まず大前提として、SIMカードはストレージへの直接アクセスを提供 していない。アプリケーションはAPDUコマンドというAPIを介して アクセスする必要がある。 • APDUコマンドには認証機構があり、コマンド実行時にPUKやユ ーザー認証、生体認証を求めることができる。 • WRITE ONCEの領域の設定もできる。
詳細はISO7816-4、 ISO7816-11あたりを読んでみよう。 もちろんですがAPDUの認証情報が漏洩すると大変なことになりま す!!!!
APDUで提供されるコマンド(API)の例 1. SELECT a. スマートカードからアプリケーションを選択するために使用されるコマンド。 2. READ BINARY a. スマートカードからデータを読み取るために使用されるコマンド。
3. UPDATE BINARY a. スマートカードにデータを書き込むために使用されるコマンド。 4. VERIFY a. スマートカードの認証のために使用されるコマンド。 5. INTERNAL AUTHENTICATE a. スマートカード内部で生成された認証データを使用して、通信相手とスマートカード間の 相互認証を行うために使用されるコマンド。キャリア認証で利用されるのはこれ。 6. EXTERNAL AUTHENTICATE a. スマートカード外部から提供された認証データを使用して、スマートカードへのアクセス を許可するために使用されるコマンド。
でも、ストレージに物理的にアクセスされたら?
SIMカードの物理的セキュリティ(耐タンパー性) 多くのSIMカードは、物理的な攻撃を検知した際にSIMカード内の データを自己消去するようにプログラムされている。例え ば・・・ 1. 温度センサーによる手法 a. カードの温度が急上昇した際にデータ消去 2. 振動センサーによる手法
a. カードが振動や衝撃を受けた場合に反応してデータ消去 3. 光センサーによる手法 a. カードの筐体が開けられば場合に反応してデータ消去
SIMカードの物理的セキュリティ(耐タンパー性) 物理的な攻撃に対する対策はISO7816に定めはなく、スマートカ ードメーカーが独自に定めている。 メーカーやカードごとの具体的な防御策については、詳細な情報 は非公開となっている場合が多く、一般的な情報を得ることは困 難。
まとめ
SIMの(おもな)役割 カードリーダ モデム アンテナ キャリア SIMはキャリアとの間に共通鍵を持っていてそれを使っ てモデムがキャリアと接続する際の認証をサポートして いる。SIM自身のセキュリティは「とてもつよい」。 共通鍵 共通鍵