CEDEC2017 エンジニア感想レポート 最終日

こんにちは。研究開発部です。
3日間のCEDEC2017感想レポは、今回で最後になります。
1日目と2日目はこちらをご覧ください。
CEDEC2017 エンジニア感想レポート 1日目
CEDEC2017 エンジニア感想レポート 2日目

3日目は、SECCON 2017 x CEDEC CHALLENGE ゲームクラッキング&チートチャレンジというセッションがありました。個人的にはこれが一番気になっていたセッションでした。DNPハイパーテックはセキュリティ技術を得意とする会社ですので、ここはおさえておかねば!ということで、ガッツリと内容を紹介していきます!

セッション内容

–の前にまずSECCONとは

先ずはSECCONの紹介から。SECCONのホームページの概要が完結かつ分かりやすかったのでそのまま引用します。

情報セキュリティをテーマに多様な競技を開催する情報セキュリティコンテストイベントです。実践的情報セキュリティ人材の発掘・ 育成、技術の実践の場の提供を目的として設立されました。 世界の情報セキュリティ分野で通用する実践的情報セキュリティ人材の発掘・育成を最終目標として、まずはICTに関わるすべての人材(開発者、テスト実施者、利用者)への情報セキュリティの考え方や知見を広めることでセキュリティ予備人材の裾野を広げ、さらにその中から世界に通用するセキュリティ人材を輩出し、よって日本の情報セキュリティレベルを世界トップレベルに引き上げることを目的としています。

情報セキュリティに関して、人材の発掘と教育、それから発展をめざして世界で開かれている大会です。世界大会で、サイバー攻撃の試合の様子だそうです。やたら未来感溢れてますね。決勝戦の順位だそうです。中国と韓国が強いですね。それからアメリカとロシアも強豪だそうです。日本でも国内大会が開かれたり、学生向けの大会も開かれており、若いうちからセキュリティリテラシーを養い人材の育成に貢献しています。

SECCON2017 x CEDEC CHALLENGE

今回のセッションは、そのSECCONとCEDEC共同で開かれたものです。SECCONが仮想のゲーム会社となり、ゲームを作成。参加者にゲームのセキュリティ診断をしてもらいます。参加者はゲームの脆弱性を見つけ、調査結果を報告します。今回は調査結果発表において好評だったチームの発表です。

調査結果報告

3つの課題について、チーム"Harekaze”が発表しました。競技課題はこんな感じ。

  • cocos2d-xで作られたサンプルプログラム
    • 2億回クリックしないと表示されない文字を表示させる
  • UnrealEngine4で作られたサンプルプログラム
    • ジャンプして上に登っていくゲーム。ただし、ジャンプしても届かない。。。
  • unityで作られたサンプルプログラム
    • 上2つとは異なり、きちんと作られている。クラキングの実力が試される。

内容を一つ一つ解説はできないので割愛しますが、静的解析と動的解析の両方を上手く使用し、的確に課題をクリアしていました。中でも最終問題に関しては、通信経路のハッキングを試み、暗号のかけられている通信を解析。通信から得られた情報と、アプリ内のデータから、暗号の解除をやってのけたのは圧巻でした。

通信内容を読めてしまえば、後はやりたい放題。得点の改ざん、ランキング不正、スタミナ常時MAXなどなど……これが本物のゲームだったらと思うとゾッとしますね。

総括

発表の最後には主催の招いた、セキュリティ診断をしている会社の方がまとめを。発表内容に関しての総評と、実際のセキュリティ診断会社の視点から、ゲームの脆弱性とその対策について話しました。

まとめ

今回のCEDEC2017では、私の知る限り4つのセキュリティをテーマとしたセッションがありました。それらを合わせると、対策としてはこんな感じ。

  • クライアント側にデータを置くネイティブアプリが主流となった現在、一般ユーザーと不正ユーザー等しくデータを持つために切り分けが難しくなった。
  • 先ずはクライアント側に置くデータに対して、きちんとした対策を取ること
    • その為には、チート手法を知ること。それと、簡単でカジュアルなチート手法に対する対策をすること。
    • Root化、脱獄のようなOS改造は、クラックと対策のイタチごっこになりやすいため、セキュリティ対策会社のソフトを入れるのがベター
  • 通信部分のハッキング対策、“SSL Pinning(proxy証明書の正当性を確認する処理)”が有効
    • 暗号化の鍵を複雑化するのも良い

どのセッションも、会場を埋めるほどの人数が聞きに来ていました。セキュリティに関する関心の高さと重要性を感じました。弊社としても、より良い製品開発をめざし、また多くのことを発信して、ユーザーがゲームを楽しく遊べる環境を作りたいと思います。