WP Manifestindependent plugin directory
manifest / users / dynamic-add-users

Dynamic Add Users WP Registry grade D+. High-severity findings · 2 findingsWP RegistryHigh-severity findings · 2 findingsOpen the reportD+

A WordPress plugin to dynamically add users from a central directory service individually and by group.

★ 0stars
34composer installs
1.3.2latest · 2 years ago

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/middlebury/dynamic-add-users/archive/refs/heads/main.zip

On Packagist as middlebury/dynamic-add-users:

composer require middlebury/dynamic-add-users
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.
Dynamic Add Users Dynamic Add Users is a WordPress plugin that replaces the native 'Add User' screen with a dynamic directory search. This plugin also allows searching for groups in a directory and bulk-adding group members to a site as well as synchronizing site-roles based on group-membership. It provides several services that other plugins can use to look up users and groups and apply roles to users. Components Dynamic Add Users has several components that work together to provide its functionality: A DynamicAddUsersPlugin singleton to manage configuration and access to services. A Directory service with providers that allow lookup of user and group information. Login-Hook providers that trigger sync operations at login time and may provide access to user identifiers present in the login response. User Manager and Group Syncer services and APIs for creating user accounts and bulk-adding users. Network administrator configuration screens. A replacement "Add Users" screen for site administrators. The Directory Service The Dynamic Add Users Directory service provides an API for searching for users by name/email in some underlying data source. The resulting u

Releases

8 releases.

Tag
Published
1.3.2 latest
Aug 6, 2024 2 years ago
Aug 1, 2024 2 years ago
Jul 31, 2024 2 years ago
Feb 29, 2024 2 years ago
Feb 15, 2024 2 years ago
Aug 1, 2023 3 years ago
Aug 1, 2023 3 years ago
Jul 21, 2022 4 years ago

These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.

D+ grade

Security

Dynamic Add Users 1.2.4 · audited by WP Registry

High-severity findings.

1 high 1 medium
Audited release
1.2.4
Findings
2
Worst severity
high
Content hash
2d3b1d6995f2de6beb6b1b69…

Findings

  • high Directory user/group search AJAX lacks capability and nonce checks

    missing_capability

    wp_ajax_dynaddusers_search_users and wp_ajax_dynaddusers_search_groups call Directory getUsersBySearch/getGroupsBySearch and return display_name + user_email (and group ids) as JSON. Neither handler calls current_user_can nor check_ajax_referer. Any logged-in Subscriber can enumerate directory identities and emails. The Add Users admin page itself requires capability 'administrator', but AJAX does not inherit that gate. Observable: POST action=dynaddusers_search_users&term=a as Subscriber.

    src/DynamicAddUsers/Admin/AddUsers.php:361-394

    Recommendation

    Require current_user_can('create_users') or 'promote_users' and check_ajax_referer before directory queries.

  • medium Add Users admin form processes role assignment without CSRF nonce

    csrf

    optionsPage handles POST user/group/role and calls getOrCreateUser + addUserToBlog (including arbitrary role from $_POST['role']) with no wp_nonce_field/check_admin_referer. Page load requires administrator capability via menu, so CSRF needs an admin session. Observable: forged POST to users.php?page=dynaddusers adds LDAP/directory users as administrator.

    src/DynamicAddUsers/Admin/AddUsers.php:92-140

    Recommendation

    Add nonce verification before any addUserToBlog/syncGroup mutation.

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.