WPScanでユーザー名をスキャンされないようにする方法についてまとめました。
ログインユーザー名が特定
WPScanで「wpscan –url XXXXXXX –enumerate u」を自分のWordPressサイトに実行すると、ログインユーザー名が特定されてしまいました。
[+] Enumerating Users (via Passive and Aggressive Methods) Brute Forcing Author IDs - Time: 00:00:04 <==> (10 / 10) 100.00% Time: 00:00:04 [i] User(s) Identified: [+] USERNAME | Found By: Author Posts - Author Pattern (Passive Detection) | Confirmed By: | Rss Generator (Passive Detection) | Oembed API - Author URL (Aggressive Detection) | - https://XXX.XXX/wp-json/oembed/1.0/embed?url=https://XXX.XXX/&format=json | Rss Generator (Aggressive Detection)
ログインに必要な情報は「ユーザー名」「パスワード」ですが、そのうちユーザー名を攻撃者が取得してしまうと、ログイン画面からパスワードを総当り攻撃(ブルートフォースアタック)し、不正ログインされる恐れがあります。
そのため、ログインユーザー名を第三者にわからないよう工夫する必要があります。
なお、WPScanの使い方については以下ページで紹介しています。
【Kali Linux】WPScanでWordPressの脆弱性診断を行う方法
Kali LinuxのWPScanでWordPressの脆弱性診断を行う方法を初心者向けに解説します。
【対策1】ユーザー名とニックネームを違う名前にする
WordPressでは、ユーザー名には数値のインデックスが付いています。
そして「ブログURL/?author=1」「ブログURL/?author=2」のようにアクセスすると、そのインデックス番号をもつユーザが作成した記事一覧ページが表示されます。
そのページに中に、デフォルトだと「作成者」が表示されていますが、この「作成者」はデフォルトでは「ユーザー名」となっています。
そのため、「作成者」と「ユーザー名」を異なるものにすることが望ましいです。やり方は以下のとおり簡単です。
操作手順
- 管理画面を開きます。
- 左サイドメニューの「ユーザー」を開き、ユーザー名の下にある「編集」をクリックします。
- ニックネーム (必須)をユーザー名と異なるものにし、「プロフィールを更新」をクリックします。
補足
ちなみに、WPScanでユーザー名を調べたときのアクセスログは以下のとおりです。
「ブログURL/?author=1」「ブログURL/?author=2」にアクセスし、ユーザー名を取得しようと試みていることがわかります。
XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:34 +0900] "GET /author-sitemap.xml HTTP/2.0" 200 437 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=1 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=2 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=3 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=4 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=5 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "GET /?author=1 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "GET / HTTP/2.0" 200 54018 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "GET /?author=2 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:35 +0900] "HEAD /?author=6 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET /?author=3 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET /?author=4 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:36 +0900] "GET /?author=5 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "HEAD /?author=7 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "HEAD /?author=8 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "HEAD /?author=9 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "HEAD /?author=10 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "GET /?author=6 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "GET /?author=7 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:37 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:38 +0900] "GET /?author=8 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:38 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:38 +0900] "GET /?author=9 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:38 +0900] "GET / HTTP/2.0" 200 41643 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)" XXX.XXX [IPアドレス] - - [28/Jan/2024:08:51:39 +0900] "GET /?author=10 HTTP/2.0" 302 0 "https://XXX.XXX/" "WPScan v3.8.25 (https://wpscan.com/wordpress-security-scanner)"
【対策2】
[+] Enumerating Users (via Passive and Aggressive Methods) Brute Forcing Author IDs - Time: 00:00:04 <==> (10 / 10) 100.00% Time: 00:00:04 [i] User(s) Identified: [+] USERNAME | Found By: Author Posts - Author Pattern (Passive Detection) | Confirmed By: | Rss Generator (Passive Detection) | Oembed API - Author URL (Aggressive Detection) | - https://XXX.XXX/wp-json/oembed/1.0/embed?url=https://XXX.XXX/&format=json | Rss Generator (Aggressive Detection)
関連記事
【Kali Linux】WPScanでWordPressの脆弱性診断を行う方法
Kali LinuxのWPScanでWordPressの脆弱性診断を行う方法を初心者向けに解説します。
【Kali linux】脆弱性診断する方法を初心者向けに解説
Ubuntuの使い方を初心者向けに解説します。
404 NOT FOUND | Linux超入門
コメント