WordPress Social Warfare插件远程命令执行漏洞预警(CVE-2019-9978)

时间:2019-10-17 13:20:02来源:信息安全服务部作者:梦之想科技

Social-warfare官方于3月22日发布新版本并修复了一个官方定级为严重的漏洞,漏洞编号为 CVE-2019-9978,影响到Social Warfare Plugin 3.5.3之前的所有版本。

漏洞简介

严重程度:高危

CVE编号:CVE-2019-9978

影响版本:social-warfare<=3.5.2


漏洞成因


CVE-2019-9978包含两个漏洞:远程命令执行、存储型XSS漏洞。

image.png

此处调用了is_admin()函数,is_admin只会检查请求后台控制面板页面是否为管理员,不会阻止其他未授权访问。

漏洞点在social-warfare\lib\utilities\SWP_Database_Migration.php的250行中的eval()函数,通过该函数能够执行定义在$_GET[‘swp_url’]中的PHP代码。

image.png

231行处,服务器获取swp_url参数,file_get_contents没有经过过滤,直接读取参数调用的文件内容存储到$options,然后将拼接处理过的内容存入到$array,最后把$array带入到eval参数中执行,从而造成代码执行。

image.png


漏洞危害


代码没有对参数进行过滤,导致攻击者可构造恶意攻击代码,越权,直接造成远程命令执行漏洞。


处置建议


升级social-warfare插件到最新版本。