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

甲骨文(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端口发送恶意构造的包如下

执行脚本,观察ggserr.log日志,监听程序已经接收到数据包并处理

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

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

CVE-2018-2913 调试

1.开启mgr服务,查看pid=29516

2.调试mgr服务;gdb –> attach 29516进行调试

3.bt 查看此时栈情况,初始化栈

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

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

修复建议

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181026B155FL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券