LINE and Intertrust Security Summit 2017 Spring, Tokyo レポート前編

こんにちは、LINE セキュリティ室の市原です。
普段は、LINEの提供するサービスのセキュリティコンサル、アカウント乗っ取り/Abusing対策、認証技術の調査・研究、標準化活動、などを行っています。今日は、5月17日にLINEとIntertrust社が主催で開催した「LINE and Intertrust Security Summit 2017 Spring, Tokyo」について報告したいと思います。
こちらのエントリはイベントレポートの前編です。後編はこちら

  • 公式HP: https://www.intertrust.com/company/events/line/
  • 日時: 2017年5月17日(水) 10:00〜18:00
  • 場所: 新宿ミライナタワー LINE社オフィス内オーディトリウム
  • 参加人数: 約140名
  • 1. はじめに

    今回のカンファレンスでは、「エンドポイントセキュリティ (end point security)」にフォーカスを当てています。ここでいうエンドポイントセキュリティとは、PCやモバイル、IoTデバイスといった末端デバイスやその上で動作するアプリケーションのセキュリティを指します。例えば、決済アプリ、ゲーム、音楽や映画、教育コンテンツ、など「保護したい重要なデータ」扱うサービス提供会社にとって、コストなどの面でとても頭を悩ませる問題が多くあります。LINEの場合においても、さまざまなユーザ情報やプライバシーに関わる情報や、LINE Payのような決済に関わる情報など、保護したい情報があります。

    では、エンドポイントセキュリティの課題に対するソリューションは何があるでしょうか?例えば、鍵、個人情報、署名生成などの重要な処理を、ハードウェアのレベルで保護するために、ICカードなどの耐タンパー・ハードウェアデバイスを採用するアイデアはすぐに思い浮かぶでしょう。でも、利便性や技術の互換性、必要なハードウェアサポート、デバイスのカバー率、運用コスト、を考慮すると、これを採用するための決断には企業はとても時間がかかりますし、簡単な選択肢ではありません。

    一方、これらをソフトウェアのレベルで保護する手段としてDRM、ソフトウェア難読化、Whitebox暗号といった技術や製品があります。これらは、特定の端末機種やハードウェアなどに依存する事なくソフトウェアのみで実装できるメリットはありますが、前述の耐タンパー・ハードウェアデバイスと比べてどこまで強度があるのかよく分からないですし、例えば、ICカードのCommon Criteria AVA_VAN.5 や、HSMのFIPS 140-2のように、客観的に判断できる認証制度や評価軸がありません。また一般に、これらの製品は高額な場合が多いため、採用する事は簡単ではありません。

    つまり企業にとって、アプリケーションのエンドポイントセキュリティを実現するためには、ハードウェアで保護すれば良いのか、ソフトウェアで保護すれば良いのか、常に悩みのたねとなっています。さらに言えば、セキュリティ対策しなければならない箇所(=メンテ対象)は、アプリケーションの数の分だけ、つまり「x N (かけるエヌ)でかかる」と言えるわけですから、輪をかけて厄介です。そしてこの「エンドポイント」に関する「答えのない厄介な問題=セキュリティ問題」は、ITの草創期以降、現在に至るまで延々と続いているといえます。

    しかしながら、この分野(Whitebox暗号、耐タンパーソフトウェア、難読化技術、等)は研究分野の活動は、今でも盛んに行われていて、世界中の多くの研究者やエンジニアによって、新しい攻撃手法の報告がされたり、新しい対策技術が発表されています。

    そこで、これらの3分野(ユーザ企業、研究分野、ソリューション企業)の有識者を集めて、このエンドポイントセキュリティというテーマについて、最新の取り組みを紹介し、意見をぶつけあう機会があったら、とても面白いカンファレンスになるのではないかと考えました。実際、このようなテーマにフォーカスをあてたカンファレンスは日本国内では少なかったと思います。

    以上のような動機から、LINE and Intertrust Security Summitというカンファレンスを開催することにしました。

    この日は、LINEからも、中山 剛志 CISO(以下、中山)の基調講演の他、セキュリティエンジニアのエレンコフ・ニコライが「Implementing trusted endpoints in the mobile world」と題して、モバイルの世界におけるエンドポイントセキュリティについて、Ahn Sanghwanが「Practical attacks on commercial whitebox cryptography solutions」の内容で、最新のWhitebox暗号製品に対する攻撃手法について講演する事となり、LINEとしてのエンドポイントセキュリティへの取り組みを紹介する機会にもなりました。

    またこの日は、LINE株式会社が、FIDO AllianceにBoard Memberとして(日本で2社目)加盟したことについても発表をさせて頂きました。こちらもLINEのエンドポイントセキュリティへの取り組みの1つとなります。FIDOについての詳しい話は、別の機会にお話したいと思います。

    2. カンファレンスの報告

     以下に、各講演のサマリーを報告いたします。

    Keynote Speech“LINE’s Security: Now and Future” 中山 剛 CISO (LINE株式会社)

    LINEの中山が基調講演にて、LINEのセキュリティの現在と未来について語りました。

    2011年6月、メッセージングアプリとして誕生した「LINE」は、2017年現在、単なるメッセージングアプリにとどまらず、LINE 漫画、LINE MUSIC、LINE LIVE、LINE Pay、など数多くのサービスと連携する「プラットホームアプリ」へと成長し、グローバル各国で、特にアジアの4カ国(日本、台湾、タイ、インドネシア)では、多くのユーザに日々、利用して頂いています。このような様々な多様性のある(種類、実装形態)、グローバル展開しているアプリケーションやサービスのセキュリティを確保するために、LINEは、様々な角度から努力を続けています。

    例えば、LINEの開発ライフサイクルにおいては、全てのフェーズにおいてLINEのセキュリティエンジニアがセキュリティコンサル、コードチェック、セキュリティ診断などを行っています。また、リリース後にはモニタリングだけでなくBug Bounty Programを運用して未発見の脆弱性情報を積極的に収集し、セキュリティの品質をマネジメントしています。SPAMやアカウント乗っ取りなどのAbusing対策においても、アカウント仕様の改善の他に、機械学習を用いた自動検知とブロックのシステムを開発し、導入し、改善の努力を進めています。LINEは、現在、AIやIoTを駆使した未来型サービスの開発に取り組んでいて、これからもさらに新しい種類のアプリやサービスが提供されていくでしょう。

    このような未来型サービスにおいて、セキュリティの問題は、今よりもさらに重要になり、我々は今よりもさらに真剣に取り組んでいく必要があることは明らかです。そのために我々もこれまでの努力はもちろん、更なるチャレンジをしていきます。

    講演の最後には、LINEが、FIDO Alliance (※) にBoardメンバーとして加盟したことについて発表がありました。報道発表はこちらです。
    ※FIDO Alliance … パスワードレスなどの利便性の高いユーザ認証技術の国際標準化仕様の策定を目的とした非営利団体

    “Drawing the Line Correctly: Enough Security, Everywhere” Talal G. Shamoon CEO (Intertrust Technologies Corporation)


    IntertrustのCEO、Talal G. Shamoon氏に基調講演に登壇していただきました。

    現代のインターネット接続システムは高度で多様な問題に直面していますが、もともと確固たるセキュリティを考慮して設計されたものではありません。「悪モノはココの外にいるだろう」という前提のもと、柔軟で、強力で、浸透しやすい、政府や軍事のための利用目的だったからです。

    時代を振り返ると、1965-75年に作られた「Multics」というオペレーティングシステムは、セキュリティコンセプトが設計されていたのがですが、これが失敗し、その後のほとんどセキュリティを考えないOS「Unix」 が登場したのです。その後、企業だけでなくパーソナル向けのOSとして台頭するWindowsがMicrosoftによって開発されたときも、セキュリティはきちんと考慮された設計にはなっていなかった。そして、そこで動くInternet Explorerは今まででは考えられなかった規模の人がインターネットにアクセスする機会を提供する事となり、同時に大規模な脆弱性がさらされることとなりました。続いてSunは、Unix, Windows, Internetの世界をつなげる役割として Java を生み出しました。ここでは幾つかのセキュリティ機能が搭載されたものの、現在知られているように多くの脆弱性を晒すこととなりました。

    そして今、Android, iOSが登場してこうした「Security Circus」が現代においても繰り返されているのです。

    Eric Schmidt でさえRSA2017の講演でこう語っていました。

    – Internetの世界は、セキュリティの問題で何度も何度も更新されてきた。「なぜか?」と聞けば「犯罪者などいると思っていなかった」という答えが返ってくる。
    現在のインターネットとOSに適切なセキュリティテクノロジーをオーバーレイする事で安全にすることは可能ですが、そのためには強力な暗号などに求められる以上の完全で頑強なソリューションが必要です。そしてそれは、セキュアなrun timeをdeployし、認証機構と強力なハードウェアとソフトウェア耐タンパー性を適切にbuildし、deployすることに帰結します。このような状況は現代に始まった事ではありません。例えば、京都の二条城を例えにすると多くの「認証機構」「難読化(Obfuscation)」があり、城内には「セキュアエリア」があり、”床鳴り”のような「早期侵入検知」のシステムも備わっていました。

    セキュリティに関わる仕事において、適切なツールを使用することは、不要な複雑さ、ユーザビリティ、コストなどの問題を伴うことのなく、十分に安全なセキュリティソリューションを選択する事が重要です。LINEとIntertrust社は「安全でビジネスにやさしいインターネットの作り方を研究し議論すること」を共通のゴールとし、安全でユーザフレンドリーなインターネットを作り上げるためにセキュリティサミットを今後も開催していく所存です。

    インターネットの歴史とあわせてセキュリティの歴史について、Multics → Unix → Windows → Java という順番でお話いただき、どれも課題解決型ソリューションであったものの新しいセキュリティの問題を引き起こし、その普及規模と比例して脆弱性の存在も広く知られてきたことを思い出させてくれました。後半部分は、「頑強で安全なシステムをどう構築するか?」という問いに対するintertrustなりのanswerでありmessageとして捉えることが出来ると思います。

    “Frontiers of Cryptography” Robert E. Tarjan (チーフサイエンティスト (Intertrust Technologies Corporation), James S. McDonnell Distinguished University Professor of Computer Science, (Princeton University)


    Intertrust社のチーフサイエンティストであり、1986年のチューリング賞受賞者であるRobert Tarjan氏による基調講演では、暗号のフロンティアという内容で以下のような講演をされました。

    世の中にある多くのシステムでブラックボックス型の暗号化が使用されていますが、ハードウェアセキュリティなどさまざまな問題があります。

    スマートフォンやIoTデバイスなどの普及に伴い、保護されていない環境で動作する非管理デバイスのモデルがますます増加しています。それに伴い、ホワイトボックス暗号は現実的な暗号ソリューションとして検討されています。ホワイトボックス暗号の理論と実践には大きな違いがあり、理論的にはセキュリティの保証ができますが、通常は計算と空間のオーバーヘッドが非実用的に大きくなります。難読化に関しては、実際にはリバースエンジニアリングの難しさを増やすために使用されます。

    このプレゼンテーションでは、Indistinguishabilty Obfuscation に重点が置かれています。ホワイトボックス暗号化は一方向関数と組み合わせて使用することによりバーチャルブラックボックスを実現することができます。バーチャルブラックボックスは現在のところ理論的な成果であり実際には実現可能ではありませんが、アプリケーションをより安全にするための活発な研究分野の1つです。脅威モデルが絶え間なく進化している近代的な世界ではホワイトボックスセキュリティソリューションは、インターネットに常時接続されているモバイル決済システム、自動車、医療機器、エンターテインメントなどの業界で有用なツールとして使用できます。

    “FIDO(ファイド)認証で 「あんしんをもっと便利に」” 森山 光一 (NTTドコモ プロダクト部 プロダクトイノベーション担当部長, FIDO Alliance ボードメンバー・FIDO Japan WG座長)


    NTTドコモの森山様に、NTTドコモのFIDO導入の話、FIDO Allianceの活動などについて基調講演をいただきました。

    FIDO (= Fast IDentity Online) Allianceは約250社で構成され、技術仕様・プログラム運営などを推進している標準化団体です。パスワード課題(煩雑・忘れてしまう・更新が必要・サーバ攻撃によるパスワード漏洩の問題など)の抜本的解決に向けて公開鍵暗号ベースのオンライン認証の技術仕様を策定しています。FIDOのプライバシーポリシーとして、(1) 認証プロトコルは、第3者の介在がないend to end protocolで実装 (2) サーバ側で秘密情報が生成されたり保存されることはない (3)異なるサービス毎に、FIDO認証の鍵ペアは独立に存在 という3点があります。

    FIDO仕様は、以下の4種類が提供されています。

  • FIDO 1.1: パスワードレス認証、2要素認証の仕様
  • CTAP (Client To Authenticator Protocol): WebAuthnをサポートするクライアント端末と認証器の間のプロトコル
  • WebAuthn (FIDO+W3C): WebサービスにおいてFIDO認証を実現するための技術仕様
  • UVC (FIDO-EMVco): FIDOを用いたモバイルペイメントに関する仕様
  • NTTドコモでは、2015年5月からdアカウントのFIDO対応サービスをリリース、2015年〜2016-17年冬春モデルまでに全20機種がFIDOに対応しています。導入の動機としては、生体認証を活用したオンライン認証によるUX向上、セキュリティに対する十分な考慮、将来の相互運用性の3点がありました。実際のDeploymentにあたっては、dアカウント認証基盤であるdアカウントの認証サーバとクライアントにFIDO Certified製品を導入し、端末メーカの生体認証装置もFIDO対応してもらいました。これらはAndroidとiOSの両方に対応しています。

    特にセキュリティ面ではFIDO仕様上で重要な (a)秘密鍵の生成処理 (b)生体情報のマッチング処理 (c)署名処理 (d) 秘密鍵と生体情報の格納管理 を全てTEE(Trusted Execution Environment)の中に搭載しました。また、FIDOの互換性運用も考慮されているので将来は複数のFIDO製品やサーバ、複数のサービス提供者の利用が可能になります。さらに2017年2月からはPCからも生体情報で認証できる「スマホ認証」を提供開始。PCログイン時に、FIDO対応スマホで生体認証すれば認証passできるようになります。

    今後は、NTTドコモのスローガン「いつか、あたりまえになることを( The new of today, the norm of tomorrow)」に則りパスワードのいらない世界を目指し、またFIDOアライアンスと連携して「あんしんをもっと便利に」を実現していく事を目指します。続いて、FIDO Alliance / FIDO Alliance Japan WGの活動について(FIDO Japan Working Group 座長の立場で)。FIDO Japan WGは、日本国内の効率的な展開と推進のために諸活動をしています(翻訳、マーケティング、Deployment、などのSub Working Group)。LINE社を加えて、日本国内18社の企業が、FIDO Japan WGに参加しており、FIDO Alliance全体としては、250を超えるメンバーでグローバルに運営しています(2017.5.17時点)。

    Lunch Time

    ランチタイムには、お弁当やお菓子を無料で提供いたしました。

    今回のサミットのために制作されたTシャツも無料で配布されました。また、日本語〜英語の同時通訳レシーバーも用意し、LINEの日英通訳チームのメンバーにも会場の裏で頑張ってもらいました。

    Session 1: Technology Trends in End Point security

    “Application security as crucial to the modern distributed trust model” David P. Maher CTO (Intertrust Technologies Corporation)


    Intertrust CTOのDavid Maher氏により、未来のMobile/IoTの世界におけるアプリケーションセキュリティのトラストモデルについて講演されています。

    IoTやモバイルの時代における分散トラストモデル、例えば、アプリケーションの攻撃耐性やソフトウェアの防御機構について。

    まず分散トラストモデルを目指す上で考慮すべきTrends and Driversを3つ挙げたいと思います。

  • (1) Scale: 近い将来、数百億に及ぶ様々なデバイスが接続され大量のアプリケーションが動き1兆のセンサと1000億のデバイスが存在するようになる
  • (2) Hyper-connectivity: 多くの異なる種類のネットワークを通じて接続され、新しい低電力ネットワークからSDNまで多岐、多様な種類になる
  • (3) Implication of Merger of the cyber world and physical world: 単なるコンピューターリソースにアクセスするだけに留まらず、あらゆるタイプの物理的なリソースにアクセス可能となる
  • 続いて、分散トラストモデルが設定すべきGoalについて説明します。

  • Application level Security that scales: アプリケーションレベルでセキュリティが保証され、アプリケーションによる自分自身の保護と安全に維持されること
  • Security without expensive resources and complexity: 簡単に使用でき、安全性を保ち、プライバシーを脅かす事がないシンプルなデバイスであり続けること
  • Defense-in-depth: 複数の多層的な防御メカニズムが提供されること
  • Protection of sensor data: デバイスは許可されたエンティティにのみセンサデータを伝達する手段となること
  • Secure delegation: 一般の人々が利用する信頼のあるアクセスの管理(委任)手段が提供されること
  • Defense against distributed attacks: トラストモデルは、計算機リソースやネットワークリソースや機能がどのようにランサムウェアやマルウェアなどのシステム攻撃から保護されるのかを示す必要がある
  • 続いて、上記のGoalを達成する為にデバイスとアプリケーションがどうあるべきかのModelを説明します。

    これらのコネクテッドデバイス/アプリケーションには (a) デバイス/アプリケーション自身の制御機構 (b) デバイス/アプリケーションの内部状態を示す情報 (c) センサーデータ を保有・搭載している事を前提とします。

    そして、以下のようなProtection Approachesの手法を取ります。

  • Incremental Discovery: デバイスとアプリケーションがネットワーク上から容易に識別できず、メンバーシップクレデンシャルに関連付けられたコマンドおよびリクエストを用いてのみ対話可能になる。
  • Reference monitor for API calls and remote from panel operation: デバイスおよびアプリケーションに対するリモートコマンド要求やアクセス要求時の認証に用いる鍵は、要求する側が信頼されたソースと関連付けられ参照モニタにより全てのインタラクションをフィルタリングできる。
  • Security associations (SA) and SA management: 1つのデバイスA上には、2つのデバイスA-Bに固有の暗号鍵(通常は共有秘密)とパーミッションリストの形でSecurity Association(SA)が管理される。各デバイスは、初期値のSAからboot strapした後、他のSAを決定していく。
  • Secure Key Vaults: 上記のSAおよびアプリケーション固有のキーはハードウェアまたはホワイトボックス暗号などの安全な鍵保管領域に保管する必要がある。すべてのデバイスとアプリケーションにセキュアなアップデートを使用する必要があります。 新しいコードをデバイスにインストールするか、アプリケーションの動作を変更する機能は、特別な権限を使用して制限する必要がある。
  • Secure telemetry: 安全な遠隔測定(secure telemetry)は異常な動作を識別し、エンティティが攻撃を受けているかどうかを判断するのに役立つ機能として提供される。telemetryはハッカーに利用されてアラームを回避されてしまわないような安全性が必要となる。
  • Web based performance aids: Webベースのパフォーマンス支援により、前述のsecure telemetryを使用できるようになり、危険分析・異常検出・機械学習ベースのリアルタイム脅威評価などを通じて攻撃の早期警告ができる監視システムを提供する。
  • Virtualization and visualization: 拡張されたユーザーインターフェイスを提供できるWebベースのプロキシによって、任意のデバイスまたはアプリケーションは内部状態表示だけでなくデバイスのグループの管理も可能にする。
  •  個々のデバイスや関連するアプリケーションにインストールされうるソフトウェア自己防衛の仕組みが重要であると強調する一方で、もしデバイスに適切なセキュリティ機能がインストールされているならば信頼できる外部リソースを活用する事で暗号化・監視・その他のセキュリティ対策などこれらのデバイスの複雑さの問題の大部分を解消していく事もできる、という事を結論づけさせて頂きます。

    “Implementing trusted endpoints in the mobile world” エレンコフ・ニコライ (LINE株式会社)


    LINEのアプリケーションセキュリティチームのNikolay氏は、「モバイルワールドでの信頼できるエンドポイントの実装」というタイトルで講演を行いました。

    モバイルの世界で重要なエンドポイントセキュリティの技術について

  • エンドポイントのセキュリティが従来のデスクトップからモバイルデバイスにどのように変化したか、モバイル機器を保護するために使用されるコア技術について
  • iOSとAndroidのセキュアブートの概要を説明し、コード署名とアプリケーションサンドボックスは、両方のモバイルプラットフォームでアプリとデータの完全性を保証するために使用される
  • 各アプリケーション、プロセスの権限をあらかじめ定めたセキュリティポリシに従った管理を実現するため、両プラットフォームは Mandatory Access Control (MAC) フレームワークを採用している
  • さらに、MACをバイパスできないように、OS のコアとなっているカーネルをリアルタイムで監視する技術、KPP (Apple) と TIMA (Samsung Knox) も積極的に取り込んでいる
  • ユーザーデータを暗号化するために採用された主な方法として、ファイルベースのディスク暗号化 (FBE) とフルディスク暗号化 (FDE)が存在する
  • 暗号化鍵、生体認証テンプレートなどの秘密情報を保護するために、メインOS から分離された、セキュアな実行環境も存在する
  • Appleの場合は、Secure Enclave Processor(SEP)、Android の場合は、Trustedな実行環境(TEE)が採用されている
  • LINEのユーザーベースとアプリケーションエコシステムのセキュリティニーズ
  • LINEが現在評価しているエンドポイント保護技術( TEEベースおよびハイブリッドの信頼性のあるアプリケーション、ホワイトボックス暗号化、FIDOなどの生体認証技術)
  • こちらのエントリはイベントレポートの前編です。後編では

  • ゲーム開発を加速させるためのクライアントセキュリティ
  • Practical attacks on commercial whitebox cryptography solutions
  • IoT機器のセキュリティの強化について
  • 耐タンパーソフトウェアの研究動向
  • トークセッション 〜 Exploring Trusted Apps and Services
  • をお届けします。
    後編はこちら

    Related Post