Host Header Injection Fix

Host Header Injection Fix

Details
View on WordPress

๐Ÿ‘‰ Enables custom headers for WP email notifications

๐Ÿ‘‰ Also provides a โ€œset it and forget itโ€ security fix for WP < 5.5

๐Ÿ‘‰ Uses only 50KB of code, so super lightweight, fast, and effective

Important

As of WordPress 5.5, this plugin no longer is necessary to fix the host-header security issue reported in Ticket #25239 finally is fixed, and mentioned in this post WordPress 5.5 Beta 4. Thank You WordPress devs!

Is this plugin still useful?

Yes, it enables you to choose the โ€œFromโ€, โ€œNameโ€, and โ€œReturn-Pathโ€ headers for all WP notification emails. And for versions of WordPress less than 5.5, this plugin continues to fix the host-header injection security issue.

Features

This simple plugin does three things:

  1. Sets custom From, Name, and Return-Path for WP notifications
  2. Fixes a security vulnerability in WordPress versions < 5.5
  3. Fixes a bug where invalid email addresses may be generated (in WordPress versions < 5.5)

Choose from the following options:

  • Use WordPress defaults (insecure for WP < 5.5)
  • Use โ€œEmail Addressโ€ from WP General Settings
  • Use a custom name and address

Plus there is an option to use the specified From address as the Return-Path header.

Why?

The security issue fixed by this plugin has been known about since way back in WordPress version 2.3. There has been some talk about fixing, but nothing has been implemented. While the issue does not affect all sites, it does affect a good percentage of them, including some of my own projects. So, not wanting to get hacked, I decided to write my own solution. Hopefully this issue gets fixed in a future version of WordPress, and this plugin will become unnecessary.

As a bonus, setting an explicit From address resolves a long-standing bug whereby an invalid email address is generated under the following conditions:

  • A โ€œFromโ€ address is not set,
  • And the $_SERVER['SERVER_NAME'] is empty

So by explicitly setting a โ€œFromโ€ address, we prevent this bug from happening.

Security Issue

What is the security issue addressed by this plugin? Follows is a quick summary. To learn more in-depth, check out the resources linked in the next section.

  • WP uses $_SERVER['SERVER_NAME'] to set the โ€œFromโ€ header in email notifications
  • This includes sensitive email notifications like password resets and user registration
  • In some cases, an attacker could modify the โ€œFromโ€ header and intercept the email
  • Using the intercepted email, an attacker could gain access to your site and wreak havoc

More Infos

This security vulnerability is well-known and has been around for a looong time. To learn more, check out these articles:

Privacy

This plugin does not collect or store any user data. It does not set any cookies, and it does not connect to any third-party locations. Thus, this plugin does not affect user privacy in any way.

Host Header Injection Fix is developed and maintained by Jeff Starr, 15-year WordPress developer and book author.

Support development

I develop and maintain this free plugin with love for the WordPress community. To show support, you can make a donation or purchase one of my books:

And/or purchase one of my premium WordPress plugins:

Links, tweets and likes also appreciated. Thank you! ๐Ÿ™‚

Details

Plugin code:
host-header-injection-fix
Plugin version:
3.5
Author:
Outdated:
No
WP version:
4.7 or higher
PHP version:
5.6.20 or higher
Test up to WP version:
6.9
Total installations:
500
Last updated:
2026-01-29
Rating:
Times rated:
6
email
headers
injection
notification
security