上周oracle数据库遭到了比特币勒索攻击,登录数据库时,提示数据库被锁死,黑客提示发送5个比特币可以解锁。
在数据库的日志中,我们可以看到大概如下信息:
ORA-20315: 你的数据库已被SQL RUSH Team锁死 发送5个比特币到这个地址 166xk1FXMB2g8JxBVF5T4Aw1Z5aZ6vSE (大小写一致) 之后把你的Oracle SID邮寄地址 sqlrush@mail.com 我们将让你知道如何解锁你的数据库
Hi buddy, your database was hacked by SQL RUSH Team, send 5 bitcoin to address 166xk1FXMB2g8JxBVF5T4Aw1Z5aZ6vSE (case sensitive), after that send your Oracle SID to mail address sqlrush@mail.com, we will let you know how to unlock your database.
根据分析,这个问题的原因其实是某些开发人员从某些不明来源下载了PL/SQL Developer工具(尤其是各种绿色版、破解版),在这个工具的安装目录中存在一个脚本文件:AfterConnect.sql,正常安装时这个脚本是空文件,但是被注入的文件,该脚本包含了一系列的JOB定义、存储过程和触发器定义。
其实几乎绝大多数客户端工具,在访问数据库时,都可以通过脚本进行一定的功能定义,而这些脚本往往就是安全问题的漏洞之一。
很多人也许跟我一样对勒索软件知道的比较少,为了以后能够避免类似安全事件的发生,特别是勒索软件对数据库的攻击,我也对勒索软件做了一些了解,现推荐几篇相关的文章与大家分享。
分享文章:
《勒索软件系列:ORACLE数据库遭比特币勒索攻击原因揭秘》
如今各种勒索病毒层出不穷,传播方式多种多样,加密方式也越来越复杂,一旦被加密,想解密,可能性非常之低,或者几乎不可能。
目前我们业务开发还是比较依赖于数据库的,一旦数据库挂掉,我们的很多工作都没有办法正常继续,这次的比特币攻击事件告诉我们平时一定要做好安全防护工作,比如数据备份、定期更改密码、禁止一些危险性操作(提权、代码注入等操作几乎黑客攻击的标准配置,禁止这些操作的执行或者仅仅授权给特定的账户和人员执行这些操作基本就可以杜绝勒索软件的最后攻击)、业务数据隔离、避免设置缺省的常见的账户名、组名、服务名等。
最后我想说,安全防御从来就不是依靠购买安全设备来完成的,而是需要我们落实一些基本的安全实践。