Title: programmerbear's Replies | WordPress.org

---

# programmerbear

  [  ](https://wordpress.org/support/users/programmerbear/)

 *   [Profile](https://wordpress.org/support/users/programmerbear/)
 *   [Topics Started](https://wordpress.org/support/users/programmerbear/topics/)
 *   [Replies Created](https://wordpress.org/support/users/programmerbear/replies/)
 *   [Reviews Written](https://wordpress.org/support/users/programmerbear/reviews/)
 *   [Topics Replied To](https://wordpress.org/support/users/programmerbear/replied-to/)
 *   [Engagements](https://wordpress.org/support/users/programmerbear/engagements/)
 *   [Favorites](https://wordpress.org/support/users/programmerbear/favorites/)

 Search replies:

## Forum Replies Created

Viewing 6 replies - 1 through 6 (of 6 total)

 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/page/2/#post-10252432)
 * Just FYI, MailBard (my MailPoet 2 fork) is now live on WordPress.org if anyone
   wants to try it: [https://wordpress.org/plugins/mailbard-newsletters/](https://wordpress.org/plugins/mailbard-newsletters/)
 * [@pictureitsolved](https://wordpress.org/support/users/pictureitsolved/) I’ll
   look into the invisible captchas issue and see what I can do. 🙂
 * I don’t want to hijack this thread to talk about MailBard so if anyone has more
   to say please feel free to start a thread through our new plugin page! ([https://wordpress.org/plugins/mailbard-newsletters/](https://wordpress.org/plugins/mailbard-newsletters/))
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/page/2/#post-10223166)
 * Hey everyone, thanks for your patience. I have a solution for this now.
 * Because I use MailPoet 2 and have for a long time, I have a lot of newsletters
   and data which I’m not willing to give up by switching to MailPoet 3. I also 
   have some addons I’ve paid for, for example MailPoet Premium. Unfortunately there
   are a lot of addons out there for MailPoet 2 which either have not been updated
   to work with MailPoet 3, or would have to be re-purchased.
 * So here’s the situation as I see it:
    – MailPoet is abandoning version 2 – They
   won’t fix obvious security issues – We can’t keep all our data if we “upgrade”–
   Even if we did upgrade, we either have to re-purchase addons or live without 
   them
 * For these reasons, I’ve decided to fork MailPoet 2. My fork is called MailBard.
 * In MailBard, I started with the exact code from MailPoet 2.8.2. Then I made a
   few modifications:
 * 1) Added a nonce-checking system for ajax sign up requests. In my testing, this
   has stopped the ongoing attack we have all been experiencing. I also believe 
   I have done this in a way that avoids any issues with caching plugins (which 
   was MailPoet’s main objection to adding nonces here).
 * 2) Removed the 2000 subscriber limit.
 * 3) Various minor text and branding changes (from MailPoet to MailBard).
 * The advantage of MailBard is this is a 100% drop-in replacement for MailPoet 
   2. All your data is preserved, and all your MailPoet 2-based addons will continue
   to work. Simply deactivate MailPoet, then activate MailBard, and you’re good 
   to go.
 * Going forward, I will be taking responsibility for security updates and anything
   else needed for MailBard. I wish MailPoet all the best with version 3 and I sincerely
   hope they continue to enjoy success with it… however I think many of us feel 
   they have handled the MailPoet 2 to MailPoet 3 “upgrade” poorly and not really
   considered the needs of their existing user base. So if any of you, like me, 
   have a lot invested in MailPoet 2 and “upgrading” is just not practical, I would
   invite you to give MailBard a try.
 * If anyone is interested in seeing my exact code changes, you can find them on
   GitHub here: [https://github.com/mailbard/mailbard-newsletters](https://github.com/mailbard/mailbard-newsletters)
 * If you want to test out the latest MailBard release, for the time being you can
   get it here: [http://www.mailbard.com/](http://www.mailbard.com/) (I’ll be updating
   this site more in the coming days and weeks)
 * If any of you encounter any issues whatsoever, please let me know by contacting
   me through [http://www.mailbard.com/](http://www.mailbard.com/) and I’ll take
   a look soon as I can. (I do have a day job so I may not be able to reply immediately,
   but I will as soon as I can.)
 * I have submitted MailBard to the WordPress Plugins Review team. They required
   a few changes (mostly to do with code inherited from MailPoet 2.8.2) and I am
   working with them to hopefully address their requirements, so we can get MailBard
   in the plugins repo officially. (*keeps fingers crossed*)
    -  This reply was modified 8 years ago by [programmerbear](https://wordpress.org/support/users/programmerbear/).
      Reason: fix typos
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/page/2/#post-10187957)
 * [@nsqrt](https://wordpress.org/support/users/nsqrt/) I’m working on a long-term
   solution to this problem myself. I’ll keep everyone posted.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/page/2/#post-10155692)
 * MailChimp?
 * I like MailPoet. I like having control over my email lists by keeping them on
   my own site. I generally try to avoid cloud-based/subscription-based things whenever
   practical, for this very reason.
 * I was encouraged by the MailPoet team’s initial reply, thinking that maybe they
   would do something about this. But here we are, more than a week later, no updates,
   no fix. This is still a very serious issue, at least to me. But it seems like
   the “official” answer is just “turn on captchas, we’re not going to do anything
   else.”
 * Captchas are not an acceptable solution for me. For people who are trying to 
   build their list, turning on captchas means you’ll lose probably half of your
   otherwise legitimate sign ups. MailChimp doesn’t require captchas, so why can’t
   MailPoet figure out a solution?
 * I’m still confident that nonces are the way to solve this. That’s what they were
   created for. I understand the caching issue, but with a little ingenuity I believe
   this could be overcome. I think the truth is they just don’t want to put the 
   effort into MailPoet 2.x — they want everyone to switch to 3.x. But there are
   legitimate reasons a lot of people want to stay on 2.x.
 * If the MailPoet team doesn’t want to maintain 2.x, especially with important 
   security issues like this… maybe somebody from the community should fork it. 
   If there was a 100% compatible fork we could all switch to, minus the security
   holes, I think a lot of people would switch.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/#post-10127052)
 * Thanks for the reply [@wysija](https://wordpress.org/support/users/wysija/). 
   I know you are no longer officially supporting the 2.x line, but since this seems
   like a pretty serious security issue I’m glad you are looking into it.
 * You’re right, banning IPs is not the best solution since the attackers can change
   them any time they want. I haven’t tried reCAPTCHA, for now I’m basically just
   using list #1 as a honeypot instead. I don’t use this list anyway, so whenever
   a request comes in for list #1 I discard it before it can be added. (I added 
   some code to my functions.php to do this automatically… it’s on my blog post 
   now if anyone wants it.)
 * I think the root problem here is that there’s no nonce checking for ajax requests.
   MailPoet has a method for checking nonces, but for whatever reason it is not 
   being used for ajax requests. If nonces were required, this attack would be over
   and the captcha would not be needed. Hopefully this can be implemented.
 *   Forum: [Plugins](https://wordpress.org/support/forum/plugins-and-hacks/)
    In
   reply to: [[MailPoet Newsletters (Previous)] 2.8.2 exploited via admin-ajax.php](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/)
 *  [programmerbear](https://wordpress.org/support/users/programmerbear/)
 * (@programmerbear)
 * [8 years, 1 month ago](https://wordpress.org/support/topic/2-8-2-exploited-via-admin-ajax-php/#post-10125762)
 * I’m experiencing the same thing. (for more information, please read my [write-up about this](http://programmerbear.com/developing-possible-email-ddos-attack-exploiting-mailpoet-wordpress-plugin/).)
 * With all due respect, I think MailPoet should take this a little more seriously.
   Captchas are not a good solution in this case because you lose a lot of legitimate
   signups who just don’t want to be bothered with it. Really there should be some
   function in MailPoet that checks whether the sign up request was POSTed from 
   a real form on our site. Instead, it’s just letting anyone from the internet 
   POST directly to our admin-ajax.php.
 * This is impacting a lot of people.

Viewing 6 replies - 1 through 6 (of 6 total)