[HP安全]OWASPメンテナンスのPHP安全配置速査表
投稿:https://learnku.com/php/t/26973
紹介する
このページの目的は、PHPを構成し、Webサーバを実行する人のセキュリティを確保することです.
次に、
php.ini
以下のいくつかの設定は、あなたのシステム、特に
PHP 7.2以降も実行する必要があります.PHP 7.0とPHP 7.1のバージョンを実行している場合は、以下のいくつかの場所でわずかに異なる値を使用します(インラインのコメントを参照).最後に、PHPドキュメントを参照して、
既存の
PHPエラー処理
注意:生産環境で
PHP共通設定
PHPアップロードファイル処理
もしあなたのアプリケーションがファイルアップロード機能を使用していない場合、あるいはユーザーの唯一の入力アップロードの方法がドキュメント添付ファイルを含まないフォームを通じて提出されている場合、
PHP実行可能処理
以上はPHPに危険がある方法と類である.使用されないメソッドとクラスを無効にする必要があります.
PHPセッション処理
Session設定には注意すべき値がいくつかあります.session.nameを新しいものに変えるのはいい練習です.
より多くのセキュリティ上の危険性の検査
投稿:https://learnku.com/php/t/26973
詳細:https://learnku.com/laravel/c...
紹介する
このページの目的は、PHPを構成し、Webサーバを実行する人のセキュリティを確保することです.
次に、
php.ini
ファイルの正しい構成情報を見つけます.php.ini
以下のいくつかの設定は、あなたのシステム、特に
session.save_path
、session.cookie_path
(例:/var/www/mysite
)、およびsession.cookie_domain
(例:ExampleSite.com
)に適応する必要があります.PHP 7.2以降も実行する必要があります.PHP 7.0とPHP 7.1のバージョンを実行している場合は、以下のいくつかの場所でわずかに異なる値を使用します(インラインのコメントを参照).最後に、PHPドキュメントを参照して、
php.ini
プロファイルの各値を参照してください.既存の
php.ini
ファイルには、次の構成のコピーが表示されます.PHPエラー処理
expose_php = Off
error_reporting = E_ALL
display_errors = Off
display_startup_errors = Off
log_errors = On
error_log = /valid_path/PHP-logs/php_error.log
ignore_repeated_errors = Off
注意:生産環境で
display_errors
をOff
に設定する必要があります.同時に、これらのログをよく見る習慣を身につけたほうがいいです.PHP共通設定
doc_root = /path/DocumentRoot/PHP-scripts/
open_basedir = /path/DocumentRoot/PHP-scripts/
include_path = /path/PHP-pear/
extension_dir = /path/PHP-extensions/
mime_magic.magicfile = /path/PHP-magic.mime
allow_url_fopen = Off
allow_url_include = Off
variables_order = "GPCS"
allow_webdav_methods = Off
session.gc_maxlifetime = 600
allow_url_*
LFIやRFIの完全な脆弱性が発生しやすい.PHPアップロードファイル処理
file_uploads = On
upload_tmp_dir = /path/PHP-uploads/
upload_max_filesize = 2M
max_file_uploads = 2
もしあなたのアプリケーションがファイルアップロード機能を使用していない場合、あるいはユーザーの唯一の入力アップロードの方法がドキュメント添付ファイルを含まないフォームを通じて提出されている場合、
file_uploads
はOff
に設定されるべきである.PHP実行可能処理
enable_dl = Off
disable_functions = system, exec, shell_exec, passthru, phpinfo, show_source, highlight_file, popen, proc_open, fopen_with_path, dbmopen, dbase_open, putenv, move_uploaded_file, chdir, mkdir, rmdir, chmod, rename, filepro, filepro_rowcount, filepro_retrieve, posix_mkfifo
# :http://ir.php.net/features.safe-mode
disable_classes =
以上はPHPに危険がある方法と類である.使用されないメソッドとクラスを無効にする必要があります.
PHPセッション処理
Session設定には注意すべき値がいくつかあります.session.nameを新しいものに変えるのはいい練習です.
session.save_path = /path/PHP-session/
session.name = myPHPSESSID
session.auto_start = Off
session.use_trans_sid = 0
session.cookie_domain = full.qualified.domain.name
#session.cookie_path = /application/path/
session.use_strict_mode = 1
session.use_cookies = 1
session.use_only_cookies = 1
session.cookie_lifetime = 14400 # 4
session.cookie_secure = 1
session.cookie_httponly = 1
session.cookie_samesite = Strict
session.cache_expire = 30
session.sid_length = 256
session.sid_bits_per_character = 6 # PHP 7.2+
session.hash_function = 1 # PHP 7.0-7.1
session.hash_bits_per_character = 6 # PHP 7.0-7.1
より多くのセキュリティ上の危険性の検査
session.referer_check = /application/path
memory_limit = 50M
post_max_size = 20M
max_execution_time = 60
report_memleaks = On
track_errors = Off
html_errors = Off
投稿:https://learnku.com/php/t/26973
詳細:https://learnku.com/laravel/c...