Saint Systems
Forum Replies Created
-
Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Error when resubscribingFor anti-spam purposes, Mailchimp prevents deleted contacts from being re-subscribed via the API. It must be done through one of their hosted forms or in the admin interface and double-opt in must be set. To avoid causing this yourself when doing list maintenance/cleanup, ensure you use the “Delete and archive” option in Mailchimp instead of “Delete and remove” option.
Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Merge Tags: PhoneYes, you can add PHONE and other merge tags using a bit of custom code to hook into an action filter our plugin exposes prior to sending to Mailchimp.
add_filter( 'ss_wc_mailchimp_subscribe_merge_tags', function( $merge_tags, $order_id, $email ) { $order = wc_get_order( $order_id ); $order_id = $order->get_id(); // Get the order ID $merge_tags['PHONE'] = $order->get_billing_phone(); return $merge_tags; });
Drop that into functions.php and adjust as necessary and that should send the PHONE field over to Mailchimp.
Forum: Plugins
In reply to: [Disable User Login] Disable User Login – Vulnerability found in 1.3.7.Improved nonce verification has been added in v1.3.8/v1.3.9. Please update at your earliest convenience.
Forum: Plugins
In reply to: [Disable User Login] Disable User Login – Vulnerability found in 1.3.7.It’s worth noting that Patchstack which is the source for WordPress Defender and some other security scanning plugins has already had a history of incorrectly flagging plugins for CSRF vulnerabilities, which is made worse by their “bounty” program which rewards those who find vulnerabilities. If you visit their site for a specific vulnerability and try to “claim” the plugin, it then wants to walk you through an on-boarding process of setting up a “Security Program” for your WordPress plugin, which appears to be a way to grow their usage and market share.
In this specific case, we already had CSRF protection in our plugin for the one ajax call that our plugin utilizes. We have always used the standard check_ajax_referer method which performs a nonce verification and referer validation to prevent cross-site request forgery, followed by a security check using current_user_can to ensure the authenticated user is allowed to perform the action for the specified user. Furthermore, the Patchstack vulnerability detail page (https://patchstack.com/database/vulnerability/disable-user-login/wordpress-disable-user-login-plugin-1-3-7-cross-site-request-forgery-csrf-vulnerability) didn’t provide any details other than saying that the finder (qilin_99) verified it. It claims the required privileges are “Unauthenticated” when our plugin only exposes an ajax hook for authenticated requests and doesn’t expose the
nopriv
version that would needed for handling unauthenticated ajax requests.
So, in short, we believe this was an incorrectly reported vulnerability, but did add a more defensive check where we generate a unique nonce for each user row in the admin table and pass that to the ajax endpoint instead of a single global nonce for the entire page. However, there is still no fundamental difference in the behavior and we don’t believe there was any risk of CSRF as we attempted to break it by providing in invalid nonce, an invalid action and even triggering a post from an incorrect referer and were unable to bypass the nonce and CSRF validation.- This reply was modified 10 months, 2 weeks ago by Saint Systems.
- This reply was modified 10 months, 2 weeks ago by Saint Systems.
Forum: Plugins
In reply to: [Disable User Login] Vulnerable to Cross-Site Request ForgeryWhile the plugin has always had nonce validation that prevents Cross Site Request Forgery, we just released v1.3.8 which adds user-specific nonce validation for each user row in the admin table to improve this and address any potential issue.
Please update to 1.3.8 at your earliest convenience.Forum: Plugins
In reply to: [Disable User Login] Disable User Login – Vulnerability found in 1.3.7.While the plugin has always had nonce validation that prevents Cross Site Request Forgery, we just released v1.3.8 which adds user-specific nonce validation for each user row in the admin table to improve this and address any potential issue.
Please update to 1.3.8 at your earliest convenience.Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Wordfence reports this plugin is abandoned!2 small updates pushed yesterday and today. Let us know if you have any questions.
Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Wordfence reports this plugin is abandoned!@bluesteam, the plugin is not abandoned. We just haven’t updated in awhile because we’ve been busy with other projects.
We’ll get an update released and bump the tested versions up so it doesn’t flag in Wordfence.Let us know if you have any questions.
Forum: Plugins
In reply to: [Disable User Login] Email to notify disabled userYou can achieve this by adding a custom action hook to the
disable_user_login.user_disabled
hook exposed by the plugin.That will provide you with the
$user_id
of the user that was disabled so that you can notify them via email if you wish.Sample usage like so:
add_action( '
disable_user_login.user_disabled
', function( $user_id ) { // Get the user $user = get_user_by( 'ID', $user_id ); // TODO: Send the user an email telling them their account has been disabled. $subject = 'Your WordPress account has been disabled.'; $message = 'Your WordPress account has been disabled.'; wp_mail( $user->user_email, $subject, $message ); }, 10, 1 );Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] wp_mailchimp_jobs table contains?That appears to be from a different Mailchimp plugin. Possibly the one below?
Forum: Plugins
In reply to: [Disable User Login] Date user account was disabled/enabledThe plugin doesn’t currently do this, but we will consider it for a future release. There is an action hook
disable_user_login.user_disabled
that fires and passes the$user_id
as a parameter which you could use to store the date the user was disabled in a user_meta key.Example:
add_action( 'disable_user_login.user_disabled', function( $user_id ) { update_user_meta( $user_id, '_disabled_at', current_time( 'timestamp' ) ); }, 10, 1 );
Then, you could check the
_disabled_at
user meta key to see when they were last disabled.- This reply was modified 2 years, 10 months ago by Saint Systems.
Forum: Plugins
In reply to: [Disable User Login] Customize Message for disabled users?Yes, please see the hook details here (https://github.com/saintsystems/disable-user-login/blob/master/README.md#customize-disabled-user-message).
Please update to the latest version (v2.4.8) and this issue should be resolved.
Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Import previous ordersWe do have a script available that can be used to process previous orders. Please contact us via our help center https://support.saintsystems.com/hc/ to open a request and we can work with you to process previous orders.
Forum: Plugins
In reply to: [WP WooCommerce Mailchimp] Subscription Failure ErrorWe published another small update v2.4.8.
Please update to the latest version and if it happens again, please contact us at https://support.saintsystems.com/hc/ to open a ticket so we can better troubleshoot the issue.