ORACLE TNS Listener 远程注册投毒

ORACLE TNS Listener 远程注册投毒原理

CVE-2012-3137 漏洞是 Oracle Database 10g/11g 身份验证协议实现中存在一

个设计缺陷,攻击者可无需认证即可远程获取数据库用户密码哈希相关数据,从而

可以离线暴力破解用户密码,进一步控制数据库系统。

我们通过如下的步骤和过程可以实现对 Oracle 的入侵:

( 1 )利用 CVE-2012-1675 进行 TNS 劫持,在监听下利用远程注册,注册同名数

据库实例;

( 2 )新登陆的用户,在 TNS 的负载均衡策略下,有可能流量登录到伪造的监听

服务上;

( 3 )该监听服务对用户的登陆过程进行监控,并将相关数据流量转发到真实的

数据库上;

( 4 )利用 CVE-2012-3137 获得通讯过程中的认证相关信息;

( 5 )对认证相关信息进行离线的暴力破解,获得登陆的密码;

( 6 )试用破解的用户名 / 密码登陆 Oracle ,完成对 Oracle 中数据的访问。

在 11.2.0.4 和 12.1 中或者在 RAC 中的新参数配置解决该问题: Valid Node Checking For Registration (VNCR) ( 文档 ID 1600630.1)

How to Enable VNCR on RAC Database to Register only Local Instances (Doc ID 1914282.1)

简单来说对于 11.2.0.4 以前的版本需要打上对应补丁 ,创建 wallet 密钥并对监听进行相应的修改,而对于 11.2.0.4 及 12c 以上的版本只需要把默认的 VALID_NODE_CHECKING_REGISTRATION_listener_name 参数至为 on 即可 。对于 RAC 环境,只需进行以下操作:

如果监听名改过记得修改

单机

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ LISTENER=ON

VALID_NODE_CHECKING_REGISTRATION_ LISTENER=1

RAC

在监听配置文件中加入以下配置,即可启用 vncr

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ LISTENER_SCAN1=ON

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ LISTENER=ON

VALID_NODE_CHECKING_REGISTRATION_ LISTENER=1

VALID_NODE_CHECKING_REGISTRATION_ LISTENER_SCAN1=1

REGISTRATION_INVITED_NODES_ LISTENER_SCAN1=( node 1 ,node2)

#node1 和 node2 对应节点的 public ip 别名

最后重新加载监听生效:

lsnrctl reload

lsnrctl reload listener_scan1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值