A vulnerability in the popular WP Super Cache plug-in for WordPress could allow attackers to inject malicious scripts into websites. The scripts, when loaded by administrators, could trigger unauthorized actions.
WordPress websites are a popular target for hackers and many of them are compromised due to plug-in vulnerabilities. Just on Tuesday, the FBI warned that attackers sympathetic to the extremist group ISIS—also known as ISIL—have defaced many websites by exploiting known vulnerabilities in WordPress plug-ins.
The persistent cross-site scripting (XSS) flaw in WP Super Cache can be exploited by sending a specifically crafted query to a WordPress website with the plug-in installed, according to Marc-Alexandre Montpas, a senior vulnerability researcher at Web security firm Sucuri.
The attack could be used to inject malicious scripts into a page that lists the files cached by the plug-in, and which is accessible only to administrators. As such, in order for the malicious code to be executed, the page must be viewed by an administrator.
“When executed, the injected scripts could be used to perform a lot of other things like adding a new administrator account to the site, injecting backdoors by using WordPress theme edition tools, etc.,” Montpas, who found the vulnerability, said Tuesday in a blog post.
WP Super Cache can be used to optimize WordPress sites by converting dynamically generated pages into static HTML files that are then served to visitors. This can be very helpful for websites that receive a lot of traffic, because it reduces server resource and bandwidth consumption.
However, replacing PHP-generated pages with static, cached copies has its downfalls. The biggest one is that whenever there are changes to a page, the corresponding cached file needs to be regenerated.
As outlined in an older bug entry, after making tweaks to a page, administrators might need to look at the list of cached files to know which one to delete. So, the administrative action needed to exploit the vulnerability found by Montpas is not uncommon.
According to statistics from the official WordPress plug-in directory, the WP Super Cache plug-in has over one million active installations. In order to be protected, WordPress site owners should upgrade the plug-in to the latest version—1.4.4 at the time of this article.