Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
trellis-cve-2018-6389 — CVE-2018-6389 WordPress load-scripts / load-styles 攻撃を緩和する | Kitploit
ツール/GitHubGitHub/itinerisltd/trellis-cve-2018-6389
防御ツール脆弱性分析構成監査ウェブセキュリティDevSecOps設定ミスArchived
GitHubitinerisltd/trellis-cve-2018-6389

trellis-cve-2018-6389

CVE-2018-6389 WordPress load-scripts / load-styles 攻撃を緩和する

リポジトリを見る
137年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

trellis-cve-2018-6389

GitHub tag license

WordPress の load-scripts / load-styles 攻撃(CVE-2018-6389)を緩和します。

  • 目標
  • なぜ?
  • 緩和策
  • なぜやらないのか?
  • 要件
  • インストール
    • Trellis
    • WordPress
  • FAQ
    • マネージドホスティングでも使用できますか?
    • すごいですね。他にもこのような便利なものはありますか?
    • wp.org にはないのですね。どこで⭐️⭐️⭐️⭐️⭐️のレビューを書けますか?
  • 代替案
  • テスト
    • 構文チェック
  • 作者情報
  • フィードバック
  • 変更履歴
  • ライセンス

目標

Nginx によって wp-admin/load-scripts.php と wp-admin/load-styles.php へのすべてのリクエストを拒否します。

なぜ?

  • 世界のWebサイトの29%をDoSする方法 - CVE-2018-6389

TL;DR

WordPress は load-scripts.php(JS用)または load-styles.php(CSSファイル用)を使用し、ブラウザは単一のリクエストで複数のJS/CSSファイルを取得します。パフォーマンス的にはこの方が優れており、ページの読み込みが速くなります。この機能は管理ページ専用に設計されていますが、wp-login.php ページでも使用されるため、これらのファイルには認証が適用されません。

-- 世界のWebサイトの29%をDoSする方法 - CVE-2018-6389

root@kitploit:~
# for example
https://example.com/wp/wp-admin/load-scripts.php?c=1&load[]=jquery-ui-core,iris,wp-color-picker,dashboard,list-revision,media-grid,media,image-edit,set-post-thumbnail,nav-menu,custom-header,custom-background,media-gallery,svg-painter,wp-fullscreen-stu,wp-ajax-response,wp-api-request,wp-pointer,autosave,heartbeat,wp-auth-check

# same goes to https://example.com/wp/wp-admin/load-styles.php

単一のリクエスト(認証不要)だけで、サーバーに180回以上のIO読み取りを実行させ、すべてのファイルを連結して4MBを超えるレスポンスを生成させることができます。適切なファイアウォールやレート制限がない小規模なサーバーにとっては、DoS攻撃を実行するのに十分です。

緩和策

  1. 本当にHTTPSを使用すべきです。使用していないのであれば、そもそもウェブサイトを持つべきではありません。
  2. HTTPSを使用しているなら、HTTP/2を使用しない理由はありません。
  3. HTTP/2なら、ファイルを連結する必要はありません。実際、それはアンチパターンです。

-- WordPress における load-scripts.php DoS「攻撃」CVE-2018-6389 の緩和方法

  • WordPress にJSおよびCSSファイルの連結を使用しないように指示する
  • load-scripts.php と load-styles.php へのすべてのリクエストを拒否する

なぜやらないのか?

  • このredditスレッドにおける otto4242 のすべてのコメント
  • このwp.orgスレッドにおける wfalaa(Wordfence作者)のコメント

要件

  • Trellis 17c26fc 以降
  • Ansible v2.6 以降

インストール

Trellis

このロールを requirements.yml に追加します:

root@kitploit:~
# requirements.yml

- src: https://github.com/ItinerisLtd/trellis-cve-2018-6389
  version: 0.1.0 # Check for latest version!

コマンドを実行します:

root@kitploit:~
➜ ansible-galaxy install -r requirements.yml --force

dev.yml と server.yml の role: wordpress-setup の直後にこのロールを追加します:

root@kitploit:~
roles:
  # some other Trellis roles ...
  - { role: wordpress-setup, tags: [wordpress, wordpress-setup, letsencrypt] }
  - { role: trellis-cve-2018-6389, tags: [nginx, wordpress, wordpress-setup] }
  # some other Trellis roles ...

その後、通常どおり再プロビジョニングします:

root@kitploit:~
# https://roots.io/trellis/docs/local-development-setup/
➜ vagrant reload --provision

# https://roots.io/trellis/docs/remote-server-setup/
➜ ansible-playbook server.yml -e env=<environment>

WordPress

連結を無効にします:

root@kitploit:~
# config/application.php OR wp-config.php OR equivalent

# normal OR outdated Bedrock:
define('CONCATENATE_SCRIPTS', false);

# Bedrock with roots/wp-config:
Config::define('CONCATENATE_SCRIPTS', false);

その後、通常どおりデプロイします:

root@kitploit:~
# https://roots.io/trellis/docs/deploys/
➜ ./bin/deploy.sh <environment> <domain>

# or alternatively
➜ ansible-playbook deploy.yml -e "site=<domain> env=<environment>"

FAQ

マネージドホスティングでも使用できますか?

いいえ、Kinsta や WP Engine のようなマネージドホスティングでは使用できません。

この種の攻撃を緩和するのはホスティング会社の役目です。

すごいですね。他にもこのような便利なものはありますか?

  • Itineris のブログ の記事
  • Itineris のGitHubプロフィール のその他のプロジェクト
  • Twitter で @itineris_ltd と @TangRufus をフォロー
  • 次の素晴らしいサイトを構築するために Itineris を雇う

wp.org にはないのですね。どこで⭐️⭐️⭐️⭐️⭐️のレビューを書けますか?

ありがとうございます!気に入っていただけて嬉しいです。このプロジェクトを誰かが使っていることを上司に知ってもらうことが重要なのです。wp.org でのレビューの代わりに、以下を検討してください:

  • @itineris_ltd に言及して良いことをツイートする
  • このGitHubリポジトリにスターを付ける
  • このGitHubリポジトリをウォッチする
  • ブログ記事を書く
  • プルリクエストを送る
  • Itineris を雇う

代替案

  • WordPress における load-scripts.php DoS「攻撃」CVE-2018-6389 の緩和方法

テスト

構文チェック

root@kitploit:~
➜ ansible-playbook -i 'localhost,' --syntax-check tests/test.yml

作者情報

trellis-cve-2018-6389 は Tang Rufus によって作成された Itineris Limited のプロジェクトです。

このプロジェクトを可能にしてくれた Trellis を開発した the Roots team に特別な感謝を捧げます。

貢献者の完全なリストはこちらにあります。

フィードバック

フィードバックをお寄せください! 私たちはこのライブラリをできるだけ多くのプロジェクトで役立つものにしたいと考えています。 issue を送信して、良い点・悪い点を指摘してください。または、プロジェクトをフォークして提案を行ってください。 どんなに小さな issue でも歓迎します。

変更履歴

最近の変更の詳細については CHANGELOG を参照してください。

ライセンス

trellis-cve-2018-6389 は MIT License の下で公開されています。

ツールをダウンロード