【问题描述】
近日,有项目组遇到了勒索软件攻击:勒索代码隐藏在Oracle PL/SQL Dev软件中(网上下载的破解版),里面的一个文件afterconnet.sql被黑客注入了病毒代码。这个代码会在用户连接数据库后立即执行,如果用户的账号拥有dba权限,它会在用户的数据库中创建多个存储过程和触发器,会阻止用户连接数据库。当用户重启动后,会触发病毒触发器,加密并删除sys.tab$,导致用户无法访问数据库中所有的schema, 出现“你的数据库已经被SQL RUSH team锁死,请发送5个比特币到xxxxxxxxxxx地址,….”等信息,并设置定时任务,如果在期限内不交赎金,就truncate所有的表。病毒发作危害极大,而且原厂和相关的安全厂商都很难恢复。
这个病毒为了增加破坏效果,加强隐蔽性,只有当数据库创建时间超过1200天才会爆发,有很长的潜伏期。
【检查处置】
1、在Oracle Server端检查是否有下面几个对象:
Object_name
Obeject_type
DBMS_SUPPORT_INTERNAL
TRIGGER
DBMS_SUPPORT_INTERNAL
PROCEDURE
DBMS_SYSTEM_INTERNAL
TRIGGER
DBMS_CORE_INTERNAL
TRIGGER
DBMS_SYSTEM_INTERNAL
PROCEDURE
DBMS_CORE_INTERNAL
PROCEDURE
DBMS_STANDARD_FUN9
PROCEDURE
参考SQL:
select * from dba_objects where object_name like ‘%INTERNAL%’;
2、检查PLSQL DEV安装目录,查找afterconnect.sql和login.sql文件。
其中afterconnect.sql的大小应该是0字节,login.sql打开后只有一句注释“- -Autostart Command Window script ”,如果这两个文件里有其他内容,应怀疑是病毒。
发现数据库中有病毒代码,需要立即清除,不要重启动数据库。
———————
发表评论