超实用的脚本——检查oracle数据库是否存在潜伏的比特币勒索病毒
转载来源 : 超实用的脚本——检查oracle数据库是否存在潜伏的比特币勒索病毒 : http://www.safebase.cn/article-254989-1.html
概述
分享一个工作中经常用的一个实用脚本,主要用来检查oracle数据库是否存在潜伏的比特币勒索病毒,之所以用perl,是因为perl语言的核心是正则表达式,在文本处理上非常有优势,与python类似,但语法不同,perl的语法很灵活。下面分享下脚本内容:
checkBitAttack.pl
#!/usr/bin/perl
# 1. Get Attack Objects
my @attackObjects = `sqlplus -sL / as sysdba <<"EOF"
SET LINES 100 PAGES 10 HEAD ON FEEDBACK OFF AUTOT OFF TI OFF TIMI OFF
COL OWNER FOR A20
COL OBJECT_NAME FOR A40
COL OBJECT_TYPE FOR A10
SELECT OWNER, "||OBJECT_NAME||" OBJECT_NAME,OBJECT_TYPE,TO_CHAR(CREATED, YYYY-MM-DD HH24:MI:SS) CREATEDFROM DBA_OBJECTSWHERE OBJECT_NAME LIKE DBMS_CORE_INTERNA%OR OBJECT_NAME LIKE DBMS_SYSTEM_INTERNA%OR OBJECT_NAME LIKE DBMS_SUPPORT_INTERNA%;
EXIT
EOF
`;
my @attackObjectsCMD = `sqlplus -sL / as sysdba <<"EOF"
SET LINES 100 PAGES 10 HEAD OFF FEEDBACK OFF AUTOT OFF TI OFF TIMI OFF
SELECT DROP ||OBJECT_TYPE|| "||OWNER||"."||OBJECT_NAME||"; OBJECT_NAMEFROM DBA_OBJECTSWHERE OBJECT_NAME LIKE DBMS_CORE_INTERNA%OR OBJECT_NAME LIKE DBMS_SYSTEM_INTERNA%OR OBJECT_NAME LIKE DBMS_SUPPORT_INTERNA%;
EXIT
EOF
`;
# 2. Get Attack Job
my @attackJob = `sqlplus -sL / as sysdba <<"EOF"
SET LINES 100 PAGES 10 HEAD ON FEEDBACK OFF AUTOT OFF TI OFF TIMI OFF
SET LINE 120
COL LOG_USER FOR A20
COL WHAT FOR A60
SELECT JOB, LOG_USER, WHATFROM DBA_JOBSWHERE WHAT LIKE DBMS_STANDARD_FUN9% ;
EXIT
EOF
`;
# 2. Get Attack Job
my @attackJobCMD = `sqlplus -sL / as sysdba <<"EOF"
SET LINES 100 PAGES 10 HEAD OFF FEEDBACK OFF AUTOT OFF TI OFF TIMI OFF
SELECT -- Logon with ||LOG_USER||CHR(10)|| EXEC DBMS_JOB.BROKEN (||JOB||, TRUE)||CHR(10)|| EXEC DBMS_JOB.REMOVE(||JOB||) STMTFROM DBA_JOBSWHERE WHAT LIKE DBMS_STANDARD_FUN9% ;
EXIT
EOF
`;
# 3. Get Attack ORACHK
my @attackORACHK = `sqlplus -sL / as sysdba <<"EOF"
SET LINES 100 PAGES 10 HEAD ON FEEDBACK OFF AUTOT OFF TI OFF TIMI OFF
COL OWNER FOR A20
COL OBJECT_NAME FOR A40
COL OBJECT_TYPE FOR A10
SELECT OWNER,"||OBJECT_NAME||" OBJECT_NAME,OBJECT_TYPE,CREATEDFROM DBA_OBJECTSWHERE OBJECT_NAME LIKE ORACHK%;
EXIT
EOF
`;
# 4. Show Result
if(defined $attackObjects[2] or defined $attackJob[2])
{print "\n[Attacked] Your Database bas been Attacked !\n";# Show Objectsprint "\n1. DB Objects May Have Problems\n";print "-- =====================================================================\n";if(defined $attackObjects[2]){print "@attackObjects\nSolutions:@attackObjectsCMD\n";print "*** Operations above please do with professional engineer !!!\n";}else{print " No Abnormal Objects Found\n";}# Show Jobsprint "\n2. DB Job May Have Problems\n";print "-- =====================================================================\n";if(defined $attackJob[2]){print "@attackJob\nSolutions:@attackJobCMD\n";print "*** Operations above please do with professional engineer !!!\n";}else{print " No Abnormal Job Found\n";}# Show ORACHKprint "\n3. Table ORACHK may bave Problems\n";print "-- =====================================================================\n";if(defined $attackORACHK[2]){print "@attackORACHK\n";}else{print " No Abnormal ORACHK Table Found\n";}
}
else
{print "\n[ Safe] Your Database has not been Attacked !\n";
}
print "\n****************************************************\n";
print "\nContact me:\n";
print " Mobile: 18825144300\n";
print " Email : 1275758000@qq.com\n";
print "\n************ Copyright @ HWB ******************\n";
执行脚本要求
1、建议oracle操作系统用户执行
2、确认操作系统有perl环境(一般主流的linux平台都提供perl)
3、授权脚本后执行
执行结果如下所示:
超实用的脚本——检查oracle数据库是否存在潜伏的比特币勒索病毒相关推荐
- oracle 导入sql文件 汉字乱码_将现有的sql脚本导入 Oracle 数据库,中文乱码问题...
将现有的sql 脚本导入 Oracle数据库 比如 在windows 系统下,可以写一个 bat 来实现直接导入 如:bat 中的内容如下,logs.log 将会记录执行日志 sqlplus user ...
- oracle数据库连接检查,检查Oracle数据库的最大连接
下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. [[email protected] sql]# more check_connect_o ...
- 在Linux中通过shell脚本向oracle数据库插入数据
通过shell脚本向oracle数据库插入数据 思路 实现 shell脚本 数据文件 测试 思路 如何通过shell脚本更新数据库数据?要解决这个问题,首先,我们需要在脑中回忆一下我们通常是如何更新数 ...
- 数据库比特币勒索病毒攻击警示,云和恩墨技术通讯六月刊精选
各位亲爱的用户/读者朋友们: 为了及时共享行业案例,通告共性问题,达成知识共享和提前预防,我们整理和编辑了<云和恩墨技术通讯>(6月刊),通过对过去一段时间的知识回顾和故障归纳,以期提供有 ...
- 中招ORACLE比特币勒索病毒——处理过程详解
目录 病毒告警 事件处理 1.修改job参数,防止病毒程序自启 2.杀掉job进程,停止正在运行的病毒程序自动任务 3.禁用数据库监听 4.杀LOCAL=NO的会话 5.查找病毒程序 6 ...
- 服务器文件被篡改evopro后缀,SQLServer数据库服务器mdf文件中了勒索病毒,扩展名被篡改为.fuk25933...
SQLServer数据库服务器mdf文件中了勒索病毒,扩展名被篡改为.fuk25933 常见的扩展名如下: ReadInstructions Devos fuk25933 eking 从以下几点着手, ...
- oracle的表空间的检查,oracle数据库检查所有表空间使用率的脚本
oracle数据库检查所有表空间使用率的脚本 REM tablespace report set linesize 200 select a.tablespace_name, round(a.byte ...
- 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库...
数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...
- oracle读取表空间物理文件中数据,shell脚本读取oracle数据库数据写入到文件中
1.linux 需要用 sqlplus 客户端去连接oracle 数据库,首先需要确认有没有安装:which sqlplus 2.如果没有安装就需要先安装一下(百度) 3.配置环境变量: vim /e ...
最新文章
- 西安思源中学2021高考成绩查询入口,西安思源中学隆重举行2020-2021学年第二学期开学典礼...
- 百度输入法发布AI版本10.0,重磅推出“AI助聊”功能
- a标签的四种链接状态
- 微擎小程序怎么配置服务器域名,随便撸源码源码微擎小程序通用配置图文教程,教会你怎么配置微擎小程序!...
- freeswitch源码编译windows_【Thrift】Windows编译Thrift源码及其依赖库
- ef执行原生sql语句_EF Core中执行原生SQL语句
- 吉林大学计算机专业宿舍研究生,吉林大学计算机系的研究生宿舍怎么样?我想考那的..._在职考研_帮考网...
- 哈希表查找失败的平均查找长度_面试官:哈希表都不知道,你是怎么看懂HashMap的?...
- C语言及程序设计提高例程-17 一维数组的定义和引用
- 管理感悟:管理人员要不要技术好
- 6个常见校园网认证客户端故障原因及解决方法
- js实现导出Excel文档
- Java单例模式双检锁原理
- OpenGL ES EGL 名词解释
- ubuntu 改屏幕分辨率命令_ubuntu 修改分辨率为自定义分辨率
- 利用 IP 扩展访问列表实现应用服务的访问限制
- EasyAR4.0使用说明(Unity3D)三----平面图像跟踪扩展:视频播放,涂涂乐
- TSV文件、CSV文件
- 如何安装Python的PIL库
- MySQL数据库项目式教程思维导图
热门文章
- 计算机中丢失inetcomm,模块inetcomm.dll已加载,但找不到入口点DllRegisterServer
- jquery ajax 访问 mysql_使用ajax+jquery+php访问mysql数据库,并且达到不跳转页面的效果。。。...
- nas服务器改成网站,nas配置web服务器
- 取消hover效果_CSS3 transition过渡动画效果
- Coding the Matrix Week 1 The Vector Space作业
- android整理的一些零散笔记
- 一个迷失了本性的聊天软件,初衷不在,何其悲伤
- js返回页面并刷新页面数据
- DB2 char()函数引起全表扫描
- Apache 分割日志