Opened 8 years ago

Closed 8 years ago

Last modified 6 years ago

#1713 closed defect (bug) (fixed)

User-Agent Used to Confirm Pingbacks Should not be Blank

Reported by: macmanx Owned by: markjaquith
Priority: high Milestone:
Component: XML-RPC Version: 1.5.2
Severity: major Keywords: pingback user-agent bg|has-patch bg|commit
Cc:

Description

[[Note: While this problem has been caused by a plugin, I do believe that it is a WordPress issue.]]

Currently, WordPress seems to confirm pingbacks using a blank user-agent. This is a common technique used by spammers to avoid spam filters, and as such, it is now blocked by Michael Hampton's "Bad Behavior" v1.2.2. 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 for having no user-agent. While this problem has been caused by a plugin, I do believe that it is a WordPress issue. WordPress should not be using common spamming techniques. And, after all, why not identify WordPress' confirmation requests with a user-agent like "WordPress"?

Michael Hampton's "Bad Behavior" can be found here: http://www.ioerror.us/software/bad-behavior/

Attachments (1)

functions.diff (477 bytes) - added by error 8 years ago.
patch wp-includes/functions.php fixes this issue

Download all attachments as: .zip

Change History (8)

  • Component changed from General to XML-RPC

The root cause of the problem is that there's a lot of duplicate code in WP as regards making outbound HTTP connections. Instead of just adding a user-agent here, I would suggest actually cleaning house and getting rid of all the duplicate code.

Yeah, we need to consolidate everything into one function, which makes judgements about what methods are supported on the server, and then behaves similarly in terms of user agent whichever method chosen.

error8 years ago

patch wp-includes/functions.php fixes this issue

  • Milestone set to 1.6

I dropped in a quick patch which puts a user-agent string in the outbound connections; it'll get you up and running for now, but long-term a lot of this duplicate code really should be consolidated.

  • Keywords bg|has-patch bg|commit added; removed
  • Owner changed from anonymous to markjaquith
  • Status changed from new to assigned

comment:6   ryan8 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [2933]) Send User-Agent when confirming pingbacks. Props error. fixes #1713

  • Milestone 2.0 deleted

Milestone 2.0 deleted

Note: See TracTickets for help on using tickets.