Oracle 11g CVE-2012-1675(远程投毒)漏洞修复。

  • 数据库版本
    Oracle 11g 11.2.0.4.0非RAC
  • 漏洞编号
    CVE-2012-1675
  • 漏洞介绍
    Oracle允许攻击者在不提供用户名/密码的情况下,向远程“TNS Listener”组件处理的数据投毒的漏洞。

1、漏洞复现

安装检测工具metasploit

  • 下载metasploit
[root@localhost Tools]# wget https://downloads.metasploit.com/data/releases/archive/metasploit-4.17.1-2020080301-linux-x64-installer.run

wget下载速度较慢,可以拷贝网址使用迅雷下载后上传至服务器

漏洞修复之Oracle系列_f5

  • 增加执行权限
[root@localhost Tools]# chmod +x metasploit-4.17.1-2020080301-linux-x64-installer.run

漏洞修复之Oracle系列_漏洞_02

  • 安装
    出现输入界面,按默认值回车即可
    漏洞修复之Oracle系列_Oracle_03

利用metasploit复现漏洞

  • 启动metasploit
[root@localhost Tools]# msfconsole

漏洞修复之Oracle系列_linux_04

  • 切换至tnsposion_checker路径
msf5 > use auxiliary/scanner/oracle/tnspoison_checker
  • 设置目标IP地址
msf5 auxiliary(scanner/oracle/tnspoison_checker) > set RHOSTS 192.168.137.150
  • 检测
msf5 auxiliary(scanner/oracle/tnspoison_checker) > run

漏洞修复之Oracle系列_漏洞_05

  • 192.168.137.150:1521 is vulnerable 表示漏洞存在
[+] 192.168.137.150:1521 - 192.168.137.150:1521 is vulnerable
[*] 192.168.137.150:1521 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

2、漏洞修复,在listener.ora文件里添加​​VALID_NODE_CHECKING_REGISTRATION_LISTENER=ON​

  • 登录数据库服务器,切换到Oracle用户
[root@oracledb ~]# su - oracle
  • 进入listener.ora配置文件所在的文件夹
[oracle@oracledb ~]$ cd $ORACLE_HOME/network/admin

漏洞修复之Oracle系列_漏洞_06

  • 停止监听服务
[oracle@oracledb admin]$ lsnrctl stop

漏洞修复之Oracle系列_Oracle_07

  • 编辑配置文件
[oracle@oracledb admin]$ vim listener.ora
VALID_NODE_CHECKING_REGISTRATION_LISTENER = ON

漏洞修复之Oracle系列_oracle_08

  • 启动监听服务

    漏洞修复之Oracle系列_漏洞_09

  • 再次验证漏洞

    漏洞修复之Oracle系列_漏洞_10

3、其他

  • 当在数据库服务器上部署metasploit工具时,按上述2过程配置完监听,检测漏洞依旧存在;以此,验证时切记工具与数据库服务不能是同一台服务器。


作者:99号程序员