PHP セキュリティメモ

最低限の部分

・PHP.ini

今回は、さくらのレンタルサーバーで利用している。
設置場所は、ドキュメントルートで、
echo phpinfo();
Loaded Configuration File
に反映される。

php.iniのパーミッションは600

追加内容は、
display_errors = Off
expose_php = Off

session.name = “hoge”
session.use_strict_mode=On
session.cookie_httponly=On
; HTTPSの場合
session.cookie_secure=On

allow_url_fopen = Off
file_uploads = Off

; post_max_sizeより大きくする
memory_limit = 20M
; upload_max_filesizeより大きくする
post_max_size = 20M
upload_max_filesize = 20M

・通常ファイル、ディレクトリのパーミッション

ファイル
604(もしくは644)

ディレクトリ
705(もしくは755)

・プログラム

リクエストにはワンタイムトークンを付加。
入力された値はサニタイジング。