O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
セキュアなWordPressの構築ハンズオン
1
2018.04.07 (Sat)
OWASP Nagoya
• 西村 将利(にしむら まさとし)
• facebook: https://www.facebook.com/nishimura.masatoshi.3
• twitter : @BankKeikei55
– WordPress
– AWS ...
3
もくじ①
章 タイトル
実装ガイド
番号
ページ
1 各種アカウント 5~6
2 Linux内ローカルディレクトリ配置 7~8
3 WordPress4.9.4インストール設定
4.11
4.17
4.18
4.2
4.9
9~37
4 w...
4
もくじ②
章 タイトル
実装ガイド
番号
ページ
5 wp-adminのアクセス制限 4.6 41~46
6 ブルートフォースアタック対策 4.7 47~57
7 セキュリティプラグイン設定
4.13
4.19
4.20
4.21
58~1...
5
1.各種アカウント
6
1.各種アカウント
WordPress4.7.1 WordPress4.9.4
WordPress
ユーザー admin owaspnagoya494
パスワード password
「強力」判定のものを使
用する
DBテーブル接頭辞 wp_...
7
2.Linux内ローカルディレクトリ配置
8
2.Linux内ローカルディレクトリ配置
Linux内部パス URL
ドキュメントルート /var/www/html http://192.168.100.100
WordPress本体
やプラグイン等
原本ファイルデ
ィレクトリ
4.7....
9
3.WordPress4.9.4インストール設定
$ pwd
/home/owaspnagoya/wpscan/
$ cd /home/owaspnagoya/downloadfile
$ sudo cp wordpress-4.9.4-ja.tar.gz /var/www/html/
10
...
11
3.WordPress4.9.4インストール設定2
$ cd /var/www/html/
$ ls -al
$ sudo tar -zxvf wordpress-4.9.4-ja.tar.gz
ダウンロード済のwordpress-4.9...
12
3.WordPress4.9.4インストール設定3
バージョン識別をしやすくするため、展開後のディレクトリ名wordpressをwordpress494に変更します
$ sudo mv /var/www/html/wordpress /v...
13
3.WordPress4.9.4インストール設定4
ディレクトリの状態、所有者、グループを確認します
$ ls -al
14
3.WordPress4.9.4インストール設定5
ディレクトリの所有者とグループをapacheに変更します
$ sudo chown -R apache:apache /var/www/html/wordpress494
15
3.WordPress4.9.4インストール設定6
Wordpress494ディレクトリの所有者とグループがapacheに変わっていることを確認します
$ ls -al
16
3.WordPress4.9.4インストール設定7
①ブラウザを開いて
http://192.168.100.100
/wordpress494
に進みます
②クリックします
17
3.WordPress4.9.4インストール設定8
① 各種アカウントを入
力します。テーブル接頭
辞をwp_ではないものに
変えてください。今回、
「owasp758_」とします
②送信をクリックします
18
3.WordPress4.9.4インストール設定9
「インストール実行」を
クリックします
19
3.WordPress4.9.4インストール設定10
①サイトタイトル、ユーザー名、パス
ワード、メールアドレスを入力します
※パスワードは判定が「強力」となる
ものを使ってください。
※パスワードを含むユーザーアカウン
トが漏洩しないよ...
20
3.WordPress4.9.4インストール設定11
ログインをクリックします
21
3.WordPress4.9.4インストール設定12
「ユーザー名」に「
owaspnagoya494」を入力し
、先ほどのパスワードを入力
しログインします
22
3.WordPress4.9.4インストール設定13
ダッシュボードにログイ
ン出来ることを確認して
ください
23
3.WordPress4.9.4インストール設定14
未使用プラグインとテーマの削除
Hello Dollyプラグインを削除します
①対象のプラグインを選択します
②対象行のチェック欄にチェックを入れます
③削除をクリックします
③の後、...
24
3.WordPress4.9.4インストール設定15
未使用プラグインとテーマの削除
未使用テーマを削除します
①外観をクリックします
②テーマをクリックします
25
3.WordPress4.9.4インストール設定16
不要プラグインと不要テーマの削除
Twenty Fifteenの上にポインタ
を移動し、①「テーマの詳細」
をクリックします
26
3.WordPress4.9.4インストール設定17
不要プラグインと不要テーマの削除
①右下の「削除」をクリックします
※削除確認のアラートが表示された場合
は「OK」をクリックします
Twenty Sixteenのテーマも同じように削...
27
3.WordPress4.9.4インストール設定18
WordPress4.9.4
WordPress
ユーザー owaspnagoya49402
パスワード
「強力」判定のものを使用す
る
インストール時の初期管理者アカウント、ユーザー...
28
3.WordPress4.9.4インストール設定19
①「ユーザー」をクリックします
②「新規追加」をクリックします
③「ユーザー名」に「owaspnagoya49402
」とメールアドレスを入力します
④「パスワードを表示」をクリックし...
29
3.WordPress4.9.4インストール設定20
①初期インストールユーザー「
owaspnagoya494」をログアウ
トします
30
3.WordPress4.9.4インストール設定21
「owaspnagoya49402」で再びログインしてください
ID:1である初期インストールユーザー( owaspnagoya494
)でログインしているため、owaspnagoya...
31
3.WordPress4.9.4インストール設定22
ユーザー ID:1 すなわちインストー
ル時に最初に作ったユーザーを削除しま
す
①「削除」をクリックします
32
3.WordPress4.9.4インストール設定23
コンテンツを引き継ぐユーザーを選択し、削除します
①「すべてのコンテンツを以下のユーザーのものにする」をチェックし
、「owaspnagoya49402」のユーザーを選択します
③「削...
33
3.WordPress4.9.4インストール設定24
認証用ユニークキー確認
$ cat /var/www/html/wordpress494/wp-config.php
コンソール画面に移動して、次のコマンドを入力します
設定ファイルw...
34
3.WordPress4.9.4インストール設定25
上にスクロールしながら、赤枠内の様に、8種類の
認証用ユニークキーが全てランダム文字列になって
いることを確認します
環境によって、8種類すべて同一文字列キーになっ
てしまっている場合...
35
以下URLにてユニークキーを作成して、wp-config.phpにコピー&ペーストします
https://api.wordpress.org/secret-key/1.1/salt/
3.WordPress4.9.4インストール設定26
...
36
3.WordPress4.9.4インストール設定27
WordPressの全体SSL化①
● CentOS、Apache、Nginxなどのバージョンを確認します
● 上記に適した openssl、mod_ssl(mod24_ssl)などの...
37
3.WordPress4.9.4インストール設定28
WordPressの全体SSL化②
● SSL証明証サーバーインストールと「.htaccess」「httpd.conf」「nginx.conf」等
の設定をします
● データーベース内...
38
4.wp-config.phpファイルの移動
4.wp-config.phpファイルの移動1
①wordpress494用のwp-config.phpをルートディレクトリ方向へ1つ移動します
$ sudo cp /var/www/html/wordpress494/wp-config.ph...
40
4.wp-config.phpファイルの移動2
wordpress494用のwp-config.phpの所有者とグループの変更します
$ sudo chown apache:apache /var/www/html/wp-config.p...
41
5.wp-adminのアクセス制限
42
5.wp-adminのアクセス制限1
$ cd /etc/httpd/conf
①apache設定httpd.confファイルのディレクトリへ移動します
②念のために、デフォルトhttpd.confファイルのバックアップをとります
ドキュ...
43
5.wp-adminのアクセス制限2
AllowOverride NoneからAllに書き換え済のhttpd.confファイルを
home/owaspnagoya/downloadfile/httpd.confよりコピーして上書きします
...
44
5.wp-adminのアクセス制限3
$ sudo systemctl restart httpd
必要に応じてパスワードを入力します
httpdの再起動
45
5.wp-adminのアクセス制限4
wp-adminの.htaccess設定
/var/www/html/wordpress494/wp-admin/ に移動します
$ cd /var/www/html/wordpress494/wp-...
46
5.wp-adminのアクセス制限5
.htaccess所有者とグループの変更します
$ sudo chown apache:apache .htaccess
ご参考。.htaccessの中身は以下の通りです。自己IPアドレスのみ許可を行...
47
6.ブルートフォースアタック対策
48
6.ブルートフォースアタック対策1
● 「6.ブルートフォースアタック対策」ではGoogle Captcha(reCAPTCHA)プラ
グインを使いますが、有効化を行わず、説明だけとなります
● 今回のハンズオン環境は、ホストオンリーアダ...
49
6.ブルートフォースアタック対策2
Google Captcha(reCAPTCHA)プラグインの設定
wordpress494のプラグインディレクトリへ移動します
$ cd /var/www/html/wordpress494/wp-c...
50
6.ブルートフォースアタック対策3
google-captcha.1.35.zipを解凍します
$ sudo unzip /var/www/html/wordpress494/wp-content/plugins/google-captc...
51
6.ブルートフォースアタック対策4
ユーザーとグループを設定します
$ sudo chown -R apache:apache /var/www/html/wordpress494/wp-content/plugins/google-ca...
52
6.ブルートフォースアタック対策5
ダッシュボードから
①「プラグイン」をクリックします
②「Google Captcha」の「有効化」
をクリックします
53
6.ブルートフォースアタック対策6
Google Captchaプラグ
インの「有効化」をクリ
ックします
ハンズオン環境は、ホス
トオンリーアダプタであ
るため、Google発行の
Site KeyとSecret Keyの
Google...
54
6.ブルートフォースアタック対策7
①Get the API Keysより、Googleにログ
インしてSite KeyとSecret Keyを発行し
ます
②「Site Key」を入力します
③「Secret Key」を入力します
④「...
55
6.ブルートフォースアタック対策8
Get the API Keysをクリック後、Googleにログイン
します
①「Label」にSite KeyとSecret Key発行に対して使
用する任意の名称を入力します
本資料は「OWASP ...
56
6.ブルートフォースアタック対策9
Registerをクリック後、Site Keyと
Secret Keyが発行されます
57
6.ブルートフォースアタック対策10
Site KeyとSecret Keyをコ
ピー&ペーストした後、「
Save Changes」をクリック
します
58
7.セキュリティプラグイン設定
59
7.セキュリティプラグイン設定1
iThemes Security (formerly Better WP Security)プラグイン
以下のコマンドにて、iThemes Securityプラグインをワードプレスに設定します
$ cd ...
60
7.セキュリティプラグイン設定2
プラグインディレクトリのユーザーとグループを設定します
$ sudo chown -R apache:apache better-wp-security
61
7.セキュリティプラグイン設定3
iThemes Security (formerly Better WP Security)プラグイン翻訳ファイル
以下のコマンドにて、iThemes Securityプラグインの翻訳ファイルをワードプレ...
62
7.セキュリティプラグイン設定4
iThemes Security (formerly Better WP Security)プラグイン翻訳ファイル
言語(翻訳)のプラグインファイルの所有者とグループを設定します
$ sudo chown...
63
7.セキュリティプラグイン設定5
iThemesSecurityを有効化しま
す
①「プラグイン」をクリックし
ます
②「iThemesSecurity」の有効
化をクリックします
64
7.セキュリティプラグイン設定6
iThemesSecurity無料版の基本的な機能➀
セキュリティチェック
DBバックアップやブルートフォース対策等、有効無効
確認
グローバル設定
IPアドレスのブラックリスト/ホワイトリスト機能、wp...
65
7.セキュリティプラグイン設定7
ファイル変更の検出 ファイル改ざんチェック機能の管理
ファイルのパーミッション パーミッション設定値チェック
ローカルのブルートフォース保護 ロックアウトや回数などログイン制限管理
ネットワーク・ブルート...
66
7.セキュリティプラグイン設定8
強力なパスワードの実施 パスワードの強力判定機能を強制
システムの微調整 リクエストやクエリのフィルタリングなど各種
WordPressのソルト
認証用キーの再発行。再発行すると接続されているセ
ッション...
67
7.セキュリティプラグイン設定9
プラグインを有効化した時点で、既に各種「推奨」設定が自動で設定されます
デフォルト設定そのままで良い部分には触れず、その他の「推奨」設定を行います
今回のハンズオンでは「高度」については取り扱いません
68
7.セキュリティプラグイン設定10
iThemesSecurityの設定を行いま
す
「設定」へ進みます
69
7.セキュリティプラグイン設定11
「Secure Site」をクリックしま
す
70
7.セキュリティプラグイン設定12
①「ネットワーク・ブルートフォー
ス保護を有効化」をクリックします
②閉じるをクリックします
71
7.セキュリティプラグイン設定13
iThemesSecurityのネットワーク・
ブルートフォース保護では、
ithems.comからAPIキーの発行をし
てもらうことが必要となります
ホストオンリーアダプタであるため
、今回は左記の様...
72
7.セキュリティプラグイン設定14
インターネットから隔離されていない環境であ
れば、iThemesSecurityのネットワーク・ブル
ートフォース保護で、APIキーの発行作業も行
われます
左記の様な画面になります
73
7.セキュリティプラグイン設定15
ithemes.comでAPIキーを取得していない場合、
iThemesSecurityの設定ページのトップで以下のようなAPIキー取得の案内が表示されます
74
7.セキュリティプラグイン設定17
「グローバル設定」「構成の
設定」に進みます
75
7.セキュリティプラグイン設定18
グローバル設定
「ロックアウトのホワイトリ
スト」に自己IP に
「192.168.100.1」 を入力し
ます
①「ホワイトリストに現在の自
分のIPアドレスを追加」をクリ
ックします
②「設定を保存...
76
7.セキュリティプラグイン設定19
Notification Center (通知管理)
「iThemesSecurity」の
「トップページ」で
「Notification Center」の「構
成の設定」に進みます
77
7.セキュリティプラグイン設定20
Notification Center (通知管理)
セキュリティダイジェストメールを送信す
るユーザーを選択します
①ALL 管理者 users のチェックを確認し
ます
②の部分について、権限グルー...
78
7.セキュリティプラグイン設定21
Notification Center (通知管理)
圧縮されたSQLファイルバックア
ップの送り先メールアドレスを設
定します
①「Recipient」にメールアドレス
を入力します
②「設定を保存」...
79
7.セキュリティプラグイン設定22
404の検出
「iThemesSecurity」のトップページで
「Notification Center」の「404の検出」の
「有効」をクリックします
80
7.セキュリティプラグイン設定23
禁止ユーザー
「iThemesSecurity」の「トップページ」
で「禁止ユーザー」の「構成の設定」をク
リックします
81
7.セキュリティプラグイン設定24
禁止ユーザー
「禁止ユーザー」機能、無効化を推奨します
※GooglebotやBingbotのIPアドレスが禁止
リストに勝手に登録されてしまうため
「禁止ユーザー」機能、有効化を行うと、グ
ーグルサー...
82
7.セキュリティプラグイン設定25
データベースのバックアップ
「iThemesSecurity」の「トップページ」で「デ
ータベースのバックアップ」で「構成の設定」を
クリックします
83
7.セキュリティプラグイン設定26
データベースのバックアップ
バックアップの間隔は、記事投稿の頻度を
基準にして、バックアップ間隔の日数を判
断することを推奨します
84
7.セキュリティプラグイン設定27
ファイル変更の検出
「iThemesSecurity」の「トップページ」
で「ファイル変更の検出」の「詳細を見
る」をクリックします
85
7.セキュリティプラグイン設定28
ファイル変更の検出 (改ざん通知)
「有効」をクリックします
7.セキュリティプラグイン設定29
ファイル変更の検出
①「分割ファイルのスキャンをチェックします
。」にチェックします
②設定を保存します
全部まとめて1回でスキャンを行わず、パーツ別
に分割して行います。サーバー負荷を減らしま
す
ファイル...
87
7.セキュリティプラグイン設定30
パーミッション確認
「iThemesSecurity」の「トップページ」
「ファイルのパーミッション」で
「詳細を表示」をクリックします
88
7.セキュリティプラグイン設定31
パーミッション確認
「ファイルのパーミッション詳細を読み
込む」をクリックします
89
7.セキュリティプラグイン設定32
パーミッション確認
パーミッションの確認画面です
「ファイルのパーミッション詳細を再読み
込み」をクリック。ひと通り設定後に設定
値が正しいかチェックします
90
7.セキュリティプラグイン設定33
パーミッション確認
各種パーミッションは、左記「実装ガイドライン 4.13
Check file permissions」のDesiredをベストと
考えてください
テーマやプラグインなどのダッシュボー...
91
7.セキュリティプラグイン設定35
ローカルのブルートフォース保護
「iThemesSecurity」の「トップページ」
です
「ローカルのブルートフォース保護」で
「構成の設定」をクリックします
92
7.セキュリティプラグイン設定36
ローカルのブルートフォース保護
ユーザー名「admin」
のログイン試行禁止
設定します
①をチェックします
②「設定を保存」を
クリックします
93
7.セキュリティプラグイン設定37
ネットワークのブルートフォース保護
ローカルのブルートフォース保護との違いは
、iThemesSecurityが悪意のログイン試行IPア
ドレスを管理、さらにログイン試行パターン
に対する各種フィルタリ...
94
7.セキュリティプラグイン設定38
SSL
サイトのSSL化を行う際、SSL証明書のインストール後、
apacheの.htaccesによるリダイレクト設定をプラグインで設定出来ます
Nginxの場合、nginx.confやincludeデ...
95
7.セキュリティプラグイン設定39
システムの微調整
「iThemesSecurity」の「トップページ」
です
「システムの微調整」で
➀「有効」をクリックします
②「詳細を見る」をクリックします
96
7.セキュリティプラグイン設定40
システムの微調整
以下の項目をチェックします
● システムファイルの保護
● ディレクトリの参照を無効
● リクエストメソッドのフィルタ
● URL内の不審なクエリ文字列をフィ
ルタリング
97
7.セキュリティプラグイン設定41
システムの微調整
以下の項目をチェックします
● ファイルの書き込み権限を削除
wp-config.phpや .htaccess のパーミッショ
ンを0444にします
最後に「設定を保存」をクリックします
98
7.セキュリティプラグイン設定42
システムの微調整
「ファイルのパーミッション」の「詳細を
表示」にて確認します
パーミッションのチェックがすべてが有効
化状態(オールグリーン)になっている事
を確認します
99
7.セキュリティプラグイン設定43
WordPress のソルト(暗号化する際に使用されるデータ)
レンタル共有サーバー等環境によって異なりますが、wp-config.php内の認証
向けシークレットキーの再設定が出来ます
ランダム文字列...
100
7.セキュリティプラグイン設定44
WordPress の微調整
「iThemesSecurity」の「トップペー
ジ」「WordPressの微調整」で「構
成の設定」をクリックします
101
7.セキュリティプラグイン設定45
WordPress の微調整
以下の項目にチェックします
● ファイルエディタを無効にする
● ユニークなニックネームの選択を
ユーザーに強制
● 追加ユーザーのアーカイブを無効
● タブナビングから...
102
7.セキュリティプラグイン設定46
NinjaFirewall (WP Edition)プラグイン
ホストオンリーアダプタを使っているため、ルールファイルの取得更新が出来ません
そのため、NinjaFirewall(WP Edition...
103
8.BackWPupプラグイン設定
104
8.BackWPupプラグイン設定1
以下のコマンドにて、BackWpUpプラグインをワードプレスに設定、ユーザーとグループをApacheに変更
します
$ cd /var/www/html/wordpress494/wp-conten...
105
BackWpUpプラグイン翻訳ファイル
以下のコマンドにて、BackWpUpプラグインの翻訳ファイルをワードプレスに設定します
※Virtualboxのホストオンリーアダプタ―特有の設定です。NAT相当のネットワークアダプタが
使える環...
106
BackWpUpプラグインの設定
8.BackWPupプラグイン設定3
デフォルト設定を使用し、ジョブを作成し、WordPressのCronでスケジュール実行します
今回のハンズオン環境を使用して、ローカルにファイルバックアップを行います
107
8.BackWPupプラグイン設定4
①「プラグイン」をクリックします
②「BackWPup」の「有効化」をクリッ
クします
108
8.BackWPupプラグイン設定5
BackWpUp ジョブを作る
①「BackWpUp」をクリックします
②「新規ジョブを追加」をクリックしま
す
109
8.BackWPupプラグイン設定6
BackWpUp ジョブを作る
ジョブの名前を設定します
以下の項目にチェックします
・ファイルのバックアップ
・インストール済みプラグイン一覧
※「データベースのバックアップ」
は、iThemes...
110
8.BackWPupプラグイン設定7
BackWpUp ジョブを作る
「フォルダーへのバックアップ」に
チェックします
「ログ送信先のメールアドレス」に
メールアドレスを設定します
「設定を変更」をクリックします
111
8.BackWPupプラグイン設定8
BackWpUp スケジュールを作る
①「スケジュール」をクリックします
②「ジョブの開始方法」で「WordPressのCron」を
選択します
③「スケジューラ―」にバックアップを実施する日
時を...
112
WPScanを再度実行してみましょう
実装ガイドラインの中で基本的な部分を中心に実装を終えました
今回の実装以外にも様々なWordPressのセキュリティ対策があります
謝辞
113
本資料の作成に当たり多大なる支援をしてくださった方々に
感謝の意を表します。
(順不同)
・井上 茂
・村井 剛
・西村 将利
・谷口 貴之
・丹羽 雪晴
・All OWASP Nagoya Staff
・坂梨 功典
・加藤 人生...
Próximos SlideShares
Carregando em…5
×

OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)

2.159 visualizações

Publicada em

OWASP Nagoya Chapter ミーティング 第4回 / ハンズオン資料
~WordPressの脆弱性スキャンを行い、セキュアなWordPressを構築しよう!~

OWASPが提供する「OWASP Wordpress Security Implementation Guideline(OWASP WordPress セキュリティ実装ガイドライン)」を参考にしてWordPressのセキュリティ対策について説明し、実際に実装してみます。

  • Visit this site: tinyurl.com/sexinarea and find sex in your area for one night)) You can find me on this site too)
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

OWASP WordPressセキュリティ実装ガイドライン (セキュアなWordPressの構築ハンズオン手順書)

  1. 1. セキュアなWordPressの構築ハンズオン 1 2018.04.07 (Sat) OWASP Nagoya
  2. 2. • 西村 将利(にしむら まさとし) • facebook: https://www.facebook.com/nishimura.masatoshi.3 • twitter : @BankKeikei55 – WordPress – AWS , Azure – kintone – OWASP Nagoya 2 自己紹介
  3. 3. 3 もくじ① 章 タイトル 実装ガイド 番号 ページ 1 各種アカウント 5~6 2 Linux内ローカルディレクトリ配置 7~8 3 WordPress4.9.4インストール設定 4.11 4.17 4.18 4.2 4.9 9~37 4 wp-config.phpファイルの移動 4.16 38~40
  4. 4. 4 もくじ② 章 タイトル 実装ガイド 番号 ページ 5 wp-adminのアクセス制限 4.6 41~46 6 ブルートフォースアタック対策 4.7 47~57 7 セキュリティプラグイン設定 4.13 4.19 4.20 4.21 58~102 8 BackWpUpプラグイン設定 4.4 103~111
  5. 5. 5 1.各種アカウント
  6. 6. 6 1.各種アカウント WordPress4.7.1 WordPress4.9.4 WordPress ユーザー admin owaspnagoya494 パスワード password 「強力」判定のものを使 用する DBテーブル接頭辞 wp_ owasp758_ MariaDB (MySQL) DB名 wordpress471 wordpress DBユーザー名 owaspnagoya owaspnagoya DBパスワード owasp758 owasp758 Linux CentOS7 ホスト 192.168.100.100 ユーザー名 owaspnagoya パスワード owasp758 ハンズオン向けの設定値です。実際の運用では、鍵認証 ・2要素認証・アカウント漏洩対策を行ってください
  7. 7. 7 2.Linux内ローカルディレクトリ配置
  8. 8. 8 2.Linux内ローカルディレクトリ配置 Linux内部パス URL ドキュメントルート /var/www/html http://192.168.100.100 WordPress本体 やプラグイン等 原本ファイルデ ィレクトリ 4.7.1 /home/owaspnagoya/downloadfile471 4.9.4 /home/owaspnagoya/downloadfile WordPress4.7.1 /var/www/html/wordpress471 http://192.168.100.100/wordpress471 WordPress4.9.4 /var/www/html/wordpress494 http://192.168.100.100/wordpress494 ローカルの隔離環境で実施しているため、ダウンロードOVAの中に各種ファイルを準備しています
  9. 9. 9 3.WordPress4.9.4インストール設定
  10. 10. $ pwd /home/owaspnagoya/wpscan/ $ cd /home/owaspnagoya/downloadfile $ sudo cp wordpress-4.9.4-ja.tar.gz /var/www/html/ 10 3.WordPress4.9.4インストール設定1 TeraTerm(Windows)やターミナル(Mac)で以下のコマンドを実行し、tar.gzを移動します ダウンロード済のwordpress-4.9.4-ja.tar.gzを利用 パスワード owasp758 を半角英数小文字で入力します ※パスワードは入力しても表示されません
  11. 11. 11 3.WordPress4.9.4インストール設定2 $ cd /var/www/html/ $ ls -al $ sudo tar -zxvf wordpress-4.9.4-ja.tar.gz ダウンロード済のwordpress-4.9.4-ja.tar.gzを利用 1. デイレクトリを移動します 2. コピーされたwordpressパッケージがある事を確認します 3. wordpressパッケージ展開します
  12. 12. 12 3.WordPress4.9.4インストール設定3 バージョン識別をしやすくするため、展開後のディレクトリ名wordpressをwordpress494に変更します $ sudo mv /var/www/html/wordpress /var/www/html/wordpress494 tar.gzのwordPress4.9.4パッケージを削除します $ sudo rm /var/www/html/wordpress-4.9.4-ja.tar.gz
  13. 13. 13 3.WordPress4.9.4インストール設定4 ディレクトリの状態、所有者、グループを確認します $ ls -al
  14. 14. 14 3.WordPress4.9.4インストール設定5 ディレクトリの所有者とグループをapacheに変更します $ sudo chown -R apache:apache /var/www/html/wordpress494
  15. 15. 15 3.WordPress4.9.4インストール設定6 Wordpress494ディレクトリの所有者とグループがapacheに変わっていることを確認します $ ls -al
  16. 16. 16 3.WordPress4.9.4インストール設定7 ①ブラウザを開いて http://192.168.100.100 /wordpress494 に進みます ②クリックします
  17. 17. 17 3.WordPress4.9.4インストール設定8 ① 各種アカウントを入 力します。テーブル接頭 辞をwp_ではないものに 変えてください。今回、 「owasp758_」とします ②送信をクリックします
  18. 18. 18 3.WordPress4.9.4インストール設定9 「インストール実行」を クリックします
  19. 19. 19 3.WordPress4.9.4インストール設定10 ①サイトタイトル、ユーザー名、パス ワード、メールアドレスを入力します ※パスワードは判定が「強力」となる ものを使ってください。 ※パスワードを含むユーザーアカウン トが漏洩しないように物理面の管理に も配慮が必要となります ②クリックします
  20. 20. 20 3.WordPress4.9.4インストール設定11 ログインをクリックします
  21. 21. 21 3.WordPress4.9.4インストール設定12 「ユーザー名」に「 owaspnagoya494」を入力し 、先ほどのパスワードを入力 しログインします
  22. 22. 22 3.WordPress4.9.4インストール設定13 ダッシュボードにログイ ン出来ることを確認して ください
  23. 23. 23 3.WordPress4.9.4インストール設定14 未使用プラグインとテーマの削除 Hello Dollyプラグインを削除します ①対象のプラグインを選択します ②対象行のチェック欄にチェックを入れます ③削除をクリックします ③の後、削除確認のアラートが表示されたら 「OK」をクリックします
  24. 24. 24 3.WordPress4.9.4インストール設定15 未使用プラグインとテーマの削除 未使用テーマを削除します ①外観をクリックします ②テーマをクリックします
  25. 25. 25 3.WordPress4.9.4インストール設定16 不要プラグインと不要テーマの削除 Twenty Fifteenの上にポインタ を移動し、①「テーマの詳細」 をクリックします
  26. 26. 26 3.WordPress4.9.4インストール設定17 不要プラグインと不要テーマの削除 ①右下の「削除」をクリックします ※削除確認のアラートが表示された場合 は「OK」をクリックします Twenty Sixteenのテーマも同じように削除 します
  27. 27. 27 3.WordPress4.9.4インストール設定18 WordPress4.9.4 WordPress ユーザー owaspnagoya49402 パスワード 「強力」判定のものを使用す る インストール時の初期管理者アカウント、ユーザーID:1 を削除 以下のWordPressユーザーを管理者アカウントで追加、その後、インストール時の初期アカウン ト(ユーザーID:1)を削除します。adminなどブルートフォースアタックで突破されやすいユー ザー名も削除する必要があります 「ダッシュボード」⇒「ユーザー」⇒「新規追加」に進みます
  28. 28. 28 3.WordPress4.9.4インストール設定19 ①「ユーザー」をクリックします ②「新規追加」をクリックします ③「ユーザー名」に「owaspnagoya49402 」とメールアドレスを入力します ④「パスワードを表示」をクリックします 強力判定のパスワードを使う ⑤「管理者」を選択します ⑥「新規ユーザーを追加」をクリックします
  29. 29. 29 3.WordPress4.9.4インストール設定20 ①初期インストールユーザー「 owaspnagoya494」をログアウ トします
  30. 30. 30 3.WordPress4.9.4インストール設定21 「owaspnagoya49402」で再びログインしてください ID:1である初期インストールユーザー( owaspnagoya494 )でログインしているため、owaspnagoya494ユーザーを削 除できません。 owaspnagoya49402にログインをやり直し、 owaspnagoya494ユーザーを削除する必要があります。
  31. 31. 31 3.WordPress4.9.4インストール設定22 ユーザー ID:1 すなわちインストー ル時に最初に作ったユーザーを削除しま す ①「削除」をクリックします
  32. 32. 32 3.WordPress4.9.4インストール設定23 コンテンツを引き継ぐユーザーを選択し、削除します ①「すべてのコンテンツを以下のユーザーのものにする」をチェックし 、「owaspnagoya49402」のユーザーを選択します ③「削除を実行」をクリックします
  33. 33. 33 3.WordPress4.9.4インストール設定24 認証用ユニークキー確認 $ cat /var/www/html/wordpress494/wp-config.php コンソール画面に移動して、次のコマンドを入力します 設定ファイルwp-config.phpに認証用ユニークキーが設定されているかを確認します
  34. 34. 34 3.WordPress4.9.4インストール設定25 上にスクロールしながら、赤枠内の様に、8種類の 認証用ユニークキーが全てランダム文字列になって いることを確認します 環境によって、8種類すべて同一文字列キーになっ てしまっている場合などがあります
  35. 35. 35 以下URLにてユニークキーを作成して、wp-config.phpにコピー&ペーストします https://api.wordpress.org/secret-key/1.1/salt/ 3.WordPress4.9.4インストール設定26 認証用ユニークキーを作成する場合
  36. 36. 36 3.WordPress4.9.4インストール設定27 WordPressの全体SSL化① ● CentOS、Apache、Nginxなどのバージョンを確認します ● 上記に適した openssl、mod_ssl(mod24_ssl)などのインストールを します ● ファイヤーウォールのhttps(ポート443)設定をします ※ファイル、php、DB等でキャッシュを使っている場合、キャッシュ削除/停 止後の作業を推奨します 今回のハンズオンでは、Virtualboxのホストオンリーネットワークをしよ うしているため、mod24_sslのインストールができません。 今回は、SSL化の作業は行いません。
  37. 37. 37 3.WordPress4.9.4インストール設定28 WordPressの全体SSL化② ● SSL証明証サーバーインストールと「.htaccess」「httpd.conf」「nginx.conf」等 の設定をします ● データーベース内の 「http://独自ドメイン」 を 「https://独自ドメイン」に置き換 えを行います ● ワードプレスファイル内の「http://独自ドメイン」 を 「https://独自ドメイン」に 置き換えを行います(キャッシュなどに注意してください) ● mixed contentのチェックと修正します(Mixed Content Checker製品版、 python,PhantomJS,npmを使う方法などいろいろあります)
  38. 38. 38 4.wp-config.phpファイルの移動
  39. 39. 4.wp-config.phpファイルの移動1 ①wordpress494用のwp-config.phpをルートディレクトリ方向へ1つ移動します $ sudo cp /var/www/html/wordpress494/wp-config.php /var/www/html/wp-config.php ②元の場所にあるwp-config.phpを削除します $ sudo rm /var/www/html/wordpress494/wp-config.php 39
  40. 40. 40 4.wp-config.phpファイルの移動2 wordpress494用のwp-config.phpの所有者とグループの変更します $ sudo chown apache:apache /var/www/html/wp-config.php
  41. 41. 41 5.wp-adminのアクセス制限
  42. 42. 42 5.wp-adminのアクセス制限1 $ cd /etc/httpd/conf ①apache設定httpd.confファイルのディレクトリへ移動します ②念のために、デフォルトhttpd.confファイルのバックアップをとります ドキュメントルートの .htaccess を有効化 $ sudo cp -p /etc/httpd/conf/httpd.conf ./httpd.conf-back
  43. 43. 43 5.wp-adminのアクセス制限2 AllowOverride NoneからAllに書き換え済のhttpd.confファイルを home/owaspnagoya/downloadfile/httpd.confよりコピーして上書きします ドキュメントルートの .htaccess を有効化 $ sudo cp /home/owaspnagoya/downloadfile/httpd.conf ./
  44. 44. 44 5.wp-adminのアクセス制限3 $ sudo systemctl restart httpd 必要に応じてパスワードを入力します httpdの再起動
  45. 45. 45 5.wp-adminのアクセス制限4 wp-adminの.htaccess設定 /var/www/html/wordpress494/wp-admin/ に移動します $ cd /var/www/html/wordpress494/wp-admin/ .htaccessファイルをコピーします $ sudo cp /home/owaspnagoya/downloadfile/.htaccess ./
  46. 46. 46 5.wp-adminのアクセス制限5 .htaccess所有者とグループの変更します $ sudo chown apache:apache .htaccess ご参考。.htaccessの中身は以下の通りです。自己IPアドレスのみ許可を行う設定となります
  47. 47. 47 6.ブルートフォースアタック対策
  48. 48. 48 6.ブルートフォースアタック対策1 ● 「6.ブルートフォースアタック対策」ではGoogle Captcha(reCAPTCHA)プラ グインを使いますが、有効化を行わず、説明だけとなります ● 今回のハンズオン環境は、ホストオンリーアダプタによるローカル隔離環境です ● ダッシュボードのログアウト後の再ログイン時に外部(グーグル)との接続/認証 が出来ない為、ログイン不可となってしまいます
  49. 49. 49 6.ブルートフォースアタック対策2 Google Captcha(reCAPTCHA)プラグインの設定 wordpress494のプラグインディレクトリへ移動します $ cd /var/www/html/wordpress494/wp-content/plugins ②Google Captchaプラグインを/home/downloadfile/google-captcha.1.35.zipよりコピーします $ sudo cp /home/owaspnagoya/downloadfile/google-captcha.1.35.zip ./
  50. 50. 50 6.ブルートフォースアタック対策3 google-captcha.1.35.zipを解凍します $ sudo unzip /var/www/html/wordpress494/wp-content/plugins/google-captcha.1.35.zip ②Google Captchaプラグインのzipを削除します $ sudo rm /var/www/html/wordpress494/wp-content/plugins/google-captcha.1.35.zip
  51. 51. 51 6.ブルートフォースアタック対策4 ユーザーとグループを設定します $ sudo chown -R apache:apache /var/www/html/wordpress494/wp-content/plugins/google-captcha
  52. 52. 52 6.ブルートフォースアタック対策5 ダッシュボードから ①「プラグイン」をクリックします ②「Google Captcha」の「有効化」 をクリックします
  53. 53. 53 6.ブルートフォースアタック対策6 Google Captchaプラグ インの「有効化」をクリ ックします ハンズオン環境は、ホス トオンリーアダプタであ るため、Google発行の Site KeyとSecret Keyの Googleとの認証が出来ま せん Google Captchaプラグ インの設定は参考として 説明しています
  54. 54. 54 6.ブルートフォースアタック対策7 ①Get the API Keysより、Googleにログ インしてSite KeyとSecret Keyを発行し ます ②「Site Key」を入力します ③「Secret Key」を入力します ④「Save Changes」をクリックします ※各種キー取得画面は次のページにて参 照ください
  55. 55. 55 6.ブルートフォースアタック対策8 Get the API Keysをクリック後、Googleにログイン します ①「Label」にSite KeyとSecret Key発行に対して使 用する任意の名称を入力します 本資料は「OWASP Nagoya Wordpress494」とし ています ②「reCAPTCHA V2」にチェックします ③「192.168.100.100」を入力します ※「192.168.100.100/wordpress494」は入力受 理されない様になっています ④「Accept the reCAPTCHA Terms of Service」を チェックします ⑤「Register」をクリックします
  56. 56. 56 6.ブルートフォースアタック対策9 Registerをクリック後、Site Keyと Secret Keyが発行されます
  57. 57. 57 6.ブルートフォースアタック対策10 Site KeyとSecret Keyをコ ピー&ペーストした後、「 Save Changes」をクリック します
  58. 58. 58 7.セキュリティプラグイン設定
  59. 59. 59 7.セキュリティプラグイン設定1 iThemes Security (formerly Better WP Security)プラグイン 以下のコマンドにて、iThemes Securityプラグインをワードプレスに設定します $ cd /var/www/html/wordpress494/wp-content/plugins $ sudo cp /home/owaspnagoya/downloadfile/better-wp-security.6.9.2.zip ./ 対象ファイルの展開と削除します $ sudo unzip better-wp-security.6.9.2.zip $ sudo rm better-wp-security.6.9.2.zip
  60. 60. 60 7.セキュリティプラグイン設定2 プラグインディレクトリのユーザーとグループを設定します $ sudo chown -R apache:apache better-wp-security
  61. 61. 61 7.セキュリティプラグイン設定3 iThemes Security (formerly Better WP Security)プラグイン翻訳ファイル 以下のコマンドにて、iThemes Securityプラグインの翻訳ファイルをワードプレスに設定 ※Virtualboxのホストオンリーアダプタ―特有の設定です。NAT相当のネットワークアダプタが 使える環境では、プラグインの有効化と同時に自動的に日本語化されています $ cd /var/www/html/wordpress494/wp-content/languages/plugins $ sudo cp /home/owaspnagoya/downloadfile/better-wp-security-ja.mo ./ $ sudo cp /home/owaspnagoya/downloadfile/better-wp-security-ja.po ./
  62. 62. 62 7.セキュリティプラグイン設定4 iThemes Security (formerly Better WP Security)プラグイン翻訳ファイル 言語(翻訳)のプラグインファイルの所有者とグループを設定します $ sudo chown apache:apache better-wp-security-ja.mo $ sudo chown apache:apache better-wp-security-ja.po
  63. 63. 63 7.セキュリティプラグイン設定5 iThemesSecurityを有効化しま す ①「プラグイン」をクリックし ます ②「iThemesSecurity」の有効 化をクリックします
  64. 64. 64 7.セキュリティプラグイン設定6 iThemesSecurity無料版の基本的な機能➀ セキュリティチェック DBバックアップやブルートフォース対策等、有効無効 確認 グローバル設定 IPアドレスのブラックリスト/ホワイトリスト機能、wp- config.phpや.htaccessやnginx.conf等の書込み許可 通知管理 セキュリティダイジェストなど、Eメール通知の管理 404の検出 大量に404を発生させるユーザーのロックアウト管理 退席中モード ダッシュボードログインの時間帯制限 禁止ユーザー hackrepair.comによるブラックリスト機能の管理 データベースのバックアップ DB定期バックアップの管理
  65. 65. 65 7.セキュリティプラグイン設定7 ファイル変更の検出 ファイル改ざんチェック機能の管理 ファイルのパーミッション パーミッション設定値チェック ローカルのブルートフォース保護 ロックアウトや回数などログイン制限管理 ネットワーク・ブルートフォース保護 自分のWEBサイトに侵入試行してきた悪意のユーザー を他サイトで侵入出来ないように情報共有して協力す る機能 SSL SSL証明証セット後、.htaccessなどのSSL対応をプラ グインで実施できる機能 iThemesSecurity無料版の基本的な機能②
  66. 66. 66 7.セキュリティプラグイン設定8 強力なパスワードの実施 パスワードの強力判定機能を強制 システムの微調整 リクエストやクエリのフィルタリングなど各種 WordPressのソルト 認証用キーの再発行。再発行すると接続されているセ ッションが切断される WordPressの微調整 不要ヘッダの削除、テーマ/プラグイン編集XML-RPC やREST APIの無効化 iThemesSecurity無料版の基本的な機能③
  67. 67. 67 7.セキュリティプラグイン設定9 プラグインを有効化した時点で、既に各種「推奨」設定が自動で設定されます デフォルト設定そのままで良い部分には触れず、その他の「推奨」設定を行います 今回のハンズオンでは「高度」については取り扱いません
  68. 68. 68 7.セキュリティプラグイン設定10 iThemesSecurityの設定を行いま す 「設定」へ進みます
  69. 69. 69 7.セキュリティプラグイン設定11 「Secure Site」をクリックしま す
  70. 70. 70 7.セキュリティプラグイン設定12 ①「ネットワーク・ブルートフォー ス保護を有効化」をクリックします ②閉じるをクリックします
  71. 71. 71 7.セキュリティプラグイン設定13 iThemesSecurityのネットワーク・ ブルートフォース保護では、 ithems.comからAPIキーの発行をし てもらうことが必要となります ホストオンリーアダプタであるため 、今回は左記の様なエラー画面とな ります このまま、左下の「閉じる」をクリ ックします 念のために、次のページで正常な状 態をご紹介します
  72. 72. 72 7.セキュリティプラグイン設定14 インターネットから隔離されていない環境であ れば、iThemesSecurityのネットワーク・ブル ートフォース保護で、APIキーの発行作業も行 われます 左記の様な画面になります
  73. 73. 73 7.セキュリティプラグイン設定15 ithemes.comでAPIキーを取得していない場合、 iThemesSecurityの設定ページのトップで以下のようなAPIキー取得の案内が表示されます
  74. 74. 74 7.セキュリティプラグイン設定17 「グローバル設定」「構成の 設定」に進みます
  75. 75. 75 7.セキュリティプラグイン設定18 グローバル設定 「ロックアウトのホワイトリ スト」に自己IP に 「192.168.100.1」 を入力し ます ①「ホワイトリストに現在の自 分のIPアドレスを追加」をクリ ックします ②「設定を保存」をくりっくし ます 接続される端末が固定IPで設定 している場合に推奨します
  76. 76. 76 7.セキュリティプラグイン設定19 Notification Center (通知管理) 「iThemesSecurity」の 「トップページ」で 「Notification Center」の「構 成の設定」に進みます
  77. 77. 77 7.セキュリティプラグイン設定20 Notification Center (通知管理) セキュリティダイジェストメールを送信す るユーザーを選択します ①ALL 管理者 users のチェックを確認し ます ②の部分について、権限グループ「管理者」 が一覧で並びます。権限グループが「投稿者 」や「編集者」等の場合は表示されません 複数の管理者がいる場合は、セキュリティを 担当する管理者だけに送信するなど使い分け も可能です
  78. 78. 78 7.セキュリティプラグイン設定21 Notification Center (通知管理) 圧縮されたSQLファイルバックア ップの送り先メールアドレスを設 定します ①「Recipient」にメールアドレス を入力します ②「設定を保存」をクリックしま す
  79. 79. 79 7.セキュリティプラグイン設定22 404の検出 「iThemesSecurity」のトップページで 「Notification Center」の「404の検出」の 「有効」をクリックします
  80. 80. 80 7.セキュリティプラグイン設定23 禁止ユーザー 「iThemesSecurity」の「トップページ」 で「禁止ユーザー」の「構成の設定」をク リックします
  81. 81. 81 7.セキュリティプラグイン設定24 禁止ユーザー 「禁止ユーザー」機能、無効化を推奨します ※GooglebotやBingbotのIPアドレスが禁止 リストに勝手に登録されてしまうため 「禁止ユーザー」機能、有効化を行うと、グ ーグルサーチコンソールのインデックスが0 (ゼロ)になります
  82. 82. 82 7.セキュリティプラグイン設定25 データベースのバックアップ 「iThemesSecurity」の「トップページ」で「デ ータベースのバックアップ」で「構成の設定」を クリックします
  83. 83. 83 7.セキュリティプラグイン設定26 データベースのバックアップ バックアップの間隔は、記事投稿の頻度を 基準にして、バックアップ間隔の日数を判 断することを推奨します
  84. 84. 84 7.セキュリティプラグイン設定27 ファイル変更の検出 「iThemesSecurity」の「トップページ」 で「ファイル変更の検出」の「詳細を見 る」をクリックします
  85. 85. 85 7.セキュリティプラグイン設定28 ファイル変更の検出 (改ざん通知) 「有効」をクリックします
  86. 86. 7.セキュリティプラグイン設定29 ファイル変更の検出 ①「分割ファイルのスキャンをチェックします 。」にチェックします ②設定を保存します 全部まとめて1回でスキャンを行わず、パーツ別 に分割して行います。サーバー負荷を減らしま す ファイルの書き換えが行われると、設定してい るメールアドレス宛にメールが届きます アップデートによるファイル更新も書き換えと してメールが届きます。悪意の改ざんと見分け るには、更新作業を行ったテーマ/プラグインと 日時の記録を行うことが必要となります。更新 作業の履歴管理が必要です 86
  87. 87. 87 7.セキュリティプラグイン設定30 パーミッション確認 「iThemesSecurity」の「トップページ」 「ファイルのパーミッション」で 「詳細を表示」をクリックします
  88. 88. 88 7.セキュリティプラグイン設定31 パーミッション確認 「ファイルのパーミッション詳細を読み 込む」をクリックします
  89. 89. 89 7.セキュリティプラグイン設定32 パーミッション確認 パーミッションの確認画面です 「ファイルのパーミッション詳細を再読み 込み」をクリック。ひと通り設定後に設定 値が正しいかチェックします
  90. 90. 90 7.セキュリティプラグイン設定33 パーミッション確認 各種パーミッションは、左記「実装ガイドライン 4.13 Check file permissions」のDesiredをベストと 考えてください テーマやプラグインなどのダッシュボードGUI設定でパー ミッションが設定変更の支障となる場合、Fallback(代替 案)にパーミッションを変更してダッシュボードGUI設定 を行い、作業が終わり次第元に戻してください
  91. 91. 91 7.セキュリティプラグイン設定35 ローカルのブルートフォース保護 「iThemesSecurity」の「トップページ」 です 「ローカルのブルートフォース保護」で 「構成の設定」をクリックします
  92. 92. 92 7.セキュリティプラグイン設定36 ローカルのブルートフォース保護 ユーザー名「admin」 のログイン試行禁止 設定します ①をチェックします ②「設定を保存」を クリックします
  93. 93. 93 7.セキュリティプラグイン設定37 ネットワークのブルートフォース保護 ローカルのブルートフォース保護との違いは 、iThemesSecurityが悪意のログイン試行IPア ドレスを管理、さらにログイン試行パターン に対する各種フィルタリングの「しきい値」 ブラッシュアップまでiThemesSecurityが共有 管理と対策を行うという点です。APIキーが発 行されます ①iThemesSecurityからWordPressセキュリテ ィに関するメールを受け取るメールアドレス を設定します ②「設定を保存」をクリックします ※ホストオンリーアダプタなので出来ません
  94. 94. 94 7.セキュリティプラグイン設定38 SSL サイトのSSL化を行う際、SSL証明書のインストール後、 apacheの.htaccesによるリダイレクト設定をプラグインで設定出来ます Nginxの場合、nginx.confやincludeデイレクティブのパス設定等が必要です .htaccessパーミッション強化は設定終了後の最後に行うことを推奨します ホストオンリーアダプタの為、SSL証明書インストールが出来ません ハンズオン環境では、SSL証明証インストールせず進めます。実際の運用環境について、SSL導入 を推奨します
  95. 95. 95 7.セキュリティプラグイン設定39 システムの微調整 「iThemesSecurity」の「トップページ」 です 「システムの微調整」で ➀「有効」をクリックします ②「詳細を見る」をクリックします
  96. 96. 96 7.セキュリティプラグイン設定40 システムの微調整 以下の項目をチェックします ● システムファイルの保護 ● ディレクトリの参照を無効 ● リクエストメソッドのフィルタ ● URL内の不審なクエリ文字列をフィ ルタリング
  97. 97. 97 7.セキュリティプラグイン設定41 システムの微調整 以下の項目をチェックします ● ファイルの書き込み権限を削除 wp-config.phpや .htaccess のパーミッショ ンを0444にします 最後に「設定を保存」をクリックします
  98. 98. 98 7.セキュリティプラグイン設定42 システムの微調整 「ファイルのパーミッション」の「詳細を 表示」にて確認します パーミッションのチェックがすべてが有効 化状態(オールグリーン)になっている事 を確認します
  99. 99. 99 7.セキュリティプラグイン設定43 WordPress のソルト(暗号化する際に使用されるデータ) レンタル共有サーバー等環境によって異なりますが、wp-config.php内の認証 向けシークレットキーの再設定が出来ます ランダム文字列ではなく、8種のキーが全て同じ文字列になってしまってい る場合などに利用してください シークレットキーを設定すると現在接続されているセッションが切断されま す。再度ダッシュボードログインが必要となります
  100. 100. 100 7.セキュリティプラグイン設定44 WordPress の微調整 「iThemesSecurity」の「トップペー ジ」「WordPressの微調整」で「構 成の設定」をクリックします
  101. 101. 101 7.セキュリティプラグイン設定45 WordPress の微調整 以下の項目にチェックします ● ファイルエディタを無効にする ● ユニークなニックネームの選択を ユーザーに強制 ● 追加ユーザーのアーカイブを無効 ● タブナビングからの保護 「設定を保存」をクリックします
  102. 102. 102 7.セキュリティプラグイン設定46 NinjaFirewall (WP Edition)プラグイン ホストオンリーアダプタを使っているため、ルールファイルの取得更新が出来ません そのため、NinjaFirewall(WP Edition)プラグインについては、実装ガイドラインに従い紹介のみ となります プラグインだけではなく、WAF(Web Application Firewall)、IDS(不正侵入検知)、IPS(不正侵 入防御)などの活用も検討ください
  103. 103. 103 8.BackWPupプラグイン設定
  104. 104. 104 8.BackWPupプラグイン設定1 以下のコマンドにて、BackWpUpプラグインをワードプレスに設定、ユーザーとグループをApacheに変更 します $ cd /var/www/html/wordpress494/wp-content/plugins $ sudo cp /home/owaspnagoya/downloadfile/backwpup.3.4.4.zip ./ $ sudo unzip backwpup.3.4.4.zip $ sudo rm backwpup.3.4.4.zip $ sudo chown -R apache:apache backwpup
  105. 105. 105 BackWpUpプラグイン翻訳ファイル 以下のコマンドにて、BackWpUpプラグインの翻訳ファイルをワードプレスに設定します ※Virtualboxのホストオンリーアダプタ―特有の設定です。NAT相当のネットワークアダプタが 使える環境では、プラグインの有効化と同時に自動的に日本語翻訳ファイルもインストールさ れます 8.BackWPupプラグイン設定2 $ cd /var/www/html/wordpress494/wp-content/languages/plugins $ sudo cp /home/owaspnagoya/downloadfile/backwpup-ja.mo ./ $ sudo cp /home/owaspnagoya/downloadfile/backwpup-ja.po ./ $ sudo chown apache:apache backwpup-ja.mo $ sudo chown apache:apache backwpup-ja.po
  106. 106. 106 BackWpUpプラグインの設定 8.BackWPupプラグイン設定3 デフォルト設定を使用し、ジョブを作成し、WordPressのCronでスケジュール実行します 今回のハンズオン環境を使用して、ローカルにファイルバックアップを行います
  107. 107. 107 8.BackWPupプラグイン設定4 ①「プラグイン」をクリックします ②「BackWPup」の「有効化」をクリッ クします
  108. 108. 108 8.BackWPupプラグイン設定5 BackWpUp ジョブを作る ①「BackWpUp」をクリックします ②「新規ジョブを追加」をクリックしま す
  109. 109. 109 8.BackWPupプラグイン設定6 BackWpUp ジョブを作る ジョブの名前を設定します 以下の項目にチェックします ・ファイルのバックアップ ・インストール済みプラグイン一覧 ※「データベースのバックアップ」 は、iThemesSecurityでメール添付に てバックアップ設定している為、チ ェックを外します
  110. 110. 110 8.BackWPupプラグイン設定7 BackWpUp ジョブを作る 「フォルダーへのバックアップ」に チェックします 「ログ送信先のメールアドレス」に メールアドレスを設定します 「設定を変更」をクリックします
  111. 111. 111 8.BackWPupプラグイン設定8 BackWpUp スケジュールを作る ①「スケジュール」をクリックします ②「ジョブの開始方法」で「WordPressのCron」を 選択します ③「スケジューラ―」にバックアップを実施する日 時を入力します 「スケジューラー」設定の次に「変更を保存」をク リックします
  112. 112. 112 WPScanを再度実行してみましょう 実装ガイドラインの中で基本的な部分を中心に実装を終えました 今回の実装以外にも様々なWordPressのセキュリティ対策があります
  113. 113. 謝辞 113 本資料の作成に当たり多大なる支援をしてくださった方々に 感謝の意を表します。 (順不同) ・井上 茂 ・村井 剛 ・西村 将利 ・谷口 貴之 ・丹羽 雪晴 ・All OWASP Nagoya Staff ・坂梨 功典 ・加藤 人生 ・清水 健吾 ・浅田 竜起

×