目次
1. サマリー
2. 日別エラー件数
■ 高負荷日(≥150件) ■ 通常 ■ 無活動
3. エラー種別分析
エラーコード内訳
エラー詳細
| コード | モジュール | 内容 | 件数 |
|---|---|---|---|
AH01276 |
autoindex | ディレクトリインデックス禁止 | 2,180 |
AH01630 |
authz_core | サーバー設定によるアクセス拒否 | 34 |
AH01276: DirectoryIndex設定にマッチするファイルが存在しないディレクトリへのアクセス。Options Indexesが無効なため、ディレクトリ一覧表示が禁止されている。
AH01630: .htaccess またはサーバー設定でアクセスを明示的に拒否されたリクエスト。主にプラグインPHPファイルへの直接アクセス試行。
4. 時間帯別エラー分布(UTC)
ピーク:07時台(210件)・08時台(202件)・02時台(170件)・10時台(193件)
5. アクセス元IPアドレス(上位20件)
| # | IPアドレス | 件数 | 割合 | 推定所属 | リスク |
|---|---|---|---|---|---|
| 1 | 4.189.120.199 | 102 | 4.6% | Microsoft Azure | 高 |
| 2 | 20.89.17.172 | 100 | 4.5% | Microsoft Azure | 高 |
| 3 | 40.83.95.233 | 94 | 4.2% | Microsoft Azure | 高 |
| 4 | 20.70.168.128 | 94 | 4.2% | Microsoft Azure | 高 |
| 5 | 74.176.56.30 | 86 | 3.9% | Microsoft Azure (米国) | 高 |
| 6 | 4.197.176.207 | 83 | 3.7% | Microsoft Azure | 高 |
| 7 | 20.42.220.101 | 78 | 3.5% | Microsoft Azure | 高 |
| 8 | 85.203.23.60 | 72 | 3.3% | VPN/Proxy (疑わしい) | 最高 |
| 9 | 52.147.68.81 | 59 | 2.7% | Microsoft Azure | 高 |
| 10 | 4.190.203.84 | 59 | 2.7% | Microsoft Azure | 高 |
| 11 | 4.190.195.218 | 59 | 2.7% | Microsoft Azure | 中〜高 |
| 12 | 4.190.195.159 | 58 | 2.6% | Microsoft Azure | 中〜高 |
| 13 | 20.78.169.245 | 53 | 2.4% | Microsoft Azure | 中〜高 |
| 14 | 74.176.59.137 | 51 | 2.3% | Microsoft Azure | 中〜高 |
| 15 | 68.218.89.201 | 49 | 2.2% | Microsoft Azure | 中〜高 |
| 16 | 4.189.120.245 | 47 | 2.1% | Microsoft Azure | 中〜高 |
| 17 | 104.215.25.253 | 47 | 2.1% | Microsoft Azure | 中〜高 |
| 18 | 20.184.35.52 | 44 | 2.0% | Microsoft Azure | 中〜高 |
| 19 | 91.239.157.217 | 30 | 1.4% | VPN/Proxy サービス | 中〜高 |
| 20 | 156.146.33.76 | 30 | 1.4% | VPN/Proxy サービス | 中〜高 |
※ 96件のユニークIPのうち、上位20件で全体エラーの約55%を占める。 Azureレンジ(4.x.x.x, 20.x.x.x, 40.x.x.x, 52.x.x.x, 104.215.x.x)が大多数を占めており、クラウドインフラを悪用した自動スキャンが疑われる。
6. アクセス対象パス(上位20件)
アクセス領域別集計
7. リファラー分析
リファラードメイン上位
リファラーに関する注目点
自サイトURLがリファラーに設定(80件)
IP 85.203.23.60 などが http://security-blog-it.com/wp-includes/... 等を自身のリファラーとして送信。検索エンジン経由ではなく、サイト内を直接クロールしてディレクトリを列挙している証拠。
HTTPSではなくHTTPのリファラー
自サイトリファラーが http://(非暗号化)で送信されている。正規ユーザーは通常HTTPS経由でアクセスするため、意図的な偽装の可能性がある。
検索エンジンリファラーの偽装
多くのスキャナーが正規の検索エンジン(Google, Yahoo, Bing等)のURLをリファラーとして偽装し、通常のWebクローラーに見せかけようとする一般的な手口。
8. セキュリティ分析
【脅威レベル:高】WordPress ディレクトリ列挙スキャン(AH01276)
全体の98.5%(2,180件)を占める最多エラー。複数のIPアドレスがwp-includes・wp-admin・wp-contentディレクトリ配下を
数秒以内に連続アクセスする自動化された挙動を示している。これはWPScanやNucleiなどのWordPress脆弱性スキャナーによる
ディレクトリ/バージョン情報の収集(フィンガープリント)と判断できる。
AH01276が発生しているという事実は、ApacheのOptions -Indexes設定が機能していることを示しており、
ディレクトリリスティングの直接漏洩は防がれているが、インストールされているWordPressのバージョン・プラグイン構成の推測は可能な状態。
【脅威レベル:高】プラグインPHPファイルへの直接アクセス試行(AH01630)
34件のアクセス拒否ログが wp-content/plugins/akismet/akismet.php および akismet/ ディレクトリへの直接HTTPアクセスを記録している。
攻撃者はプラグインのPHPファイルを直接実行することで、Remote File Inclusion (RFI) やSQL Injectionを狙うことがある。
現在は.htaccessまたはサーバー設定でブロックされており防御済みだが、
複数のIPから繰り返し試行されている点は、自動攻撃キャンペーンの一部である可能性を示す。
【脅威レベル:最高】IP 85.203.23.60 による標的型偵察スキャン
このIPは他のIPと異なり、自サイトのURL自体をHTTP Refererに設定(例:referer: http://security-blog-it.com/wp-includes/)。
72件のアクセスが集中する1月16日10:39〜のセッションで、
wp-content/uploads/, wp-includes/, wp-includes/blocks/code/, wp-includes/ID3/, wp-includes/Requests/ 等を
3〜4秒間隔で体系的に列挙している。
検索エンジンのリファラーを偽装する他のIPとは異なるアプローチであり、
このIPはサイト構造を事前に把握した上での意図的な標的型スキャンを実施していると考えられる。
【脅威レベル:中】Microsoft Azureクラウドを踏み台にした分散スキャン
上位IPの大多数がMicrosoft Azureの IPレンジ(4.x.x.x, 20.x.x.x, 40.x.x.x, 52.x.x.x, 104.215.x.x)に属する。
これは攻撃者がクラウドVMを大量に利用してスキャンを分散させ、単一IPのブロックを回避しようとする手口。
96個のユニークIPから実施されているが、同一の攻撃キャンペーンである可能性が高い。
また 146.70.178.x, 156.146.33.76, 91.239.157.x, 193.37.32.x はVPN/Proxyサービスのレンジであり、
身元隠蔽を目的とした接続が疑われる。
【脅威レベル:中】wp-admin/ および wp-content/uploads/ への集中アクセス
管理画面領域(wp-admin/js/, wp-admin/includes/, wp-admin/css/colors/等)への221件のアクセスは、
WordPress管理パネルのバージョン特定とファイル構成の把握を目的としている。
また、wp-content/uploads/への138件のアクセスは、
アップロードディレクトリでのPHP実行が許可されていないかを確認する行為(Webシェル設置後の悪用を狙った事前調査)と見られる。
【脅威レベル:中】ピーク時間帯に見られる自動化スキャンの痕跡
UTC 07時台(210件)・08時台(202件)・02時台(170件)・10時台(193件)にエラーが集中しており、 特定時刻に起動するスケジュールされたスキャンジョブの特徴と一致する。 また1月5日(201件)・1月12日(193件)・1月13日(185件)・1月29日(152件)に波のある集中が見られ、 断続的に繰り返されるキャンペーンの可能性がある。
【情報】機密コンポーネントのフィンガープリント収集
wp-includes/PHPMailer/(65件)・wp-includes/sodium_compat/(34件)・wp-includes/certificates/(37件)・
wp-includes/Requests/(35件)等のアクセスは、
WordPressのサブライブラリのバージョンを特定し、既知CVE(例:PHPMailerのRCE脆弱性)を突くための情報収集に利用される。
これらのディレクトリへのアクセスパターンから、攻撃者が体系的にコンポーネントを列挙していることが確認される。
| 脅威分類 | エラーコード | 件数 | リスク | 現在の防御状態 |
|---|---|---|---|---|
| WordPressディレクトリ列挙 | AH01276 |
2,180 | 高 | DirectoryIndex禁止で部分防御済み |
| プラグインPHP直接アクセス | AH01630 |
34 | 高 | authz_coreでブロック済み |
| 標的型偵察スキャン (85.203.23.60) | AH01276 |
72 | 最高 | 未ブロック(要対応) |
| Azureクラウド分散スキャン | AH01276/AH01630 | ~1,500 | 中〜高 | 未ブロック(要対応) |
| VPN/Proxy経由アクセス | AH01276 | ~120 | 中 | 未ブロック |
9. 推奨対策
緊急対応(即時実施推奨)
-
① 85.203.23.60 のIPブロック
標的型スキャンが確認されたIPをfail2banまたは.htaccessでブロック。deny from 85.203.23.60(.htaccess) -
② WordPress管理画面のIP制限
wp-admin/ へのアクセスを管理者の固定IPのみに制限。 .htaccessでrequire ip 管理者IPを設定。 -
③ 既存プラグイン・テーマのバージョン確認
PHPMailer, akismet等の脆弱性スキャン対象が特定されている。最新版への更新を確認。 -
④ wp-content/uploads/ でのPHP実行無効化確認
Webシェル設置を防ぐため、uploadsディレクトリでのPHP実行が無効か検証。
中期対応(1週間以内)
-
⑤ WAF(Webアプリケーションファイアウォール)の導入
Cloudflare等のWAFでAzureIPレンジからのスキャントラフィックを自動検出・ブロック。 -
⑥ fail2ban によるレート制限
短時間に多数のAH01276/AH01630を発生させたIPを自動的に一時ブロックするルールを設定。 -
⑦ WordPress バージョンの非公開化
readme.htmlの削除、generatorメタタグの削除で、バージョン情報の露出を低減。 -
⑧ ログ監視の自動化
同一IPから30件/5分 以上のエラーを検知した際にアラートを発報する監視ルールを導入。
長期対応(継続的改善)
- 脅威インテリジェンスの活用: AbuseIPDB等のブラックリストを定期的に照合し、既知の悪意あるIPを事前ブロック。
- 二要素認証(2FA)の強制: wp-admin へのログインに2FAを必須化し、認証情報漏洩時のリスクを低減。
- 月次ログ解析の定例化: 本レポートに類した解析を月次で実施し、攻撃傾向の変化を継続的に把握。
- 脆弱性スキャンの定期実施: WPScan等で自サイトの脆弱性を攻撃者と同じ視点で定期チェック。