1 背景分析
インターネット時代が到来したとき、人々はかつてすべてがデジタル化されつつあることを嘆いていました。今日、あらゆるものがモバイル化されています。通りや路地では、人々が頭を下げて画面をスワイプするのに忙しかった。外国の権威ある機関のデータによると、中国のスマートフォンが携帯電話の総売上高の96%を占めており、従来のフィーチャーフォンは基本的に歴史の舞台から消え去った。米国の市場調査会社である eMarketer の最近のレポートによると、権威ある市場調査機関である Gartner のデータによると、中国ではスマートフォンが携帯電話販売の 96% を占め、米国でも 96% を占めています。つまり、モバイルインターネットのハードウェアレベルでは、中国と米国はすでに同レベルにあるということだ。
スマートフォンの普及により、モバイル アプリの急速な開発が促進されています。現在、モバイル アプリは、コミュニケーションやチャット、テイクアウトの予約、チケットの予約、旅行の予約、ショッピング、ニュースの閲覧などから銀行への投資に至るまで多岐にわたります。人の日常活動は基本的に携帯電話に頼ることで完了できます。アプリの人気の高さから、多くのソフトウェア開発者がこの市場の恩恵を享受し、利益を原動力にさまざまなアプリが次々と登場し、アプリ市場も玉石混交となっています。インスタントアプリは安全性が十分に保証されていないため、近年アプリを介した個人情報漏洩事件が非常に多発しています。
ビッグデータ分析により、携帯電話でよく使用されるアプリの統計表は次のとおりです。
グラフから確認することは難しくありません。統計によると、ほぼすべての携帯電話には、チャット、ビデオ エンターテイメント、ショッピング、その他の関連アプリが搭載されていますが、これらのアプリは携帯電話でどのように動作するのでしょうか?知らず知らずのうちに携帯電話から得られる情報とは何でしょうか?
2 モバイル アプリの一般的なセキュリティ問題
テクノロジーの発展により、携帯電話の機能はそれをはるかに超え、ビッグデータの時代が到来し、スマート ホームの時代が到来モノのインターネットも続いています。ここでは分析に Android アプリまたは apk を使用します。apk をダウンロードし、そのサフィックスを tar に変更して、apk 関連ファイルを表示します
## AndroidManifest.xml Android アプリケーションのエントリ ファイルで、主にインストール パッケージで公開されるコンポーネント、各クラスの実装、およびソフトウェアの関連する読み取り権限が記述されます。ここで入手できる AndroidManifest.xml ファイルの詳細は次のとおりです:
AndroidManifest.xml ファイルの詳細な分析を通じて、現在のアプリを知ることができます。取得した携帯電話の権限は次のとおりです。
主な権限には、電話の状態の読み取りの許可、通話の許可、連絡先の読み取りの許可、および許可が含まれます。システムのグローバル設定を変更し、Bluetooth 接続の作成、測位の許可、起動時の自動起動の許可、およびその他の関連権限を変更します。ユーザーがアプリケーションを使用するときにデフォルトのインストール モードを選択すると、個人情報が漏洩する可能性があります。
Android 開発に詳しい人なら、Android アプリケーションには、Activity、Service、ContentProvider、BroadcastReceiver という 4 つの主要なコンポーネントがあることを知っています。
まず、アクティビティ コンポーネントについて説明しましょう。アクティビティ コンポーネント間の通信は、ユーザー操作のためのビジュアル インターフェイスを表示するインテントを介して行われます。Android アプリケーションは、アクティビティ コンポーネントを通じて実行および開始する必要があります。アプリケーションは互いに独立していますが、アプリ内のアクティビティ コンポーネントを通じて通信、通話、アクセスなどを行うことができます。アプリのアクティビティ コンポーネントは次のとおりです:
APK のパス分析により、そのエントリ アクティビティ コンポーネントが com.meiyou.pregnancy.ui.welcome.WelcomeActivity であることがわかります。アプリは起動時に他のアクティビティ コンポーネントを呼び出します。アクティビティ コンポーネントをエクスポートできる場合は、呼び出すことができます。サードパーティのアプリによって任意に機密情報が漏洩すると、認証バイパス、悪意のあるコードの挿入、ページのハイジャックなどのリスクにさらされる可能性もあります。
BroadcastReceive を使用すると、アプリケーションは外部イベントをフィルターし、必要なイベントのみを受信して応答できます。ユーザー インターフェイスはありませんが、アクティビティまたはサービスを開始できます。受信した情報に応答し、異なるコンポーネントまたは異なるアプリケーション間の通信を可能にします。アプリを初めて起動すると、システムは自動的に NoticeProxyBroadcastReceiver をインスタンス化し、システムに登録します。動的ブロードキャストを登録する場合はログアウト操作が必要です。ログアウト操作を行わないとメモリ リークが発生する可能性があります。繰り返しの登録やログアウトは許可されません。
Service サービスはバックグラウンド サービスです。Service サービスを使用する場合は、AndroidManifest.xml で宣言する必要があります。このテストの apk は、AndroidManifest.xml で次のように宣言されます。
#サービスはアクティビティコンポーネントから独立しており、一部の操作をバックグラウンドで実行します。たとえば、定期的にサーバーからデータを取得する必要がある場合、この時点でサービスを使用する必要があります。
4 つの主要コンポーネントのセキュリティ脆弱性に加えて、Web インターフェイスを呼び出すときに、SQL インジェクションの脆弱性、XSS の脆弱性、オーバーライド、無許可、およびその他の関連する脆弱性など、さまざまな Web の脆弱性も表示されます。アプリのhttpリクエストデータパケットを解析し、テストの結果、ポストデータパケットに不正アクセスの脆弱性が存在することが判明し、特定のパラメータを使用することで他人のアカウント情報を無断で閲覧できるようになる。
つまり、アプリの脆弱性が現れる箇所は数多くあり、通信時にデータが暗号化されているかどうかなど、注目すべき箇所は数多くあります。データがローカルに保存されているかどうか、暗号化されているかどうか、意図的にアクティビティ コンポーネントを開始しても安全かどうかなど。
3 セキュリティに関する提案
これだけ多くのアプリがある中、一般ユーザーがアプリのセキュリティチェックを行うことは依然として不可能です。アプリは?
l まず、ダウンロードしたアプリが元のアプリケーションではなく変更およびコンパイルされるのを防ぐために、通常のチャネルを通じてアプリをダウンロードすることをお勧めします。
l 特別な要件がない場合電話をルート化することはお勧めできません;
アプリケーションをインストールするときは、必要なオープン権限に注意し、位置情報や携帯電話の連絡先の読み取りなどの不要な権限をオフにしてください。
l は携帯電話にインストールできます。適切なウイルス対策ソフトウェアを定期的にスキャンし、不要なソフトウェアやプログラム パッケージなどをクリーンアップします。
l 関連するアプリを定期的にアップグレードして、古いバージョンのバグを修正します。
以上がAPP のセキュリティ問題について簡単に説明する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。