Pingback Problems with Bad Behavior v1.2.2 (26 posts)

  1. A new feature in Bad Behavior v1.2.2 blocks all requests that carry a blank user-agent string. This is actually a good thing, because blank user-agents appear to have become a popular technique among spammers to avoid basic user-agent blocks. Generally, if you found a legitimate request to have been blocked by the new blank user-agent filtering, you would add the IP of that request to your whitelist in order to allow it to pass by Bad Behavior next time. Unfortunately, this feature also cripples WordPress' ability to send pingbacks.

    WordPress seems to confirm its received pingbacks using a blank user-agent, and any attempt to send a pingback while using Bad Behavior v1.2.2 will fail, because the confirmation request from the pinged blog will be blocked by Bad Behavior for having a blank user-agent. There are currently two ways to prevent this. You could add the IPs for every WordPress blog that you know to your whitelist, or you could disable the blank user-agent block by removing lines 49-52 of bad-behavior-user-agent.php, as detailed in Changeset 3535. Since Michael and I believe that this is actually a WordPress problem, I have submitted Bug #1713, which requests that future versions of WordPress identify themselves with a simple "WordPress" user-agent, rather than a blank user-agent.

  2. Mark (podz)
    Support Maven
    Posted 9 years ago #

    What would stop a WordPress spam-blog ? Or would regular checks kick in ?

  3. error
    Posted 9 years ago #

    Bad Behavior won't stop a spamblog; it wasn't designed to.

  4. error
    Posted 9 years ago #

    I've added a patch to bug 1713 which will send a proper User-Agent on those outgoing connections. Enjoy!

    The blog that sends you a pingback must have this patch applied, in order for Bad Behavior to allow the pingback.

  5. Is this patch safe for use with WP v1.5.x? Or, is it v1.6-only?

  6. error
    Posted 9 years ago #

    The patch was made against 1.5.2. It should apply cleanly to 1.5.2 or current 1.6 SVN code.

  7. Excellent! Thank you for the patch!

  8. Update: Bug #1713 has been officially addressed and fixed by Changeset #2933. Thanks, Ryan!

  9. Ajay
    Posted 9 years ago #

    Thanks for getting this fixed macmanx, error and Ryan :)

  10. Asecondforever
    Posted 9 years ago #

    I noticed a few days ago that my posts seemed to stop showing up on Technorati and some other services. Pings were not getting through - or something. After much tinkering and researching here today, I finally deactivated Bad Behavior (version 1.2.2) and found that that fixed the problem (at least with Technorati... haven't tried the others) So it seems to be the result of the bug/Bad Behavior issue mentioned here. Does that actually make sense?

    The strange thing is that Technorati was picking up my posts with no problem prior to just a few days ago.

    Anyway, as a non-coder, but one who can follow simple instructions (I hope), do I need to write in the changeset #2933 mentioned above (should be able to do that), or would deleting Bad Behavior and upgrading to the new version solve the problem? Do I do one, or both? Thanks.

    (BTW, while my blog is only a few months old, I'm happy to say that Bad Behavior has not let one single piece of spam through since the say I launched the site. :) )

  11. Asecondforever, please upgrade to Bad Behavior v1.2.4, and your troubles should be over.

  12. Asecondforever
    Posted 9 years ago #

    Thanks macmanx!

  13. Asecondforever
    Posted 9 years ago #

    Hmmm, well I've upgraded to Bad Behavior v1.2.4, but the problem persists. Posts aren't being picked up by Technorati. FWIW, it seemed to begin a few days ago when I tried to "claim" my blog on Technorati. The claiming process failed and gave me a message saying my site was "unreachable." That problem persists as well.

    So Technorati (and it seems at least Blogdigger and blo.gs as well... IceRocket seems to pick up the posts, albeit with a delay of about a half hour) is having trouble working with my site's pings. Now, as mentioned above, it does seem to involve Bad Behavior, as deactivating it seemed to solve the problem. Should I apply the changeset above, or does that not make any sense now that I've upgraded to the new version of Bad Behavior? Any other thoughts? Thanks for the help.

  14. Does your Bad Behavior log have any mentions of Technorati in it?

  15. Asecondforever
    Posted 9 years ago #

    Hmmm, interesting. Yes Technorati is in there over and over -- all the times I've tried to ping them I guess. Looks like it's giving Technorati a 412 error code every time.

    (Oddly, the date on all those entries is Dec. 11, though It's still Dec 10 here... well I don't know where Technorati is located.)

    [Edit] Oh, I should add that I even tried applying the changeset above, but that didn't seem to make a difference. So for now I'm back to the original WP code. I've retested with BB deactivated and, again, Technorati did pick up the post after about 10 minutes under those conditions.

  16. For the entries which mention Technorati, what does it say under the "http_user_agent" and "denied_reason" columns? And, are you sure that you are currently running Bad Behavior v1.2.4?

  17. Asecondforever
    Posted 9 years ago #

    http_user_agent is "Technoratibot/0.7"

    "denied_reason" is "I know you and I don't like you, dirty spammer,"

    Unless something left over in the DB (or some such) is affecting things, then I'm running v1.2.4. I completely deleted the older version before installing v1.2.4 (not necessary, I don't think, but...), and 1.2.4 is what it says on the admin plugin management page.

  18. Interesting. In this case, I recommend clearing all of the entries from your log table. That should fix it. Or, you could deactivate Bad Behavior, delete the log table, and then reactivate Bad Behavior.

  19. Asecondforever
    Posted 9 years ago #

    Okay, thanks macmanx. I'll try that. Can I assume that in phpMyAdmin, that means simply deleting those entries in the section under "Browse" where I found those entries. I don't need to go into "SQL" or "Structure," do I?

    Thanks for sticking with this. I may actually get it solved. :) (May need to come back to it in the a.m. though.)

    [edit] Do I just click "Empty"?

  20. error
    Posted 9 years ago #

    Read this:


    I'm serious. Read it.

    I can't do anything about this particular problem until SOMEBODY actually sends me logs showing that Technorati's bot is being blocked. Now go read it.

  21. Yes, first export the log table and send it to Michael (see the link in the post above) and briefly explain the Technorati troubles and the fact that you were using v1.2.2 when it happened. Then, hit the "Empty" button for the log table.

  22. Asecondforever
    Posted 9 years ago #

    Okay Michael and macmanx, I will do as instructed tomorrow. (It's too late for it tonight as I've never tried exporting anything from phpMyAdmin, and don't want to get into something new when I'm not alert.) Thanks again.

  23. Asecondforever
    Posted 9 years ago #

    As an update, I did export the log table and sent it to Michael. He found some pertinent info in it and informed Technorati so that they might make the needed changes in their bot.

    I then emptied the log table. That seems to have Technorati now picking up my posts. So that's some success. :) However, Blogdigger still isn't picking them up. (Neither is Blo.gs, but their service seems pretty limited right now, so I don't make much of that.) I notice that now, approaching two hours after emptying the table, there still has been no new table created. i.e., having refreshed the Bad Behavior log, "Browse" is still not clickable. I don't know how to interpret that, don't know if a new table would appear as soon as anything is blocked or only at some other intervals. If the former, then it seems Blogdigger's bot (not to mention spammers) hasn't even come to the site yet.

    I don't need to do anything special to allow a new table to begin to be created, do I?

    At any rate, thanks for the help. Looks like I've basically got it sorted out. :)

    Oh, and I neglected to deactivate Bad Behavior before emptying the table. Hope that wasn't an error. I did deactivate it and reactivate it afterward. (Can you tell I'm an expert at this stuff? :-/)

  24. Do this to fix your log problem:

    1. Check the bad-behavior-wordpress.php file. Make sure that you have $wp_bb_logging set to TRUE.

    2. Deactivate the Bad Behavior plugin.

    3. Delete (drop) the Bad Behavior log table.

    4. Activate the Bad Behavior plugin.

  25. Asecondforever
    Posted 9 years ago #

    Thanks macmanx. Actually, it seemed to have worked itself out anyway. After being away for a while, I came back to find a new log table had been started, and had a couple of entries. Just for the practice, though, I went ahead and stepped throught the procedures you outlined above. :)

    I guess Blogdigger just isn't responding to some pings. Overloaded, malfunctioning, or whatever...

  26. error
    Posted 9 years ago #

    The issue with technorati should be resolved. If it isn't, let me know and I'll yell at them some more.

Topic Closed

This topic has been closed to new replies.

About this Topic