WordPress.org

Make WordPress Core

Opened 9 years ago

Closed 9 years ago

Last modified 7 years ago

#1713 closed defect (bug) (fixed)

User-Agent Used to Confirm Pingbacks Should not be Blank

Reported by: macmanx Owned by: markjaquith
Milestone: Priority: high
Severity: major Version: 1.5.2
Component: XML-RPC Keywords: pingback user-agent bg|has-patch bg|commit
Focuses: 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 9 years ago.
patch wp-includes/functions.php fixes this issue

Download all attachments as: .zip

Change History (8)

comment:1 error9 years ago

  • 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.

comment:2 markjaquith9 years ago

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.

error9 years ago

patch wp-includes/functions.php fixes this issue

comment:3 error9 years ago

  • 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.

comment:4 error9 years ago

  • Keywords bg|has-patch bg|commit added; removed

comment:5 markjaquith9 years ago

  • Owner changed from anonymous to markjaquith
  • Status changed from new to assigned

comment:6 ryan9 years ago

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

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

comment:7 anonymous7 years ago

  • Milestone 2.0 deleted

Milestone 2.0 deleted

Note: See TracTickets for help on using tickets.