Mobile-security-attack-vectors

提供:Dev Guides
移動先:案内検索

モバイルセキュリティ-攻撃ベクトル

定義上、*攻撃ベクトル*は、*ペイロード*と呼ばれる「不正なコード」を挿入するために、ハッカーが別のコンピューティングデバイスまたはネットワークにアクセスするために使用する方法または手法です。 このベクトルは、ハッカーがシステムの脆弱性を悪用するのに役立ちます。 これらの攻撃ベクトルの多くは、このシステムの最も弱い点である人間の要素を利用します。 以下は、ハッカーが同時に使用できる攻撃ベクトルプロセスの概略図です。

ハッカー

モバイル攻撃ベクトルのいくつかは-

  • マルウェア
  • ウイルスとルートキット
  • アプリケーション修正
  • OS変更
  • データ流出
  • データが組織を離れる
  • 印刷画面
  • USBへのコピーとバックアップの損失
  • データ改ざん
  • 別のアプリケーションによる変更
  • 検出されていない改ざんの試み
  • ジェイルブレイクしたデバイス
  • データロス
  • デバイスの損失
  • 不正なデバイスアクセス
  • アプリケーションの脆弱性

攻撃ベクトルの結果

説明したとおり、攻撃ベクトルはハッキングプロセスであり、成功しています。モバイルデバイスへの影響は次のとおりです。

  • データの損失-モバイルデバイスがハッキングされた場合、またはウイルスが導入された場合、保存されたデータはすべて失われ、攻撃者によって取得されます。
  • モバイルリソースの不適切な使用-これは、ネットワークまたはモバイルデバイスが過負荷になり、本物のサービスにアクセスできなくなることを意味します。 悪いシナリオでは、ハッカーが別のマシンまたはネットワークを接続するために使用します。
  • 評判の損失-Facebookアカウントまたはビジネスメールアカウントがハッキングされた場合、ハッカーは友人、ビジネスパートナー、およびその他の連絡先に偽のメッセージを送信できます。 これはあなたの評判を損なうかもしれません。
  • 個人情報の盗難-写真、名前、住所、クレジットカードなどの個人情報の盗難の場合があります。 そして同じことが犯罪にも使用できます。

モバイル攻撃の構造

以下は、モバイル攻撃の構造の概略図です。 攻撃ベクトルを含む感染フェーズから始まります。

モバイル攻撃

デバイスへの感染

デバイスへのモバイルスパイウェアの感染は、AndroidデバイスとiOSデバイスでは異なる方法で実行されます。

*Android* -ユーザーは、一般的にソーシャルエンジニアリング攻撃を使用して、市場またはサードパーティアプリケーションからアプリをダウンロードするようにだまされます。 リモート感染は、アクティブな敵がユーザーのモバイル通信を傍受してマルウェアを注入する中間者攻撃(MitM)によっても実行できます。
*iOS* -iOS感染には、モバイルへの物理的アクセスが必要です。 デバイスへの感染は、JailbreakMEエクスプロイトなどのゼロデイを悪用することでも可能です。

バックドアをインストールする

バックドアをインストールするには、Androidデバイスをルート化し、Appleデバイスをジェイルブレイクする管理者権限が必要です。 デバイスメーカーがルート化/ジェイルブレイク検出メカニズムを配置しているにもかかわらず、モバイルスパイウェアはそれらを簡単にバイパスします-

*Android* -発根検知メカニズムは意図的な発根には適用されません。
*iOS* -ジェイルブレイクする「コミュニティ」は声高に動機付けられています。

暗号化メカニズムのバイパスと情報の窃盗

スパイウェアは、暗号化された電子メールやメッセージなどのモバイルコンテンツを攻撃者のサーバーにプレーンテキストで送信します。 スパイウェアはセキュアコンテナを直接攻撃しません。 ユーザーがデータを読み取るために安全なコンテナからデータを取得した時点でデータを取得します。 その段階で、ユーザーの使用に合わせてコンテンツが復号化されると、スパイウェアはコンテンツを制御して送信します。

侵害されたモバイルからハッカーはどのように利益を得ることができますか?

ほとんどの場合、私たちのほとんどは、モバイルがハッキングされた場合に何を失う可能性があると考えています。 答えは簡単です。プライバシーが失われます。 私たちのデバイスは、ハッカーが私たちを監視するための監視システムになります。 ハッカーにとって利益となるその他の活動は、機密データの取得、支払い、* DDoS攻撃*などの違法行為の実行です。 以下は概略図です。

DDoS攻撃

OWASP Mobileのトップ10リスク

モバイルセキュリティについて話すとき、脆弱性の種類は、4月21日に設立された米国の非営利慈善団体であるOWASPに基づいています。 OWASPは国際組織であり、OWASP Foundationは世界中のOWASPの取り組みをサポートしています。

モバイルデバイスの場合、OWASPには* 10の脆弱性分類*があります。

M1-不適切なプラットフォームの使用

このカテゴリは、プラットフォーム機能の誤用またはプラットフォームセキュリティコントロールの使用の失敗を対象としています。 これには、Androidの意図、プラットフォームの権限、TouchIDの誤用、キーチェーン、またはモバイルオペレーティングシステムの一部であるその他のセキュリティコントロールが含まれる場合があります。 モバイルアプリがこのリスクを経験する方法はいくつかあります。

M2安全でないデータ

この新しいカテゴリは、モバイルトップ10 2014のM2とM4の組み合わせです。 これは、安全でないデータストレージと意図しないデータ漏洩を対象としています。

M3-安全でない通信

これには、不十分なハンドシェイク、不正なSSLバージョン、弱いネゴシエーション、機密資産のクリアテキスト通信などが含まれます。

M4-安全でない認証

このカテゴリは、エンドユーザーの認証または不適切なセッション管理の概念をキャプチャします。 これには以下が含まれます-

  • 必要なときにユーザーをまったく特定できない
  • 必要なときにユーザーのIDを維持できない
  • セッション管理の弱点

M5-Insuficient暗号化

このコードは、機密情報資産に暗号化を適用します。 ただし、暗号化は何らかの方法で不十分です。 TLSまたはSSLに関連するものはすべてM3で使用されることに注意してください。 また、アプリが必要なときに暗号化をまったく使用できない場合、おそらくM2に属します。 このカテゴリは、暗号化が試行されたが、正しく実行されなかった問題のためのものです。

M6-Insecure Authorization

これは、認証の失敗(たとえば、クライアント側での認証決定、強制的な閲覧など)をキャプチャするカテゴリです。認証の問題(デバイスの登録、ユーザーIDなど)とは異なります。

必要な状況でアプリがユーザーをまったく認証しない場合(たとえば、認証および承認されたアクセスが必要なときに何らかのリソースまたはサービスへの匿名アクセスを許可する)、それは承認の失敗ではなく認証の失敗です。

M7クライアントのコード品質

これは、あまり使用されていないカテゴリの1つである「信頼できない入力によるセキュリティ決定」です。 これは、モバイルクライアントでのコードレベルの実装の問題のすべてです。 これは、サーバー側のコーディングの間違いとは異なります。 これにより、バッファオーバーフロー、フォーマット文字列の脆弱性、およびモバイルデバイスで実行されているコードを書き換えることがソリューションであるその他のさまざまなコードレベルの間違いなどをキャプチャできます。

M8コードの改ざん

このカテゴリには、バイナリパッチ、ローカルリソースの変更、メソッドのフック、メソッドのスウィズリング、および動的メモリの変更が含まれます。

アプリケーションがモバイルデバイスに配信されると、コードとデータリソースがそこに常駐します。 攻撃者は、コードを直接変更したり、メモリの内容を動的に変更したり、アプリケーションが使用するシステムAPIを変更または置換したり、アプリケーションのデータやリソースを変更したりできます。 これにより、攻撃者は、個人的または金銭的利益のためにソフトウェアの意図された使用を破壊する直接的な方法を提供できます。

M9-リバースエンジニアリング

このカテゴリには、ソースコード、ライブラリ、アルゴリズム、およびその他の資産を決定する最終的なコアバイナリの分析が含まれます。 IDA Pro、Hopper、otool、およびその他のバイナリ検査ツールなどのソフトウェアは、アプリケーションの内部動作に対する攻撃者の洞察を与えます。 これは、アプリケーションの他の初期の脆弱性を悪用し、バックエンドサーバー、暗号定数と暗号、および知的財産に関する情報を明らかにするために使用される可能性があります。

M10-外部機能

多くの場合、開発者には隠されたバックドア機能や、運用環境へのリリースを意図していない他の内部開発セキュリティコントロールが含まれています。 たとえば、開発者が誤ってハイブリッドアプリにパスワードをコメントとして含める場合があります。 別の例には、テスト中の2要素認証の無効化が含まれます。