LAC WATCH

セキュリティとITの最新情報

RSS

サービス・製品 | 

【セミナーレポート】ハイブリッドアプリ開発の最前線ではどんなことが起きている?

皆さんの会社では、自社開発アプリを使われていますか?

世の中、自社の顧客向けにアプリでサービス提供する企業がとても多くなっています。また、それだけでなく会社内の業務システム用にモバイルアプリを社内開発している企業も増えています。

スマホが世の中のインフラと言えるほど普及したことを考えれば、アプリの利便性を事業や、会社の業務効率化に活かそうという動きが増えるのは当然でしょう。
さて、このような状況においては、アプリ開発を低コストで素早くリリースすることが必要となります。またリリース前のセキュリティ確保もとても重要となるわけです。

この記事では、2020年11月25日に開催された、オンラインセミナーの内容をご紹介します。

セミナーのタイトルは、
「初心者にもわかる!ハイブリッドアプリ開発とセキュアプログラミング最前線」
アプリ開発をされる皆さんなら、とても関心がある内容かと思います。

さらに詳しく知るにはこちら

Monaca - すべての人にアプリ開発を

セミナーはハイブリッドアプリ開発プラットフォームの「Monaca」を提供しているアシアル株式会社とラックが共同で開催しました。さて、どんな内容だったのか、順を追ってご紹介していきたいと思います。

さらに詳しく知るにはこちら

Monaca - すべての人にアプリ開発を

セミナープログラムはどんな内容だった?

今回のセミナーは3つのセッションで構成されていました。

最初のセッションは、アシアル株式会社 Monaca開発エンジニア/マネージャー 渡辺 卓弥 氏。
「アプリ開発ツールMonaca」を使用したハイブリッドアプリ開発の特徴とセキュリティ対策のポイントについて紹介されました。

2つ目のセッションは、当社セキュリティソリューション企画開発部 安田 良明。
アプリ開発現場が抱える課題の解説とアプリ診断ツール「Secure Coding Checker®」について。

3つ目のセッションでは、当社デジタルペンテストサービス部 宮崎 力。
アプリ診断ツール「Secure Coding Checker」を使用したハンズオンデモが行われました。

とても内容が充実したセミナーで、それぞれのセッションのポイントを簡単に紹介します。また、セミナーの動画も公開しておりますので、記事とあわせてご覧頂けたらと思います。

セッション1:アプリ開発ツールMonacaで作るハイブリッドアプリとセキュリティ対策

アシアル社の渡辺氏からは、ハイブリッドアプリ開発の最新事情について、「Monaca」の紹介を通じて説明がありました。

アプリ開発ツールMonacaで作るハイブリッドアプリとセキュリティ対策

「Monaca」ではHTML5、JavaScriptといったWeb標準技術を⽤いてiOS、Android向けのモバイルアプリ開発を行うことができます。開発者はiOS言語(Objective-C / Swift)やAndroid言語(Java / Kotlin)を知らなくても、普段から慣れ親しんだWebアプリ開発で使用される言語で開発を行えるそうです。iOS、AndroidのUIコンポーネントや画面遷移も簡単に作りこむことができ、作り手のハードルがとても低いということです。これだけでもその便利さは容易に想像できますね。

また「Monaca」のプラットフォームはクラウド上にあるため、ブラウザやコマンドラインツールからクラウド環境に接続するだけで、プロジェクトの作成からアプリのリリースまでできるようになるとのこと。開発環境をエンジニア同士で共有できるので、エンジニア一人ひとりに対する開発環境の構築が不要となり、運用やメンテナンスの時間が削減できます。言語習得やアプリ開発環境のメンテナンスの時間が減らせるのは、開発者にとって願ったりかなったりですね。

さらに、ハイブリッドアプリを開発する際には、ハイブリッド特有のセキュリティ対策も必要とのこと。例えばハイブリッドアプリの仕組みを支えるCordovaの脆弱性への対応、ネットワークリクエスト時のアクセス制御の実装も必要。その他にも、ハイブリッドアプリのアセットファイル(HTML / JavaScript等)は、ネイティブコードにコンパイルされず、ソースコードの状態でデバイス内に格納されるため、暗号化や難読化の対処をしてもリバースエンジニアリングによるソースコード解析などを防ぐ必要があるとのことです。

渡辺氏のセッションを通じて、ハイブリッドアプリ開発がどれだけ簡単に早く行えるようになっているか理解できました。それと同時にハイブリッドアプリ特有のセキュリティ対策も見落とせないという点もはっきり理解することができました。

セッション2:アプリ開発現場が抱える課題解説とアプリ診断ツールSecure Coding Checkerの紹介

当社の安田からは、アプリ開発現場が抱える課題についてとアプリ診断ツール「Secure Coding Checker」の説明がありました。

アプリ開発現場が抱える課題解説とアプリ診断ツールSecure Coding Checkerの紹介

従来のWebアプリのようなPC上で動作するアプリやスマートデバイス上のエンターテインメントアプリに加え、最近ではスマートデバイスや産業IoT用のアプリ開発が求められるということです。

iOS、Android OSで動作する多種多様なアプリが公開されていますが、業務用途や特定産業用途におけるアプリはこれから成長する市場とのこと。特にオープンソースであるAndroid OSは自動車、テレビ、IoTセンサーデバイス等に実装しやすいため、今後ますますAndroidアプリが多く開発されるようになるらしいです。

アプリ開発も、進化の早いテクノロジーやエンドユーザーの生活変化に合わせ、顧客からフィードバックを受けたらすぐに修正やアップデートをしていく、アジャイル開発が必要とのこと。それは一利用者としてもうなずけます。ただし、ビジネスの中では利便性だけではなく安全性も要求され、更新したアプリケーションのセキュリティをきちんと検査しない限り市場にリリースすることはできないということです。

特にアプリ開発をする際に、セキュリティの要件決めや短時間で頻繁にテストを行う必要があり、環境の準備やコストが課題になる。ラックでは、その解決策としてAndroidアプリ検査サービス「Secure Coding Checker」を作ったということです。

JSSECのセキュリティ基準に100%準拠した
Androidアプリ脆弱性診断ツール

Secure Coding Checker

このサービスは、一般社団法人 日本スマートフォンセキュリティ協会が策定した「Androidアプリのセキュア設計・セキュアコーディングガイド*」(以下、「セキュアコーディングガイド」)に100%準拠した検査が行える仕組みをクラウド上に構築したものだそうです。

いつでも、どこでも、どんなデバイスからでも簡単に素早く低コストで検査ができるとのこと。そんな便利な検査ツールなら、ぜひ試してみたくなりますね。

* 「Android アプリのセキュア設計・セキュアコーディングガイド」【2020年11月1日版】

JSSECのセキュリティ基準に100%準拠した
Androidアプリ脆弱性診断ツール

Secure Coding Checker

セッション3:アプリ診断ツールSecure Coding Checkerを使用したハンズオンデモ

当社の宮崎からは、アプリ診断ツール「Secure Coding Checker」を使用したハンズオンデモが行われました。

当日は参加者にも体験できるよう、Android Studio 4.0.1付属のサンプルアプリを検査対象としてデモが行われました。参加者には事前にインストールまで済ませて頂き、セッション中にAndroidアプリの脆弱性の検出と修正までを体験してもらうという流れです。

「Secure Coding Checker」を使用した検査は、ブラウザでクラウド上の検査環境にアクセスし、検査対象となるapkファイルを選択するだけでスタートします。ファイルのアップロードと検査は自動的に行われ、検査結果が表示されます。今回使用したサンプルは1,000行程度のコードサイズで、およそ10秒程度で結果が表示されました。検査時間はコード量によりますが、とても素早く検査結果が得られるという印象です。

サンプルアプリを「Secure Coding Checker」で検査した結果

検査結果は「セキュアコーディングガイド」への準拠レベルに応じ、「違反 / 注意 / 不明 / 安全 / 安全判断 / リスク受容判断」の内容でグラフ表示されおり、違反や注意などの分類が一目でわかります。今回使用したアプリでは、「LogCatにログ出力する」と「その他(注意すべき実装)」の2つの項目が違反項目として検出されたので、この2つの修正を行うことに。

検出項目に対する検査結果のリンクをクリックすることで「セキュアコーディングガイド」で問題のある個所の詳細説明や修正方法をすぐに参照することができます。

あとは「セキュアコーディングガイド」の記載内容に従い、アプリを修正してリビルド。

「セキュアコーディングガイド」で問題のある個所を修正してリビルドする様子

apkファイルをSecure Coding Checkerで再度検査すると、なんと、2つあった違反項目がいずれも検出されなくなっていました。

「Secure Cording Checker」で再検査し違反項目が検出されないことを確認

「アプリのセキュリティ検査がこんなにも簡単にできるものなのか!」このハンズオンデモを見た率直な感想です。そして、修正ポイントも指摘してくれるので、自分でコードの中に隠れている脆弱性を目視でチェックするより、はるかに正確で見落としがない。アプリ開発者なら使わない理由は無いと断言できるものでした。

セミナー参加者の声

セミナー参加者からは、

「セキュリティについて、初心者が知識を身につける機会や方法がないと感じていたので、よい機会になった」
「セキュリティ対応の手立てが必要という気づきを得られた」
「アプリ開発の事情やSecure Coding Checkerの使い方を知ることができとても良い経験になった」
「講演のテーマについてさらに深く理解でき、モチベーションにもつながった」

などのフィードバックが頂けたということです。

ここまでセミナーレポートを読んで頂けた方、ありがとうございます。しかし文章だけではなかなかその中身が伝わりにくいのも事実。ハイブリッドアプリ開発の特徴とハイブリッドアプリ特有のセキュリティ対策にご興味のある方は、ぜひセミナー当日の録画データがありますので。そちらを併せてご覧ください。

そして、簡単便利なアプリ開発プラットフォーム「Monaca」やAndroidアプリ検査サービス「Secure Coding Checker」もぜひ、お試し頂けたらと思います。

ラックでは、今後もアシアル社とハイブリッドモバイルアプリ開発者をお助けできる活動に積極的に取り組んでまいります。

より詳しく知るにはこちら

JSSECのセキュリティ基準に100%準拠した
Androidアプリ脆弱性診断ツール

Androidアプリ開発では、セキュリティの要件決めや短時間で頻繁にテストを行う必要があり、環境の準備やコストが課題とお悩みの方へ。
Secure Coding Checkerは、いつでも、どこでも、どんなデバイスからでも簡単に素早く低コストで高品質な脆弱性検査が可能です。

この記事は役に立ちましたか?

はい いいえ

関連記事

LAC WATCH

関連記事をご紹介します

  • JSSECセキュアコーディングガイド最新版~改定内容とAndroid 11対応のノウハウとは?

  • あなたの開発したアプリに思わぬ落とし穴?今、アプリ開発に欠かせない重要なポイントとは

  • Androidアプリ脆弱性検査ツール「Secure Coding Checker®」入門