安全でないデータ保存
ローカルデータを保護します
「安全でないデータ保存」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
ローカルデータとは
モバイルアプリは、設定、キャッシュされたコンテンツ、トークン、ときには個人情報などのデータをデバイス上に保存します。
このローカルデータの保存方法によって、攻撃者に読み取られるかどうかが決まります。
根本的なリスク
安全でないデータ保存とは、機密データを平文で読み取れる場所に保存することです。
デバイスを紛失、盗難、またはroot化された場合、そのデータが公開されます。
一般的な保存場所
アプリはさまざまな場所にデータを保存します。
- キーと値の設定
- SQLiteなどのローカルデータベース
- 平文ファイル
- ログとキャッシュ
どの保存場所も、扱い方を誤ると情報が漏えいする可能性があります。
平文の設定
トークンを平文の設定に保存するのは危険です。
prefs.putString("auth_token", token)root化されたデバイスでは、このファイルを読み取れます。機密性の高い値を暗号化せずにここへ保存してはいけません。
KeystoreとKeychainを使う
各プラットフォームは、シークレットを安全に保存するためのハードウェアベースのストレージを提供しています。
- Android Keystore
- iOS Keychain
トークンやキーは平文ファイルではなく、ここに保存してください。
機密データを暗号化する
機密データを自分で保存しなければならない場合は、まず暗号化してください。
デバイスのセキュアハードウェアによってキーが保護される、プラットフォーム提供の暗号化ストレージを使用してください。
ログに注意する
ログは見落としやすい漏えい源です。
log("User token: " + token)ログは他のツールから読み取られたり、クラッシュレポートに保存されたりする可能性があります。シークレットをログに出力してはいけません。
クリップボードに注意する
パスワードやトークンをクリップボードにコピーすると、クリップボードの内容を読み取れる他のアプリに公開されます。
シークレットをクリップボードに置かないか、置いた場合はすぐに消去してください。
キャッシュとバックアップ
機密データは、自動バックアップや画像キャッシュ、Webキャッシュを通じて漏えいする可能性があります。
秘密ファイルをバックアップの対象から除外し、機密性の高い画面をキャッシュしないようにしてください。
保存するデータを減らす
最も安全なデータは、そもそも保存しないデータです。
機密性の高い項目は必要な期間だけ保持し、使用後に削除してください。保存するデータが少ないほど、漏えいする可能性も低くなります。
多層防御
安全なストレージ、暗号化、ログへのシークレット出力の禁止、最小限の保持期間といった保護策を組み合わせてください。
1つの層が破られても、他の層がデータを守り続けます。これが多層防御です。
クイックチェック
モバイルデバイス上では、認証トークンをどこに保存すべきですか。
まとめ
安全でない保存によって、紛失したデバイスやroot化されたデバイス上のデータが公開されます。Keystore/Keychainを使用し、機密データを暗号化し、シークレットをログやクリップボードに残さず、バックアップから除外し、保存するデータをできるだけ少なくしてください。
AI チューターと学ぶ Cyber Security Academy — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 76
- レッスン
- 303
よくある質問
「安全でないデータ保存」レッスンは無料ですか?
はい。「安全でないデータ保存」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「安全でないデータ保存」で何を学びますか?
ローカルデータを保護します ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「安全でないデータ保存」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- モバイルの脅威状況
- 安全でないデータ保存
- アプリのリバースエンジニアリング
- 安全なモバイルコーディング