サーバーまわりに関してはあんまり意見を言えるレベルではないので、以下の箇所についてご参考までに…
・導入時のセキュリティ対策
チェックポイントはこのあたりかな、というところを
・ログイン画面むき出し(URLもデフォルトのままだと誰でも知ってる)
・(tonarino210さんもおっしゃっていますが)認証失敗し放題
->施行回数制限(セキュリティプラグインでOK)
・ログインIDもURLにクエリを入れれば丸わかり
->URLにクエリを入れた際に出てくるIDの文字列偽装(プラグイン有)
・インストールディレクトリのxmlrpc.phpに特定のリクエストを送ると直接login.phpに対してID+Passを送信可
->xmlrpc.phpを無効化(セキュリティプラグインでOK。.htaccessやfunction.phpでも可)
・コメント欄でhtmlタグの許可をしているとXSS可(v4あたりでほとんど無理になったみたいですが、管理画面のコメント承認ページを閲覧した時点で発火させるXSSなどもありました)
->コメント欄htmlタグ無効化(function.phpで可)
パッと思いつくのはこのあたりでしょうか。
確かに工程多くて面倒なので、一括でできるセキュリティプラグインをいつも使います。
ただ、「これ一つですべてをまかなえる」というプラグインは無いので、大半をカバーしてくれているものと
+α入れたりする必要があったりします。
ログインまわりはやっぱりちょっと弱いので、特定のIP以外はアクセス不可、などにしておくのがいちばんですが
そうもできないケースも少なくないので、上記の対策は必要になりますね…
v4.5で二段階認証を入れるという話があったのですが、結局入らなかったみたいで、するならプラグインを使って、になるようです。
また、サニタイズやエスケープの処理はWordPressの組み込み関数の内部に組み込まれていることが多いので
重複しないように、基本組み込み関数を使うのがベターだと思います。
あと、個人的には
・ログイン画面のURLも変更
・アップロードディレクトリ(画像ファイルの)にphpファイルもアップロード可->不可に設定
・URLストリングスの上限設定もデフォルトでは無し(ブラウザ依存)なので、上限設けています
したりしています。
・パフォーマンス向上のための必須チューニング
APCとキャッシュでしょうか。(確かデフォルトではキャッシュが用意されなくなったような…)
WordPressはデフォルトでは「英語」で、それを設定されている言語へ「翻訳してから出力する」というちょっと無駄とも思える手続きを踏むので、翻訳もキャッシュしておいたほうがいいかなと思います。
また、フロントの話になりますがデフォルトではheadまわりに結構いらない記述が多々紛れ込んでブロッキングを起こしてくれるので、そのあたりも出力しないようにすると、案外効果があったりします。
あとはアクションやフィルターという概念を押さえておかないと、追加した処理が著しくパフォーマンスを下げる原因にもなりえるというところも。
※余談ですが、DBでデフォルトではインデックスが貼られていない箇所がいくつかありますが
そこへ「インデックスを追加して高速化!」みたいな記事があって、試してみたことがありましたが自分の環境では
1ミリ秒程度しか改善されませんでした…
…すみません、、長文になってしまいました。。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/05/28 05:42
2016/05/31 15:38
退会済みユーザー
2016/06/08 06:48