Unauthenticated WordPress User Enumeration via REST API and Author Sitemap

Ietekmētais resurss:
vidzemesslimnica.lv
Apraksts:

I identified an information disclosure issue on the public WordPress instance at https://vidzemesslimnica.lv.

The endpoint /wp-json/wp/v2/users is accessible without authentication and returns a list of real author/user identities (id, name, slug). In addition, /wp-sitemap-users-1.xml publicly exposes author archive URLs.

This allows unauthenticated user enumeration and provides reliable identity data that can be used for targeted phishing and account-guessing campaigns.

Severity assessment: Medium
CWE: CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor)
CVSS v3.1: AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N (5.3)

I understand this may be considered low-impact in some programs; I am reporting it as a valid information disclosure with moderate security relevance, not as account compromise.

Tehniskais ievainojamības apraksts (PoC):
  1. Send unauthenticated request to:
    GET https://vidzemesslimnica.lv/wp-json/wp/v2/users?per_page=10&_fields=id,slug,name

  2. Observe HTTP 200 OK and JSON response with real user identities, for example:
    [
    {"id":6,"name":"[REDACTED]","slug":"[REDACTED]"},
    {"id":4,"name":"[REDACTED]","slug":"[REDACTED]"},
    {"id":13,"name":"[REDACTED]","slug":"[REDACTED]"}
    ]

  3. Send unauthenticated request to:
    GET https://vidzemesslimnica.lv/wp-sitemap-users-1.xml

  4. Observe author URLs are publicly listed, e.g.:
    https://vidzemesslimnica.lv/author/[REDACTED]/
    https://vidzemesslimnica.lv/author/[REDACTED]/

Impact:
Public exposure of valid usernames/author slugs reduces attacker effort for targeted social engineering and credential attack preparation.

Test conditions:

  • In-scope target only
  • Non-destructive, read-only requests
  • No authentication bypass, no brute force, no data modification
Ieteiktais labojums:
  • Restrict public access to user enumeration endpoints where possible.
  • Disable or limit /wp-json/wp/v2/users exposure for unauthenticated users.
  • Disable author sitemap and/or author archives if not business-required.
  • Avoid using predictable/public slugs that directly map to login identifiers.
  • Apply principle of least disclosure for public metadata.

Komentāri (8)

Generic placeholder image
dainisciguzis
Programmas pārvaldītājs
25.06.2026 08:13:02

Labdien, paldies par nepilnības atklāšanu, veiksim labojumus !

Generic placeholder image
dainisciguzis
Programmas pārvaldītājs
25.06.2026 10:36:08

Nepilnība novērsta, paldies !

Statuss: Atrisināts
25.06.2026 10:36:12

Ievainojamības ziņojuma statuss tika nomainīts no Jauns uz Atrisināts. Izmaiņas veica dainisciguzis

Generic placeholder image
dainisciguzis
Programmas pārvaldītājs
25.06.2026 10:37:08

Lūgums nepublicēt personu vārdus.

Programmas pārvaldītājs dainisciguzis lūdz publiskot ievainojamību šādā statusā: Pilnā apmērā
25.06.2026 10:37:10

Lūdzu izvērtēt ziņojuma publiskošanu!

Ievainojamības ziņojuma iesniedzējs khalik lūdz publiskot ievainojamību šādā statusā: Pilnā apmērā
25.06.2026 10:43:05

Lūdzu izvērtēt ziņojuma publiskošanu!

Generic placeholder image
khalik
25.06.2026 10:45:50

Great turn around thank you for the fast validation and fix.
Happy to confirm publication, provided all personal names are anonymized/redacted.
Looking forward to contributing again.

ArtDan izmainīja ievaionjamības publiskošanas statusu uz: Pilnā apmērā
26.06.2026 15:14:12

Ievainojamības ziņojums publiskots!

VidzemesSlimnica
Vidēja
Atrisināts
Iesniegts
24.06.2026 16:52:10
Pēdējo reizi labots
26.06.2026 15:14:12
Ievainojamības ziņojuma iesniedzējs
khalik
Dalībnieki
-
25.06.2026 10:37:10
Programmas pārvaldītājs
dainisciguzis
25.06.2026 10:43:05
Ievainojamības ziņojuma iesniedzējs
khalik