If you own a WordPress-powered website or are considering using WordPress as your CMS, you may be concerned about potential WordPress security issues. In this post, we’ll outline a few of the most common WordPress security vulnerabilities, along with steps you can take to secure and protect your WordPress site.
Is WordPress Secure?
The answer to the question “is WordPress secure?” is it depends. WordPress itself is very secure as long as WordPress security best practices are followed.
According to the latest usage of content management systems data from W3Techs, WordPress powers 34% off all websites. So WordPress security vulnerabilities are inevitable because not all users are careful, thorough, or security conscious with their websites. If a hacker can find a way into one of the hundreds of millions of WordPress websites on the web, they can scan for other websites that are also running insecure setups of old or insecure versions of WordPress and hack those too.
WordPress runs on open source code and has a team specifically devoted to finding, identifying and fixing WordPress security issues that arise in the core code. As security vulnerabilities are disclosed, fixes are immediately pushed out to patch any new security issues discovered in WordPress. That’s why keeping WordPress updated to the latest version is incredibly important to the overall security of your website.
It’s important to note that WordPress security vulnerabilities extend beyond WordPress core into the themes or plugins you install on your site. According to a recent report by wpvulndb.com, of the 2,837 known WordPress security vulnerabilities in their database:
- 75% are from WordPress plugins
- 14% are from core WordPress
- 11% are from WordPress themes
5 Common WordPress Security Issues
The most common WordPress security issues occur before or just after your site has been compromised. The goal of a hack is to gain unauthorized access to your WordPress site on an administrator-level, either from the frontend (your WordPress dashboard) or on the server-side (by inserting scripts or malicious files).
Here are the 5 most common WordPress security issues you should know about:
1. Brute Force Attacks
WordPress brute force attacks refer to the trial and error method of entering multiple username and password combinations over and over until a successful combination is discovered. The brute force attack method exploits the simplest way to get access to your website: your WordPress login page.
WordPress, by default, doesn’t limit login attempts, so bots can attack your WordPress login page using the brute force attack method. Even if a brute force attack is unsuccessful, it can still wreak havoc on your server, as login attempts can overload your system and slow down your site. While you’re under a brute force attack, some hosts may suspend your account, especially if you’re on a shared hosting plan, due to system overloads.
2. File Inclusion Exploits
After brute-force attacks, vulnerabilities in your WordPress website’s PHP code are the next most common security issue that can be exploited by attackers. (PHP is the code that runs your WordPress website, along with your plugins and themes.)
File inclusion exploits occur when vulnerable code is used to load remote files that allow attackers to gain access to your website. File inclusion exploits are one of the most common ways an attacker can gain access to your WordPress website’s wp-config.php file, one of the most important files in your WordPress installation.
3. SQL Injections
Your WordPress website uses a MySQL database to operate. SQL injections occur when an attacker gains access to your WordPress database and to all of your website data.
With an SQL injection, an attacker may be able to create a new admin-level user account which can then be used to login and get full access to your WordPress website. SQL injections can also be used to insert new data into your database, including links to malicious or spam websites.
4. Cross-Site Scripting (XSS)
84% of all security vulnerabilities on the entire internet are called Cross-Site Scripting or XSS attacks. Cross-Site Scripting vulnerabilities are the most common vulnerability found in WordPress plugins.
Malware, short for malicious software, is code that is used to gain unauthorized access to a website to gather sensitive data. A hacked WordPress site usually means malware has been injected into your website’s files, so if you suspect malware on your site, take a look at recently changed files.
Although there are thousands of types of malware infections on the web, WordPress is not vulnerable to all of them. The four most common WordPress malware infections are:
- Drive-by downloads
- Pharma hacks
- Malicious redirects
Each of these types of malware can be easily identified and cleaned up either by manually removing the malicious file, installing a fresh version of WordPress or by restoring your WordPress site from a previous, non-infected backup.
What Makes Your WordPress Site Vulnerable to WordPress Security Issues?
Several factors can make your WordPress site more vulnerable to successful attacks.
1. Weak Passwords
Using a weak password is one of the biggest security vulnerabilities you can easily avoid. Your WordPress admin password should be strong, include multiple types of characters, symbols or numbers. In addition, your password should be specific to your WordPress site and not used anywhere else.
Curious if your password has been compromised? The iThemes Security plugin checks if your password has appeared in a data breach. A data breach is typically a list of usernames, passwords and often other personal data that was exposed after a site was compromised. With the Refuse Compromised Passwords setting, you can refuse compromised passwords and force users to use passwords which do not appear in any password breaches tracked by the Have I Been Pwned API.
2. Not Updating WordPress, Plugins or Themes
Simply put: You’re at risk for an attack if you are running outdated versions of WordPress, plugins and themes on your website. Version updates often include patches for security issues in the code, so it’s important to always run the latest version of all software installed on your WordPress website.
Updates will appear in your WordPress dashboard as soon as they’re available. Make a practice of running a backup and then running all available updates every time you login to your WordPress site. While the task of running updates may seem inconvenient or tiresome, it’s an important WordPress security best practice.
If you manage more than one WordPress website, you can use a time-saving tool like iThemes Sync Pro to better manage updates. Instead of logging in to each individual site, gives you one dashboard to manage updates for multiple WordPress sites from one place.
3. Using Plugins and Themes from Untrustworthy Sources
Poorly-written, insecure, or outdated code is one of the most common ways attackers can exploit your WordPress website. Since plugins and themes are potential sources of security vulnerabilities, as a security best practice, only download and install WordPress plugins and themes from reputable sources, such as from the WordPress.org repository, or from premium companies that have been in business for a while. Also, avoid bootleg or torrented “free” versions of premium themes and plugins, as the files may have been altered to contain malware. The cost of these “free” plugins and themes can come at the expense of your site’s security.
4. Using Poor-Quality or Shared Hosting
Since the server where your WordPress website resides is a target for attackers, using poor-quality or shared hosting can make your site more vulnerable to being compromised. While all hosts take precautions to secure their servers, not all are as vigilant or implement the latest security measures to protect websites on the server-level.
Shared hosting can also be a concern because multiple websites are stored on a single server. If one website is hacked, attackers may also gain access to other websites and their data. While using a VPS, or virtual private server, is more expensive, it assures your website is stored on its own server.
8 Actions You Can Take Today to Protect Your WordPress Site
1. Use a strong password for every online account.
If you’re currently using a password that contains fewer than 6 characters, change it now. If you’re currently using a password on more than one login, change it now. If you’ve had the same password for more than six months, change it now. If you’re reusing a password for multiple online accounts, change it now.
2. Install a WordPress security plugin.
Using a WordPress security plugin is a great way to take care of additional security measures on your WordPress website. iThemes Security offers a one-click WordPress security check that activates the most important and recommended WordPress security settings. A good WordPress security plugin can handle the more technical aspects of your site’s security, so you don’t have to be a security expert to use one.
3. Enable WordPress two-factor authentication.
Two-factor authentication adds an extra layer of protection to your WordPress login. In addition to your password, an additional time-sensitive code is required from another device such as your smartphone, in order to login. Two-factor authentication is one of the best ways to lock down your WordPress login and nearly completely minimizes the potential of successful brute force attacks.
4. Keep your WordPress site updated.
Again: keeping your WordPress site updated is one of the best ways you can avoid potential WordPress security issues. Login to your WordPress site now and run any available updates for WordPress core, your themes or plugins. If you’re using premium WordPress plugins or themes, make sure you have a current license to ensure you’re getting updates and not running outdated versions.
5. Set up proper permissions on your server.
Ensure proper permissions are set on all directories on your server. Proper permissions dictate who has permission to read files, create and edit files.
6. Run scheduled malware scans.
Keep tabs on potential malware infections with scheduled malware scans. Most services, like the malware scan offered in the iThemes Security Pro plugin, give you a report on your website’s malware status along with several other blacklisting statuses.
7. Have a reliable WordPress backup plan.
Having a WordPress backup plan is an important component of your WordPress security strategy. Set up scheduled backups to run and make sure you’re sending your backups safely off-site to a secure, remote WordPress backup location. Also, make sure your backup strategy has a restore component in case you need to restore your site from a clean backup.
8. Activate WordPress Brute Force Protection.
Protecting yourself from brute force attacks is another way to reduce any potential vulnerabilities or server overloads. Use a service that includes both local and network brute force protection to ban users who have tried to break into other sites from also breaking into yours.