[출처] http://www.certcc.or.kr/advisory/ka2002/ka2002-016.txt
======================
KA-2002-016 : Oracle 9i Database Server 원격 취약점
----------------------
최초작성일 : 2002/02/07
갱 신 일 :
출 처 : NGSSoftware Security Research(http://www.nextgenss.com/advisories)
작 성 자 : 강준구, jgkang@certcc.or.kr
-- 제목 --------------
Remote Compromise in Oracle 9i Database Server
-- 해당 시스템 -------
Oracle 9, 8 이 탑재되어 있는 모든 Operating System
-- 설명---------------
공격자는 유저ID 와 패스워드 없이 오라클 데이터베이스 서버를 운영하는 시스템에 원격으로 임의의 라이브러리 내의 임의의 함수를 실행시킬 수 있다. 오라클 데이터베이스의 많은 부분들이 PL/SQL 패키지에 의해 제공되어 진다.
PL/SQL는 SQL을 확장하여 Dynamic Link Library 또는 O/S 라이브러리의 함수를 호출할 수 있는 패키지로 구현되어져 있다. 공격자는 system() 함수를 호출하여 프로그램을 실행하고자 하면, 반드시 오라클 데이터베이스에 로그인 접속한 후 공격이 성공하기 이전에 CREATE LIBRARY에 대한 허가를 받아야 하는데 공격자는 인증절차 없이 임의의 라이브러리를 로딩할 수 있는 취약점이 발견됐다.
--영향----------------
오라클 데이터베이스 서버 라이브러리 내에 탑재되어 있는 함수를 임의로 인증절차 없이 실행시킬 수 있다.
-- 해결책---------------
첫째: Firewall을 사용해라. 어느 누구도 인터넷으로부터 1522번 listener 포트로의 접근은 불가능하다. Firewall은 인터넷 접속으로의 위험을 없앨 수 있다.
둘째: 오라클 데이터베이스의 PLSExtproc 기능이 필요 없다면 삭제할 수 있다. 이 기능을 삭제하기 위해서는 tnsnames.ora 와 listener.ora내의 엔트리도 삭제하여야 한다. PLS External Procedure Service에는 아주 다양한
이름들이 오라클 버전과 시스템에 있다. 그 예로 icache_extproc, PLSExtproc, 또는 extproc 같은 것들이 있다.
그중 extproc(.exe)도 삭제할 것을 권고한다. 만약, 이 기능이 필요하면 listener에 접근할 수 있는 기계를 제한하라.
이 기계는 단지 IP address에만 의존하기 때문에 믿을 수 있는 메커니즘이므로 도움이 된다. 이를 제한하는 프로세스를 "valid node checking" 이라 하며, 이는 $ORACLE_HOME\network\admin 디렉토리 sqlnet.ora file의 수정을 요구한다.
다음과 같은 엔트리를 삽입하면 된다.
tcp.validnode_checking = YES
tcp.invited_nodes = (211.255.1.1, hostname)
211.255.1.1, hostname을 Access를 요구하는 호스트 IP와 이름을 대신해서 사용하라. 이 리스트에 없는 호스트도 listener에 TCP 접속을 할 수 있으나 listener는 바로 접속을 차단시킨다.
현재 패치는 오라클과 NGSSoftware가 현재 준비중이다.
------- 참조 사이트 --------------------------
vendor URL: http://www.oracle.com/
http://www.nextgenss.com/advisories/oraplsextproc.txt
--------------------------------------------------------------
한국정보보호진흥원(Korea Information Security Agency),
Computer Emergency Response Team Coordination Center , CERTCC-KR
전화: 118 (지방 02-118) Email: cert@certcc.or.kr
==============================================================
|