Make WordPress Core

Opened 18 years ago

Closed 18 years ago

Last modified 17 years ago

#1713 closed defect (bug) (fixed)

User-Agent Used to Confirm Pingbacks Should not be Blank

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


[[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:

Attachments (1)

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

Download all attachments as: .zip

Change History (8)

#1 @error
18 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.

#2 @markjaquith
18 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.

18 years ago

patch wp-includes/functions.php fixes this issue

#3 @error
18 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.

#4 @error
18 years ago

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

#5 @markjaquith
18 years ago

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

#6 @ryan
18 years ago

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

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

#7 @(none)
17 years ago

  • Milestone 2.0 deleted

Milestone 2.0 deleted

Note: See TracTickets for help on using tickets.