近期,深信服安全团队追踪到国内出现了针对MySQL数据库的勒索攻击行为,截至目前已监测到的攻击行为主要体现为对数据库进行篡改与窃取。在此,深信服安全团队提醒广大用户注意防范(特别是数据库管理员),保护好核心数据资产,防止中招,目前在国内已有大型企业与普通用户中招案例。
此次勒索攻击行为,与以往相差较大,表现为不在操作系统层面加密任何文件,而是直接登录MySQL数据库,在数据库应用里面执行加密动作。加密行为主要有,遍历数据库所有的表,加密表每一条记录的所有字段,每张表会被追加_encrypt后缀,并且对应表会创建对应的勒索信息。例如,假设原始表名为xx_yy_zz,则加密后的表名为xx_yy_zz_encrypt,同时会新增对应勒索信息表xx_yy_zz_warning,_encrypt和_warning成对出现:
被加密后的表_encrypt为业务数据,而_warning是新增的,深信服安全团队选取其中一张新增勒索信息,打开,发现信息如下:
可以看到,在新增表里面,黑客留下了message字段,为勒索信息;btc字段,为黑客比特币钱包地址;site字段,为黑客预留暗网信息网站,下图是暗网预留网页,显示这是一个提醒中招用户交赎金的页面:
在Linux服务器上进入MySQL应用,读取到勒索信息如下:
在数据库存储目录中,显示相关存储文件确实被加密:
加密过程
深信服安全专家排查发现,黑客在拿到MySQL账号密码之后,登录了MySQL数据库,执行了SQL语句,对表进行加密操作。黑客的攻击手法较为新颖,采用了MySQL自带的AES加密函数对数据库中的数据进行加密,加密步骤如下图所示(这里以原始表g***ra为例):
DROP table if exists g***ra_encrypt:
判断表是否存在,如果存在则删除。
DROP table if exists g***ra_WARNING:
删除一个已存在的勒索信息的表。
create table g***ra_encrypt select * from g***ra:
将原始表中的数据复制到加密表中。
alter table g***ra_encrypt MODIFY COLUMN sapcode blob:
将加密表中的字段类型修改为blob,该操作目的用于存放加密后的数据,某些原始的字段类型保存的数据太少,无法存放AES加密后的数据。
update g***ra_encrypt SET sapcode = AES_ENCRYPT(sapcode, '9nceqPTalzWaXG1NIX3t0hgewMPvr6f7'):
关键的一步,使用MySQL自带的AES_ENCRYPT()函数对数据进行加密更新。
DROP table if exists g***ra:
删除原始表,之后数据库中就只剩下了被加密的表。
之后又使用sql语句创建了一个表名跟原始表类似,用于存放勒索信息的表:
g***ra_WARNING,表中存放有勒索信、比特币钱包地址、暗网网址、密钥证明、表数据结构和私钥。
此次攻击行为相比其他MySQL攻击更近泛化,国内除了多家大型企业中招之外,近日也有普通用户搭建的MySQL数据库中招。这里再次提醒大家,不论业务规模多大,做好安全防范。
解决方案
1、在网络边界防火墙上全局关闭3306端口或3306端口只对特定IP开放;
2、开启MySQL登录审计日志,尽量关闭不用的高危端口;
3、建议MySQL数据库服务器前置堡垒机,保障安全,且审计和管控登录行为;
4、每台服务器设置唯一口令,且复杂度要求采用大小写字母、数字、特殊符号混合的组合结构,口令位数足够长(15位、两种组合以上);
5、截止目前,已感染用户以暴露在公网MySQL账号密码被窃取为主,提醒广大数据库管理员,切勿为了运维方便,牺牲数据安全。
补充说明
已在Linux服务器上和Windows服务器上发现MySQL数据库被加密的案例,针对Windows用户,建议使深信服免费查杀工具:
64位系统下载链接:
http://edr.sangfor.com.cn/tool/SfabAntiBot_X64.7z
32位系统下载链接:
http://edr.sangfor.com.cn/tool/SfabAntiBot_X86.7z
咨询与服务
您可以通过以下方式联系我们,获取关于MySQL勒索病毒的免费咨询及支持服务:
1)拨打电话400-630-6430转6号线(已开通勒索软件专线)
2)关注【深信服技术服务】微信公众号,选择“智能服务”菜单,进行咨询
3)PC端访问深信服区 bbs.sangfor.com.cn,选择右侧智能客服,进行咨询
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...