PHP のマニュアルには次のように書かれています。
PHP 5.1.0 以降 (日付/時刻関数が書き直されたとき)、日付/時刻関数を呼び出すたびに、タイムゾーンが有効でない場合は E_NOTICE が生成され、システム設定または TZ を使用している場合は E_WARNING メッセージが生成されます。環境変数。
デフォルトのシステム タイム ゾーンを使用すると、どのようなセキュリティ上の懸念が生じますか?
なぜPHPはそれを安全でないと見なしますか?
PHP のマニュアルには次のように書かれています。
PHP 5.1.0 以降 (日付/時刻関数が書き直されたとき)、日付/時刻関数を呼び出すたびに、タイムゾーンが有効でない場合は E_NOTICE が生成され、システム設定または TZ を使用している場合は E_WARNING メッセージが生成されます。環境変数。
デフォルトのシステム タイム ゾーンを使用すると、どのようなセキュリティ上の懸念が生じますか?
なぜPHPはそれを安全でないと見なしますか?
ローカル システムのタイムゾーンを使用することで (少なくとも直接的には) セキュリティの問題が心配されることは少なくなり、システムのタイムゾーンを確実に決定する問題が増えると思います。あなたが見ているメッセージをあなたに与えた解決策は、明示的である方が良いという確立されたコーディング規約に基づいています。
私の理解では、PHP 開発者は、過去に信頼できるタイムゾーン検出を妨げていたいくつかの基盤となるオペレーティング システムでバグに遭遇しました。解決策 (いくつか試した後) は、PHP が動作するタイムゾーンを明示的に指定することでした。
安全ではないという限りでは、タイムゾーンの誤りがアプリケーションのセキュリティ問題を直接的ではなくても引き起こす可能性があるシナリオはたくさんあると思います。マルチデータセンター環境でのトランザクションのタイムスタンプからセッション管理まですべて。