Get Started
Userpro – User Profiles With Social Login icon

6 versions

Userpro – User Profiles With Social Login history.

Every release of Userpro – User Profiles With Social Login is archived here with its changelog, file size, and security scan result. Use the archive to roll back to a stable release or audit what changed between updates.

4 of 6 releases scanned clean
v5.1.16Latest
October 6, 20268.7 MBScanned
Security release. Full detail in `changelog.txt`. - Security: Privilege escalation (CVSS 9.8, Patchstack 2026-10-06). A guest registration could overwrite the new account's `wp_capabilities` row by posting a field name containing a Unicode homoglyph in place of an ASCII letter. MySQL's accent-insensitive `meta_key` collation matched the homoglyph key to the real `wp_capabilities` row; the `remove_accents()` denylist did not cover all characters in that equivalence class. Fixed in two layers: (1) `functions/ajax.php` now applies `sanitize_key()` to every POST key when building `$form`, stripping non-ASCII bytes before they reach `update_user_meta()`; (2) `functions/user-functions.php` now rejects any meta key containing non-ASCII bytes and uses `sanitize_key()` for the capabilities/user_level check, as defense-in-depth for all callers. (`functions/ajax.php`, `functions/user-functions.php`)
October 2, 20268.7 MBScanned
Stability fix. Full detail in `changelog.txt`. - Stability: PHP warning "Attempt to read property 'post_name' on null" on archive pages, 404s, and any non-single-post context is now suppressed. `get_post()` returns null on these pages and the title filter was reading `$post->post_name` without a null guard. The warning appeared in the site header on any page where UserPro was active but no post was in context. (`functions/hooks-actions.php`)
September 12, 20268.7 MBScanned
Other
  • Security and stability release. Full detail in `changelog.txt`.
  • Security: SQL injection in the front-end publish flow (`functions/ajax.php`) and in the badges comment-count query, both now prepared.
  • Security: self-service profile saves can no longer write trust/status meta (`userpro_verified`, account status, connections, secret key, badges, social ids); filter `userpro_protected_profile_meta`, compared case-insensitively. Role changes via profile save require `promote_users`.
  • Security: `userpro_reset_option` and `userpro_user_invite` now require `manage_options` (were reachable by logged-out visitors via the public nonce).
  • Security: `userpro_crop_picupload` requires a nonce and escapes its output; the front-end script now sends the nonce.
  • Packaging: bundled `cacert.pem` files restored; `build-zip.py` guarantees a `userpro/` top-level folder (the previous upload unpacked to `userpro-main/` and installed as a second plugin).
Fixed
  • custom-field member directory sort now sorts and paginates in SQL; malformed `userp`/`emd-page`/`searchuser` input no longer fatals on PHP 8.
  • Enhanced Member Directory and collage use a COUNT query; badge user pickers show emails again; admin version label corrected.
v5.1.13Unavailable
August 15, 20268.9 MBScanned
Other
  • Remaining 7 unbounded query locations patched. All 9 originally identified issues now resolved.
  • *`functions/memberlist-functions.php` — member directory**
  • `:440` Custom-field sort keys were excluded from the `number`/`offset` block, leaving the main directory query unlimited when sorted by a custom field. Fixed: pagination always applied regardless of sort key.
  • `:448` Filtered/search result pagination used `number=>10000` to count matching users. Fixed: `WP_User_Query` with `count_total=true`, `fields='ID'`, `number=1`. One COUNT, zero rows.
  • *`addons/badges/admin/admin-functions.php` — Badges admin**
  • `:83` `userpro_badges_admin_users()` fetched full `WP_User` objects for all users. Fixed: `fields=>['ID','user_login']`, capped at 500 via `userpro_badges_admin_users_limit` filter.
  • `:166` "Delete badge from all users" hydrated full `WP_User` objects before the per-user write loop. Fixed: `fields=>'ID'` only.
  • *`admin/panels/requests.php` and `addons/requests/admin/panels/settings.php` — User Requests panels**
  • Both pending-user count badges (header ` `) now use a single `WP_User_Query` COUNT instead of fetching all pending users. Display lists capped at 200 rows. The `pending_admin` section in `settings.php` already had pagination; `pending` section now bounded.
  • *`admin/admin.php`**
Removed
  • dead `get_pending_verify_requests_count()` (zero callers; unbounded duplicate of the already-patched function in the requests addon).
v5.1.11Unavailable
September 4, 20259.7 MB
Other
  • ==================================
  • Security fix.
  • ==================================
Fixed
  • Issue that caused settings tabs to not display in the UserPro settings page.
v5.1.10Unavailable
September 4, 20259.0 MB
Other
  • ==================================
  • Security fix.
  • ==================================
Fixed
  • Register shortcode register_redirect fix.
  • Register Ajax error.
  • Saving Groups & Fields undefined key warning fix.
  • Error while viewing followers.

Why archive

Sometimes the latest release isn't the one you need. The archive lets you pin Userpro – User Profiles With Social Login to a known-good version, or roll back while a bug is investigated. Every release stays scanned and reachable.