网站后台莫名增加N个管理员,记一次SQL注入攻击

果粉Fans 2024-04-21 20:35:11

网站没流量,但却经常被SQL注入光顾。

最近,网站真的很奇怪,网站后台不光莫名多了很多“管理员”,所有的Wordpres插件还会被自动暂停,导致一些插件支持的页面,如WooCommerce无法正常访问、以及使用。

之前简单地以为是网站管理员账号被盗,所以改密码了,并且加了登陆双重验证。没想到,后面发现网站还是会继续增加“管理员”,插件也会被继续停用。

今天查看了宝塔面板的后台防火墙,才知道用了网站用的某个插件生成的文件经常被SQL注入攻击。

即使宝塔面板拦截了不少SQL注入,但是不知道为什么,仍然有一些SQL注入成功了,所以导致后台出现不少“管理员”,以及数据库插件被停用(数据库这一行可能被删了——active_plugins)。

查看拦截日志之后,发现注入详情如下:

SQL传入值为:

q=INSERT INTO wp_usermeta(user_id,meta_key,meta_value)SELECT ID,‘wp_capabilities‘,‘a:1:{s:13:"administrator";b:1;}‘FROM wp_users WHERE user_login=‘xtw18387bb83‘;

这是一个构造的SQL语句,尝试通过HTTP请求参数q(可能代表query,即查询)来执行。这个SQL语句的目的是给用户名为xtw18387bb83的用户添加一个具有管理员权限的元数据记录。

在网上找了很多资料看到,终于知道为什么是这个CSV.php文件被注入了。——据介绍:CSV注入(CSV Injection)漏洞通常会出现在有导出文件(.csv/.xls)功能的网站中。当导出的文件内容可控时,攻击者通常将恶意负载(公式)注入到输入字段中,用户导出文件打开后,EXCEL会调用本身的动态功能,执行攻击者的恶意代码,从而控制用户计算机。

知道了原因,应该就好解决问题了。保持Nignx防火墙开启自动过滤的同时,首先拉黑所有来自攻击地的IP访问(从起始IP到终止IP,如果客户面向国内,其实可以直接禁止海外所有IP访问);其次,将被注入的访问目录/CSV/目录加入访问URL黑名单;最后,将被SQL注入的具体文件权限修改为644。当然,直接删掉相关插件应该可能会更好吧。

最后,大神们轻点喷,仅小白自我探索的解决方案,应该可以解决吧?

1 阅读:39

果粉Fans

简介:爱科技,爱生活,不爱工作