[DBMS/데이터베이스/dbms] 리스너의 패스워드를 설정하여 사용
- 정보보안/Infra
- 2024. 11. 19.
D-07 리스너의 패스워드를 설정하여 사용
■ 점검영역 : 접근관리
■ 항목 중요도 : 상
■ 점검내용
오라클 데이터베이스 Listener의 패스워드 설정 여부 점검
■ 점검목적
Listener의 Owner는 DBA가 아니더라도 Listener를 shutdown 시키거나 DB 서버에 임의의 파일을 생성할 수 있으며, 원격에서 LSNRCTL 유틸리티를 사용하여 listener.ora 파일에 대한 변경이 가능하므로 Listener에 패스워드를 설정하여 비인가자가 이를 수정하지 못하도록 하기 위함
■ 보안위협
Listener에 패스워드가 설정되지 않은 경우 DoS, 정보 획득, Listener 프로세스를 중지시킬 수 있는 위험이 있으므로 반드시 Listener 패스워드 설정 필요
■ 참고
※ 오라클 Listener: 클라이언트가 원격에서 오라클 DB에 접근할 때 접근 요청을 처리하기 위한 서버 쪽 프로세스, 혹은 네트워크 인터페이스를 말하며 일반적으로 TCP/1521 포트를 사용함
※ listener.ora: 오라클 서버에서 클라이언트의 요청을 듣고, 클라이언트와의 통신 환경을 설정하는 파일
점검대상 및 판단기준(데이터베이스/dbms 취약점 진단)
■ 대상 : Oracle, MSSQL, MySQL, ALTIBASE, TIBERO, PostgreSQL 등
양호
Listener의 패스워드가 설정되어 있는 경우
취약
Listener의 패스워드가 설정되어 있지 않은 경우
■ 조치방법
Listener 패스워드 설정
점검 및 조치 방법(oracle, mssql, mysql 등)
■ Oracle
Step 1) Listener 패스워드 설정
LSNRCTL> change_password
Old password:<Old Password> Not displayed
New password:<New password> Not displayed
Reenter new password:<New password> Not displayed
Connecting
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=prolin1)(PORT=1521)(IP=FIRST)))
Password change for LISTENER
The command completed successfully
LSNRCTL> set password
LSNRCTL> save_config
Step 2) Listener 매개변수 설정
1. $TNS_ADMIN/listener.ora 파일 안에 아래 Option 추가
PASSWORDS_<listener name>=<Encrypted Password>
ADMIN_RESTRICTIONS_<listener name>=ON
2. LSNRCTL> reload Listener 재시작
■ 조치 시 영향 : 일반적인 경우 영향 없음