Title: アメリカ国防総省のセキュリティ要求に準拠するための設定
この記事では、アメリカ合衆国国防総省 (DoD: Department of Defence) 用の TeamPage 設定マニュアルをご紹介します。
このマニュアルにしたがって設定を行うことで、アメリカ国防情報システム局の セキュリティ技術導入ガイド (STIGs: Secure Technical Implementation Guides) に準拠する運用が可能となります。TeamPage をより安全に運用したいとお考えのお客様は、このマニュアルをご活用ください。
なお、英語のマニュアル(原文)は添付の PDF ファイルになります。
概要
このマニュアルで解説する設定を行うには、TeamPage バージョン 6.0 以上が必要です。
国防総省での使用事例では、HTTPS 暗号化通信および Microsoft Active Directory (NTLMv2) 連携によるユーザーアカウント管理を行っています。これにより、Active Directory 上で設定されたパスワード規則が適用され、すべてのユーザーはシングル サインオンを利用できるようになります。すなわち、ユーザーは、自分のコンピューターの Windows にログインすれば、TeamPage にアクセスするだけで自動的に TeamPage へのログインできるようになります。
HTTPS 暗号化通信の設定方法は、HTTPS 設定 で解説しています。
NTLMv2 を使用した Active Directory との連携方法は、NTLMv2 拡張認証機能 で解説しています。(この記事は、通常、JESPA プラグインをご購入いただいたお客様のみ閲覧できます)
利用規約の表示
2.4 The designer will ensure the application is capable of displaying a customizable click-through banner at logon which prevents further activity on the information system unless and until the user executes a positive action to manifest agreement by clicking on a box indicating "OK." (APP3440 CAT II)
TeamPage へユーザーがアクセスした時に利用規約を表示し、ユーザーが同意するまで TeamPage を利用できないようにするには、利用規約への同意要求プラグイン のインストールが必要です。
このプラグインのインストールおよび設定方法については、リンク先の記事を参照してください。
なお、このプラグインは、NTLM 等のシングル サインオン環境でも使用できます。
パスワード保管要求
3.4 The designer will ensure the application stores account passwords in an approved encrypted format.(APP3340 CAT I)
TeamPage がシングル サインオンを使用するように設定されている場合、ユーザーのログイン用パスワードは TeamPage には保存(保管)されません。これは推奨設定です。
シングル サインオンを使わない、TeamPage の標準ログイン認証方式では、ソルト化されたパスワードハッシュがジャーナル ディレクトリの journal.db ファイルに保存されます。
保存されるパスワードは次のように記録されます。
admin:PHYyPjEwMDAwOjNjMWIyZGVjMTZkYjFmYWJmZjlkNDYwMTM0YzU2NjAwYWE
zN2IwODY2MmE5YmMxYjo3Y2Y2YmU0YmY4ZTFiZDdkMTM4MDdhZmRiMTBhYzRlZDBk
MDBkNTI1MGZiMGNhNzc=:1:
これは Base64 でエンコードされており、デコードすると次のようになります。
<v2>10000:3c1b2dec16db1fabff9d460134c56600aa37b08662a9bc1b:
7cf6be4bf8e1bd7d13807afdb10ac4ed0d00d5250fb0ca
最初にバージョン番号が記録されています。この例では「v2」です。続く「1000」は、ハッシュ アルゴリズムで使われる反復の数です。その次にパスワード ハッシュ、最後はソルトです。
技術情報
• パスワードは 192 ビットのランダム ソフトでハッシュ化されます。
• HmacSHA1 (反復数 10,000 回) による PBKDF2 ハッシュだけが保存されます。
クロスサイト スクリプティング攻撃に対する防御
4.8 The designer will ensure the application does not have cross site scripting (XSS) vulnerabilities. (APP3580 CAT I)
クロスサイト スクリプティング攻撃 や SQL インジェクション攻撃 を防ぐため、TeamPage にはすべての入力に対するカスタマイズ可能な変換機能が備わっています。
多くの場合、既定の変換は、クロスサイト スクリプティング攻撃が実行される主な方法であるフォーム、URL パラメータ、その他の入力に JavaScript を埋め込む攻撃者を防御するのに十分です。
新しい攻撃が発見された場合や追加の防御策が必要になった場合は、変換の設定 で解説している方法により対応策を工夫したりテストしたりできます。
重要なログイン情報の表示
4.14 The designer will ensure the application has a capability to notify the user of important login information. (APP3660 CAT III)
TeamPage の認証が成功してログインしたとき、下図の画面を表示して必要な情報をユーザーに通知するように設定できます。
この画面が表示されるように設定するには、サーバー セットアップ > 一般 > ログイン設定 ページの ログイン時に最近の認証履歴の確認を要求する 設定で [はい] を選択してください。
DoS 攻撃に対する防御
5.1 The designer will ensure the application provides a capability to limit the number of logon sessions per user and per application. (APP3410 CAT II)
DoS 攻撃に対する防御を設定するには、サーバーセットアップ > ネットワーク > 機能 / チューニング ページの DoS フィルタリング機能を有効にする で [はい] を選択します。
[はい] を選択すると詳細設定項目が表示され、セッションを短縮したり、ユーザーのコンピュータの IP アドレスにバインドしたりすることで、更なる保護を実現できます。
セッションの終了
5.2 The designer will ensure the application provides a capability to automatically terminate a session and log out after a system defined session idle time limit is exceeded. (APP3415 CAT II)
セッションのアイドル時間は、サーバーセットアップ > 一般 > ログイン設定 ページで管理できます。
[セッション マネージャー] の [表示] ボタンをクリックして表示される下図の セッション マネージャー 画面でセッションの一覧を確認できます。
特定のセッションを即座に終了させるには [削除] ボタンをクリックしてください。
備考…設定項目をすばやく見つけるには
TeamPage には多数の設定項目があるので、どこに何があるのか探し出すのが大変かもしれません。そんなときは、設定画面の検索ボックスをお使いください。キーワードを入力すると、該当する設定項目の候補が表示され、クリックしてその設定項目へ移動できます。