[CODE BLUE 2019] LINEのアプリケーションセキュリティ戦略と開発者向け教育 [レポート] #codeblue_jp

CODE BLUE 2019「LINEのアプリケーションセキュリティ戦略と開発者向け教育」についての参加レポートです。
2019.10.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、芳賀です。

『世界トップクラスのセキュリティ専門家による日本発の情報セキュリティ国際会議』でありますCODE BLUE 2019に参加していますのでレポートします。

このブログは下記セッションについてのレポートです。

LINEのアプリケーションセキュリティ戦略と開発者向け教育 Presented by 中村 智史

弊社はセキュリティエンジニアの業務をアプリケーション分野とインフラ分野で分担している。アプリケーション分野は「自社およびグループで提供する製品やサービスのセキュリティ(技術)」を担っている。この部門の戦略と新たな取り組みとしての開発者向け教育について説明する。

レポート

LINEの取り組み

LINE のアプリケーションは、個人に寄り添い、生活のクオリティをあげることに力を注いでいる

現在、日本、韓国などの国で164,000,000 MAU 38か国で7,000人が社員として働いている とても国際色豊かである

Application Security Strategy

  • Securityを浸透させるにもエンジニアと非エンジニアの違いがある。
    • エンジニアでもアプリレイヤー、インフラレイヤーに分かれる
    • 非エンジニアではプライバシー、ポリシー、法対応に分かれる
  • 人的な部分とともに、各国での拠点にてセキュリティ対応をおこなう必要がある
    • 拠点のセキュリティ対応は全ての拠点でできている訳では無いのが現状である
  • ただ、Corp SecurityやGrayLabにはトップクラスのセキュリティエンジニアが在籍している
  • それらトップエンジニアのパワーで各拠点をサポートし、セキュリティを底上げしていくことを考えた

LINEアプリケーションの開発フロー

  • 一般的なプロダクト開発同じプロセスである
    • 要求~設計~実装~検証~リリース&運用
  • 2012年ごろにLINEをリリースし、そのころは検証工程で脆弱性検査やペネトレーションテストを軸にセキュリティ対応をおこなっていた
  • 2013~2014年ごろから非テクノロジー系の人たちに向けて要求設計からSecurity By designを進めるコンサルティングを開始(Pricacy Impact Assessment)
  • あわせてBug Bounttyプログラムを開始
  • Abuse Monitoring もおこないはじめた。(ハンゲーム時代に実施していたAbuse検知を手本に)

BugBountyプログラムで見えてきたこと

  • bug bounty プログラムで見えてくるコード上の問題から設計レビューやコードレビューへセキュリティ室が関わり始めた

より開発現場へ近い位置で支援するための仕組み作り

  • 去年から Developing Security-related functionalities というセキュリティ部門から開発チームを支援するチーム体制を作った
  • 部門や対応を増やすことで、もちろんコストも増え、スケールしずらくなる事が懸念された
  • 診断数の年間統計をとったところ、2017~2019年の2年間で診断数は+77%(約2倍)へスケールしていた
  • これらの取り組みにより脆弱性が減っているか、同じように統計ととった
    • 結果は、脆弱性の数は減少しておらず、会社のサービス規模に合わせて増加していた。
  • 対策や体制を整えたのに、脆弱性が減っていないという知見を得た。

LINE で作った Education Platform

  • 発生している脆弱性について分析した結果、XSSやCSRFが多く検知されていることがわかった。
  • これはコーディング上の問題で発生する脆弱性が多かった
  • これらの脆弱性を抑えるためには、設計や実装側へのアプローチは間違っていなかった。
  • トップエンジニアがいるGrayLabが作っているe-learningがあり、それを活用しようとしたがWikiや動画をエンジニアは基本見ない。
    • 教育という意味ではドキュメントベースでは使われない事が多い。
  • そのため、Cybersecurity EducationPlatformとトップエンジニアが作った
    • これはエンジニア、非エンジニアを同列で教育できる仕組み
    • PCで動画をみるのではなく、モバイルでいつでもどこでも教育できるコンテンツソフト
    • 教育のコースは基本的な部分とエンジニア向けに分かれている
    • コンテンツを座学を勉強したあと、QUIZがあり、QUIZの成績はランキングやダッシュボードで見る事ができる
    • また、一般的なQUIZシステムだと何度でも答える事ができるが、1度答えると3日間修正ができない、という仕組みを入れた
  • これにより受講歴を管理者が管理でき、ランキングにより学習意欲を駆り立てることができている。
  • このシステムは、LINE社外でも利用できると思うので、外部への展開も今後は考えている。

感想

 

セキュリティの教育では座学になりがちで、自分に興味がない分野ではなかなか覚えてもらえない事が多い。 でもゲーム的な要素を絡めることで学習意欲を駆り立てる仕組みがとても面白く、もし外部へ公開されるならIT企業以外での活用してもらいたい取り組みだった。