Skip to content

Latest commit

 

History

History
33 lines (24 loc) · 3.56 KB

0x09-V4-Authentication_and_Session_Management_Requirements.md

File metadata and controls

33 lines (24 loc) · 3.56 KB

V4: 認証とセッション管理に関する要件

本章の目的

大抵の場合、リモートサービスにユーザがログインすることは、一般的なモバイルアプリケーションアーキテクチャにとって必要不可欠です。たとえロジックのほとんどがエンドポイントで実行されるとしても、MASVSはユーザアカウントとセッションの管理方法に関するいくつかの基本的な要件を定義します。

セキュリティ検証要件

# 説明 L1 L2
4.1 ユーザがリモートサービスにアクセスするようなアプリの場合、ユーザ名/パスワード認証などの何かしらの認証がリモートエンドポイントで実施されている
4.2 ステートフルなセッション管理が用いられている場合、ユーザの資格情報を送信することなくクライアントリクエストを認証するために、リモートエンドポイントがランダムに生成されたセッション識別子を使用している
4.3 ステートレスなトークンベースの認証が用いられている場合、セキュアなアルゴリズムによって署名されたトークンをサーバが発行している
4.4 ユーザがログアウトしたときに、リモートエンドポイントが既存のセッションを破棄している
4.5 パスワードポリシーが存在しており、リモートエンドポイントで実施されている
4.6 過剰な回数の資格情報の送信に対して保護するメカニズムをリモートエンドポイントが実装している
4.7 生体認証がある場合、それがイベントバウンド(つまり、単に"true"や"false"を返すだけのAPIの使用)ではなく、キーチェーン/キーストアのアンロックに基づいている
4.8 事前に定義された非アクティブの期間が経過すると、セッションがリモートエンドポイントで無効になり、アクセストークンの有効期限が切れる
4.9 リモートエンドポイントで認証における第二の要素が存在し、2FA(二要素認証)が一貫して施行されている
4.10 機微なトランザクションにはステップアップ認証が必要である
4.11 アプリが全てのログイン動作をユーザに通知している。ユーザは、アカウントへのアクセスに使用するデバイスの一覧を表示したり、特定のデバイスをブロックしたりすることができる

参考文献

OWASPモバイルセキュリティテストガイドには、本セクションに記載されている要件を検証するための詳細な手順が記載されています。

詳細は以下を参照してください。