Slide 1

Slide 1 text

IoT セキュリティ with AWS - JAWS DAYS 2017 IoT とセキュリティ - アマゾン ウェブ サービス ジャパン 株式会社 ソリューション アーキテクト 藤原 吉規 2017.03.11

Slide 2

Slide 2 text

⾃⼰紹介 • 藤原 吉規(ふじわら よしのり) ⻄⽇本担当 ソリューション アーキテクト – AWS ⼤阪オフィスにいます – 関⻄のスタートアップ企業に 6 年間勤務 – AWS サムライ 2013 – 好きな AWS サービス: AWS サポート

Slide 3

Slide 3 text

Agenda • IoT セキュリティ • AWS IoT • AWS IoT デザインパターン 3

Slide 4

Slide 4 text

IoT セキュリティ 4

Slide 5

Slide 5 text

あらゆる"モノ"がつながる

Slide 6

Slide 6 text

デバイスは今後⼤幅に増加することが予想される 2013 2015 2016 2020 Vertical Industry Generic Industry Consumer Automotive Many Some Lots

Slide 7

Slide 7 text

多くのデバイスはセキュリティを重要視していない Mirai bot default passwords

Slide 8

Slide 8 text

IoT セキュリティは効果的かつシンプルであるべき “プロのパイロットやレースドライバーは 事故の際の安全を保つためには何でもす るが、⼀般の⾃動⾞ドライバーはたった の1分でも不便を強いられたくない“ ニルス・ボーリン - 3点式シートベルトの発明者 -

Slide 9

Slide 9 text

AWS IoT 9

Slide 10

Slide 10 text

Things Sense & Act Cloud Storage & Compute Intelligence Insights & Logic → Action AWS IoT Action Device State AWS Services Applications Authentication & Authorization Device Gateway Registry AWS IoT API Messages Messages 簡単で安全なクラウドへのIoTデバイス接続サービス

Slide 11

Slide 11 text

AWS IoT : 2つの利⽤⽤途 • データ収集 数⼗万規模のデバイスからのデー タ収集 • リモート制御 遠隔にあるデバイスをクラウドを 介してコントロール 使⽤例 デバイスのデータの可視化 故障予測・異常検知 ファームアップ リモート機器制御

Slide 12

Slide 12 text

AWS IoT スタンダードプロトコル (no lock-in) 数百万デバイスやアプリをMQTTや HTTP1.1プロトコル, Websocketsを使っ て通信が できる ⻑期間のセッション保持によるクラウド を介したメッセージ送受信 クライアント(デバイスやアプリ)は 制御信号やコマンドなどをクラウドから 受信することができる デフォルトのセキュリティ X509証明書とTLS1.2を使った相互認証 Topic Based Architecture (lights/thing-2/color) ハイスケーラブル メッセージブローカー

Slide 13

Slide 13 text

AWS IoT デバイスとクラウドとの 相互認証 TLS1.2を⽤いた相互認証 証明書に対するポリシ設定も可能 ルールエンジンと アクション SQLライクな構⽂でルールの設定 ルールに合致した場合、AWSの各種サー ビスとのインテグレーション デバイスシャドー デバイスが物理的に接続されてなくて もコマンドを伝達できる デバイスレジストリ 多くのデバイスを管理 Key-Value形式でファームバージョンなど の属性情報も管理可能

Slide 14

Slide 14 text

AWS IoT 対応プロトコル MQTT + Mutual Auth TLS Websocket + AWS Auth HTTPS + AWS Auth Server auth TLS + cert TLS + cert TLS + cert Client auth TLS + cert AWS credentials (API keys) AWS credentials (API keys) Confidentiality TLS TLS TLS Protocol MQTT MQTT/WS HTTP Communication model Pub/sub Pub/sub REST Identification AWS ARNs AWS ARNs AWS ARNs Authorization AWS policy AWS policy AWS policy

Slide 15

Slide 15 text

AWS IoT デザインパターン 15

Slide 16

Slide 16 text

インシデント対応 16

Slide 17

Slide 17 text

インシデント対応

Slide 18

Slide 18 text

インシデント対応 CWE Executes Lambda Function to invalidate certificate

Slide 19

Slide 19 text

モバイルデバイスからの user access 19

Slide 20

Slide 20 text

Unauthenticated (anonymous) user access IAM unauthenticated role Amazon Cognito

Slide 21

Slide 21 text

Authenticated user access IAM authenticated role Amazon Cognito IoT policy per user Identity provider

Slide 22

Slide 22 text

デバイスクライアント証明書の Just-in-time registration 22

Slide 23

Slide 23 text

Just-in-time registration Manufacturing line Provisioning of the Identities signed with customer’s CA First data connection JIT registration

Slide 24

Slide 24 text

Just-in-time registration – Provisioning Customers Hardware Security Module (HSM) CSR CSR CSR

Slide 25

Slide 25 text

Just-in-time registration – CA registration getRegistrationCode() Customers Hardware Security Module (HSM) CSR CSR CSR registerCACertificate(CACert,RegCert)

Slide 26

Slide 26 text

Just-in-time registration Customers Hardware Security Module (HSM) checkYourCRL() updateCertificate(Cert, ACTIVE) attachPrincipalPolicy(Cert, IoTPolicy) updateERP() Function handling PENDING_ACTIVATION State

Slide 27

Slide 27 text

デバイスクライアント証明書の課題 • ⼀意の鍵をデバイス1台ごとに⽣成 • ⼀意の鍵をデバイスの製品寿命が終わるまで秘密 にしておく • 量産環境、信⽤・コンプライアンスのレベルが異 なる多数のサードパーティが関与するサプライ チェーンでこれらを実現する必要がある 27

Slide 28

Slide 28 text

Atmel/Microchip AWS-ECC508 簡単なプロビジョニングと安全な鍵スト レージ 制約のあるハードウェアのための暗号化オ フロード

Slide 29

Slide 29 text

参考: AWS re:Invent 2016: IoT Security: The New Frontiers (IOT302) • スライド – https://www.slideshare.net/AmazonWebServices/aws- reinvent-2016-iot-security-the-new-frontiers-iot302 • 動画 – https://www.youtube.com/watch?v=ysgG9K3y5yo 29

Slide 30

Slide 30 text

参考:AWS IoT デバイス証明書の登録について • AWS IoT デバイス証明書を作成および登録する – http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/d evice-certs-create.html • ⾃前の証明書を使⽤する – http://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/d evice-certs-your-own.html • Best Practices for IoT Security in the Cloud – https://www.slideshare.net/AmazonWebServices/february- 2016-webinar-series-best-practices-for-iot-security-in-the-cloud 30

Slide 31

Slide 31 text

参考:Just-in-Time Registration (JITR) • Blog – https://aws.amazon.com/blogs/iot/just-in-time-registration- of-device-certificates-on-aws-iot/ • JITR - AWS Lambdaのサンプルコード – https://github.com/awslabs/aws-iot- examples/blob/master/justInTimeRegistration/deviceActivati on.js 31

Slide 32

Slide 32 text

32