スマートフォンアプリ診断

iOSアプリやAndroidアプリのリバースエンジニアリングによる脆弱性解析、ソースコードやサーバー側APIの診断も実施します。

診断サービス概要

iOSやAndroidアプリ等のスマホアプリにセキュリティ上の問題点がないか、
JSSECのセキュアコーディングガイドやOWASPMobileTop10に基づきセキュリティ診断サービスを実施します。
リバースエンジニアリングによるアプリの挙動解析の実施も可能です。診断後のセキュリティ強度評価や該当するリスク対策についてもレポートいたします。

スマホアプリの問題点やリスクを認識することで、インシデント発生時に適切な対応を迅速に行えます。
脆弱性診断の専門企業へセキュリティ診断を依頼・実施することにより、アプリの付加価値を高めることが出来ます。

スマートフォンアプリ脆弱性診断のフロー

  • STEP1

    スマホアプリ脆弱性診断
    事前準備

    スマホアプリの特性に関する理解と脆弱性診断範囲の明確化

    アプリサービスごとの特性を把握し、重点的に行わなければならない脆弱性診断箇所を特定いたします。

    1. スマートフォンアプリのシステム構成をヒアリング

      仕様書や担当者様へのヒアリングを通してアプリの用途や実装機能を把握します。

    2. スマホアプリのセキュリティ診断実施方針の策定及びお見積り

      対象アプリに合わせて重点的に行わなければならない項目を策定します。その後お見積りをお出しします。

  • STEP2

    スマートフォンアプリ診断実施

    完全手動によるスマホアプリのセキュリティ診断

    完全な手作業で脆弱性診断を実施します。基本的なチェックから高度なリバースエンジニアリングまで対応しています。

    1. 静的解析

      リバースエンジニアリングしたソースコードから脆弱性を調査します。必要に応じて実証コードを書き、想定した攻撃シナリオが成功するかを検証します。

    2. 動的解析

      アプリを動作させた際に生成されるファイルやログの内容、発生する通信の中身を調査します。

  • STEP3

    スマホアプリケーション診断報告及び改善案提出

    解析/診断実施結果報告

    検知された脆弱性や全体としてのセキュリティ強度、危険性、今後の対策まで触れていきます。

    1. 脆弱性の再現手順

      検知された脆弱性の再現手順を個別に明記します。また対策方法についてもご説明します。

    2. 総合評価

      全体としてのセキュリティ強度や、危険性についてコメントし、今後の対策まで触れていきます。

スマホアプリ脆弱性診断項目

Androidアプリ脆弱性診断

通信

不正通信の確認
アプリの通信をキャプチャし、外部サーバへ重要情報の不正送信の有無を確認します。
重要情報の送信方法
個人情報やパスワードなどの重要情報を暗号化して送信しているか確認します。
SSL/TLS証明書検証
SSL/TLS通信で利用している証明書の検証を適切に行っているか確認します。

端末内データ

重要情報の保持方法
端末内データ(File,Database,Preference)に重要情報などのデータを平文で保存していないことを確認します。
データ改ざんによる不正行為
端末内データを改ざんすることによる不正行為(チート、残高偽装、購入履歴偽装等)の可否を確認します。
パーミッションの設定不備
重要情報を含むファイルのパーミッションを確認します。
SDカードへの重要情報の出力
SDカード内へ重要情報を保存の有無を確認します。
ログへの重要情報の出力
ログに重要情報の出力の有無を確認します。

ロジック、ソースコード

コンテントプロバイダのアクセス制御不備
重要情報へアクセス可能なコンテントプロバイダが意図せず他のアプリから不正にアクセス可能かを確認します。
インテントによる重要情報の出力
インテントの出力ログによる重要情報の出力の有無を確認します。
WebView関連の脆弱性の有無
JavaScript連携やaddJavaScriptInterface機能による情報漏洩の有無を確認します。
耐タンパー性の確認
逆コンパイルの可否や難読化の有無等を確認します。
ソースコードへの重要情報の出力有無
ソースコード内に暗号化キーや隠し機能、隠しURL等の情報がハードコーディングされていないか確認します。
通信プロトコルの解析
HTTP以外のプロトコルが使われている場合は解析し、脆弱性の有無を確認します。
ロジック改ざん
バイナリパッチを当てることによって重要なロジックの改ざんが可能かを確認します。
リバースエンジニアリングによる脆弱性解析
リバースエンジニアリングによってその他の脆弱性解析を行います。

iOSアプリ脆弱性診断

通信

不正通信の確認
アプリの通信をキャプチャし、外部サーバへ重要情報の不正送信の有無を確認します。
重要情報の送信方法
個人情報やパスワードなどの重要情報を暗号化して送信しているか確認します。
SSL/TLS証明書検証
SSL/TLS通信で利用している証明書の検証を適切に行っているか確認します。

端末内データ

重要情報の保持方法
端末内データ(File,Database,Preference)に重要情報などのデータを平文で保存していないことを確認します。
データ改ざんによる不正行為
端末内データを改ざんすることによる不正行為(チート、残高偽装、購入履歴偽装等)の可否を確認します。

ロジック、ソースコード

WebView関連の脆弱性の有無
他アプリ連携やWebView機能による情報漏洩の有無を確認します。
耐タンパー性の確認
逆コンパイルの可否や難読化の有無等を確認します。
ソースコードへの重要情報の出力有無
ソースコード内に暗号化キーや隠し機能、隠しURL等の情報がハードコーディングされていないか確認します。
通信プロトコルの解析
HTTP以外のプロトコルが使われている場合は解析し、脆弱性の有無を確認します。
リバースエンジニアリングによる脆弱性解析
リバースエンジニアリングによってその他の脆弱性解析を行います。

スマートフォンアプリ(iOS/androidアプリ)診断事例

株式会社FiNC

スマートフォンアプリ診断

診断背景
株式会社FiNCのスマートフォンアプリを診断を実施。ダイエットなどの健康改善や病気予防を、AIチャットなどの最先端テクノロジーを用いてサポートするヘルスケアプラットフォームアプリ「FiNC」の、リリースに伴うセキュリティ診断を担当させていただきました。
診断期間
約1ヵ月
診断事例詳細
インタビュー詳細はこちら

SNSサービス運営 A社

Androidアプリ診断・リバースエンジニアリング

診断背景
スマートフォン向けのアプリの設計の段階でセキュリティを考慮した開発を行うだけでなく、最終的に脆弱性のないアプリを開発することが重要です。本件ではアプリリリース前に致命的な脆弱性問題が発生するプロセスを明らかにしてレポートをお届けする「スマートフォンアプリセキュリティ診断」サービスを提供いたしました。
診断期間
約1週間
診断事例詳細
インタビュー詳細はこちら

報告書サンプル

診断結果レポートでは発見された脆弱性が、クライアント企業にて迅速に修正できるように具体的な内容・再現方法・リスク・対策方法を報告します。
※お問い合わせページよりサンプル請求をご希望ください。2営業日以内に担当者より送付させていただきます。

CONTACT

お気軽にご相談ください

Webサービスやアプリにおけるセキュリティ上の問題点を解消し、収益の最大化を実現する相談役としてぜひお気軽にご連絡ください。
経験豊富なセキュリティエンジニアが診断を行います。