Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/itskill-jp/wordpress-upgrade-check
Defensive ToolsIndicator of Compromise (IOC) ManagementVulnerability ScannersVulnerability AnalysisConfiguration AuditingInformation GatheringWeb SecurityIncident ResponseLog Analysis
GitHubitskill-jp/wordpress-upgrade-check

wordpress-upgrade-check

Read-only check of every WordPress core version on a server. Flags CVE-2026-87902 (fixed in 7.1.2 and backports), auto-updates turned off, and published attack indicators.

View RepositoryWebsite
121h 4m agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

wordpress-upgrade-check

Read-only check of the WordPress core version of every site on a server, with the fix table for CVE-2026-87902 (critical, unauthenticated; fixed in WordPress 7.1.2 on 2026-09-22 and backported to every branch down to 4.7).

For web agencies and admins who look after many WordPress sites: run it once over the whole hosting account and get one list.

日本語は下にあります

root@kitploit:~
bash check.sh ~/public_html                         # every WordPress under the folder
bash check.sh --log ~/logs/access_log ~/public_html  # also search an access log for attack requests (.gz OK)
bash check.sh --online ~/public_html                 # also ask api.wordpress.org: core status, and every plugin / theme vs its latest version
bash check.sh --list ~/public_html                   # print every plugin and theme with its version
bash check.sh --csv inventory.csv ~/public_html      # write the plugin / theme inventory of all sites to a CSV
  • Read-only on your sites. It never runs PHP, WP-CLI or any code from the sites, and never prints wp-config.php secrets (only the two automatic-update constants are checked). --csv writes only the file you name.
  • No network access unless --online: then it asks api.wordpress.org (never your sites) once for the core list and once per plugin / theme slug. Note that this tells wordpress.org which plugin slugs you are checking.
  • Works with bash 3.2+ (macOS) and Linux, including shared hosting with SSH. Needs find, grep, sed, awk.
  • Exit code 1 if anything is CRITICAL.

What it checks

#CheckCRITICAL / REVIEW
1Core version against the CVE-2026-87902 fix for its branch (7.1.2, 7.0.6, 6.9.9 … 4.7.37)CRITICAL if older than the fix
2With --online: the version's status on wordpress.orgCRITICAL if insecure, REVIEW if outdated
3WP_AUTO_UPDATE_CORE false / AUTOMATIC_UPDATER_DISABLED in wp-config.phpREVIEW (security releases won't install themselves)
4A theme with a top-level page-* directory (a published precondition of the exploit)REVIEW
5PHP files inside wp-content/uploadsREVIEW
6Published indicator files in /tmp and /var/tmp (poc87902.php, wp-pear-rce-flag.php, luci_*.php, zeta_*.php, marker CVE-2026-87902-POC-OK)CRITICAL
7With --log: pagename with ../ or %2e%2e, pagename=templates%2f, pearcmd, config-create, scanner user agentsCRITICAL if answered with 200, REVIEW if not
8Plugins and themes: name and version from their file headers (--list, --csv)—
9With --online: each plugin / theme against wordpress.orgCRITICAL if closed for a security issue (no fix will ever come), REVIEW if closed for another reason or a newer version exists

Plugins cause most real-world WordPress compromises. The CSV inventory is meant to be checked against a vulnerability database such as Wordfence Intelligence, WPScan or Patchstack. Paid or custom plugins are not on wordpress.org; the CSV marks them so you can check with their vendors.

Fixed versions (from GHSA-7hp8-65ch-5whp, checked against api.wordpress.org/core/stable-check on 2026-09-26):

BranchFixed inBranchFixed inBranchFixed in
7.17.1.26.36.3.125.45.4.23
7.07.0.66.26.2.135.35.3.25
6.96.9.96.16.1.145.25.2.28
6.86.8.106.06.0.165.15.1.26
6.76.7.95.95.9.185.05.0.29
6.66.6.95.85.8.174.94.9.33
6.56.5.125.75.7.194.84.8.32
6.46.4.125.65.6.214.74.7.37
5.55.5.22

Only the latest release (7.1.x) is actively supported; the older branches received this fix as a courtesy.

If it reports CRITICAL

  1. Update now: Dashboard → Updates, or your host's control panel. Back up files and database first if you can.
  2. If an attack request was answered with 200, or an indicator file exists: treat the site as possibly compromised. Look for admin users you don't know, PHP files in uploads and /tmp, and change passwords and keys after cleaning.
  3. Stopgap until you can update: block requests whose pagename contains ../ or %2e%2e at your WAF.

Sources

  • WordPress 7.1.2 Release (WordPress.org, 2026-09-22)
  • GHSA-7hp8-65ch-5whp
  • CVE-2026-87902: Attackers started probing WordPress sites hours after the patch (Patchstack) — attack requests, preconditions, indicators

Limits

  • For plugins and themes it knows the version, whether a newer one exists, and whether wordpress.org closed them. It does not know which versions are vulnerable; check the CSV against a vulnerability database.
  • Indicators are the published ones; [ok] does not prove a site was never attacked.

Moving to PHP 8 as well? See php8-upgrade-check.


日本語

サーバーにあるすべての WordPress の本体の版を、読み取りだけで確かめるスクリプトです。 2026-09-22 の WordPress 7.1.2 で直った重大な脆弱性 CVE-2026-87902(ログイン不要)の修正済みの版を、系列ごとに持っています。

root@kitploit:~
bash check.sh ~/public_html                         # フォルダの下の WordPress を全部
bash check.sh --log ~/logs/access_log ~/public_html  # アクセスログから攻撃の痕跡も探す(.gz も可)
bash check.sh --online ~/public_html                 # wordpress.org に、本体とプラグイン・テーマが最新か・危険かも問い合わせる
bash check.sh --list ~/public_html                   # プラグインとテーマを版つきで一覧に
bash check.sh --csv inventory.csv ~/public_html      # 全サイトのプラグイン・テーマの一覧を CSV に
  • サイトに対しては読み取りだけです。PHP も WP-CLI もサイトのコードも実行せず、wp-config.php の秘密の値も表示しません
  • --online のときだけ api.wordpress.org に問い合わせます(本体の一覧で 1 回、プラグイン・テーマごとに 1 回。あなたのサイトには接続しません)
  • wordpress.org で「セキュリティの問題」で配布停止になったプラグインが入っていたら CRITICAL にします。修正が二度と出ないためです
  • WordPress の実際の被害は、プラグインの脆弱性によるものが多いです。CSV の一覧を、Wordfence・WPScan・Patchstack などの脆弱性データベースと照らし合わせてください
  • レンタルサーバーでも、SSH が使えれば動きます

CRITICAL が出たら

  1. すぐ更新する(管理画面の「更新」、またはサーバー会社の管理画面)。できれば先にバックアップ
  2. 攻撃の通信に 200 で応えていた、または痕跡のファイルがあった場合は、侵入された前提で調べる (知らない管理者ユーザー、uploads や /tmp の PHP ファイル。掃除のあとでパスワードと鍵を変える)
  3. すぐ更新できない間は、pagename に ../ や %2e%2e を含む通信を WAF で止める

更新を代わりに行う定額のメニューもあります(1 サイト・税別 5 万円): WordPress・PHP の更新(IT.Skill)

License

MIT

Download Tool