본 내용은 개인적으로 공부하며 정리한 내용이라 틀릴 수 있습니다.
기본 조건을 이해하는 수준으로 생각하시기 바랍니다.
아래 내용으로 무조건 ISMS-P 심사를 통과하는 것은 아님을 알려드립니다.
<0> 점검 항목 - 보호 대책 요구사항(클라우드 점검 포함)
<1> 안전한 네트워크 - 개발 계정과 서비스 계정의 분리 확인
<2> 안전한 네트워크 - 3 계층 네트워크로 구성한다. 2곳의 IDC (AZ)에 구성한다.
<3> 베스천과 DB에 대한 방화벽 설정 확인
<4> Outboud Traffic 제어하는지 확인
<5> 사용자는 Load Balancer를 통해 Server에 접속하는지 확인.
<6> ADMIN 서버는 외부에서 접속되지 않는지 확인
<7> 원격 접속 차단과 접속 통제 하고 있는지 확인
<8> 방화벽 설정(ACG,NACL)에 대해 최신화가 되어 있는지 확인
<9> 오브젝트 스토리지에 대해 IP접근 제어 설정되어 있는지 확인
<10> 오브젝트 스토리지에 대해 접근에 대해 로깅하고 있는지 확인
<11> 오브젝트 스토리지에 대해 접근 권한이 적절한지 확인
<12> 오브젝트 스토리지 데이터에 대해 암호화가 적용 되어 있는지 확인
<13> DB 리소스 액세스 권한 관리
<14> DB 에 대해 API 작업 권한을 가지고 있는 사용자 관리
<15> DB는 DB서브넷에 구축되어 있는가?
<16> DB 보안 그룹에 ANY(0.0.0.0/0) 허용은 없어야 한다.
<17> DB 모니터링 로깅 설정이 되어 있는지 확인
<18> 최소한의 서비스 IP/Port 사용과 불필요한 기능 제거 점검
<20> 같이 볼만한 자료 - ISMS-P체크 리스트
<0> 점검 항목 - 보호 대책 요구사항(클라우드 점검 포함)
(ISMS-P) 2.6 접근 통제
<1> 안전한 네트워크 - 개발 계정과 서비스 계정의 분리 확인
1
회원 가입 시 보안상 개발 계정과 서비스 계정은 별도로 생성한다.
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
개발망과 서비스망은 분리되어야 한다.
ncp-shop1-dev@serverchk.com
ncp-shop1-prd@serverchk.com
<2> 안전한 네트워크 - 3 계층 네트워크로 구성한다. 2곳의 IDC (AZ)에 구성한다.
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
정보 자산의 중요도에 따라 Public, Private , DB Subnet으로 구성한다.
서비스의 경우 안정성을 위해 2개 이상의 IDC(AZ)에 구성하도록 한다.
1
Public, Private , DB Subnet으로 구성한다.
Public, Private , DB Subnet 증적을 제출한다.
Public, Private , DB Subnet 라우팅 테이블을 제출한다.
인터넷 게이트웨어 설정을 제출한다.
내부 네트워크 사설IP 사용확인
2
Subnet을 2곳의 IDC에 구성한다.
네이버 클라우드는 KR-1 과 KR-2 2곳이 있다.
Public1,Public2, Private1,Private2 , DB Subnet1 , DB Subnet2 로 구성한다.
3
VPC 설정 참고자료
<3> 베스천과 DB에 대한 방화벽 설정 확인
1
베스천 서버 방화벽 룰이 0.0.0.0/0 (ANY)가 있는지 확인한다.
있다면 취약
2
서비스 베스천 서버가 외부에서 접속할 수 있는 Public에 있는지 확인한다.
- 보안적으로 내부 네트워크에서만 접속하도록 구성되어 있으면 최선이다.
3
DB서버에 대한 방화벽 룰이 0.0.0.0/0 (ANY)가 있는지 확인한다.
있는다면 취약
내부 서버와 IDC와 연동 된다면, 해당 서버만 해당 포트(3306등)만 허용 되어야 한다.
0.0.0.0/0이 있다면 변경작업 필요함.
VPC-Flowlogs로 DB에 접속하는 서버를 확인한다.
접속하는 서버에 대해서만 허용하도록 변경 한다.
4
베스천 서버가 외부에서 접속할 수 있는 Public에 있는지 확인한다. (취약)
베스천 서버는 내부 서버접근 시스템을 이용해 접속하도록 변경한다.
<4> 나가는 트래픽(Outboud Traffic)을 제어하는지 확인
네트워크 ACL (NACL) 또는 방화벽(ACG)으로 나가는 트래픽을 제어하는지 확인
데이터가 나갈 수 있도록 네트워크를 구성한 경우, 유출 트래픽에 대해 제어를 하고 있는지 확인한다.
따로, NACL이나 방화벽으로 제어하는지 확인한다. 제어 하지 않으면 취약
<5> 사용자는 Load Balancer를 통해 Server에 접속하는지 확인
서버는 외부에서 직접 접속하지 않도록 구성한다.
Public망에 서버가 존재하지 않도록 한다.
Public망에 존재하는 서버는 지속적으로 외부에서 해킹 시도가 있다. (SSH 접속 시도, 웹 해킹 시도)
보안 점검 서비스에서 0.0.0.0/0에 대해서는 점검이 되어 취약으로 표시 된다.
<6> ADMIN 서버는 외부에서 접속되지 않는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
관리자만 보는 ADMIN서버는 내부에서만 접속 되도록 해야 한다.
Admin 서버는 내부 네트워크 통신을 통해서만 서버에 접속하도록 한다.
Office 망에서 VPN 또는 내부 전용선으로 서버에 접속해야 한다.
별도의 VDI 환경이나 물리적으로 분리된 환경에서 ADMIN 서버를 접속해야 한다.
<7> 원격 접속 차단과 접속 통제 하고 있는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
1
원격접속 차단?
외부망을 통한 관리 콘솔 접속을 제한 하고 있는가?
VPN이나 내부 VDI시스템을 통해 관리 콘솔 접속을 하고 있는가?
2
서비스 콘솔 접속 현황?
VPN 접속 > VDI 시스템 접속 > 클라우드 콘솔 연결 하고 있는가?
or
VDI 시스템 접속 > 클라우드 콘솔 연결 하고 있는가?
<8> 방화벽 설정(ACG,NACL)에 대해 최신화가 되어 있는지 확인
방화벽 설정에 대해 최신화에 대해 검토한 자료가 있어야 한다.
<9> 오브젝트 스토리지에 대해 IP접근 제어 설정되어 있는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
오브젝트 스토리지 데이터가 내부용인 경우 내부IP나 내부에서만 연결이 가능한가?
오브젝트 스토리지 데이터가 불필요하게 Public하게 오픈 되어 있는가?
Public하게 오픈된 경우 적절한 부분인지 확인이 되어야 한다.
<10> 오브젝트 스토리지에 대해 접근에 대해 로깅하고 있는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
오브젝트 스토리지 접근에 대해 접근 로그 수집을 하고 있는지 확인
로깅 활성화가 되어 있지 않다면 취약
로깅 요청 증적 필요
<11> 오브젝트 스토리지에 대해 접근 권한이 적절한지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
접근 권한이 적절한지 확인
모든 사용자가 접속 하도록 되어 있다면 적절한지 확인 (취약)
불필요한 읽기 권한은 없는지?
불필요한 쓰기 권한은 없는지?
업무 요청에 대해 적절하게 부여 된것인지 확인
<12> 오브젝트 스토리지 데이터에 대해 암호화가 적용 되어 있는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
클라이언트 사이트 암호화가 적용되어 있는지?
or
서버측 암호화가 적용되어 있는지?
<13> DB 리소스 액세스 권한 관리
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
DB 리소스 생성/삭제 권한은 특정 DB그룹이나 특정 사용자만 가지고 있는가?
다수 사용자가 가지고 있다면 취약
<14> DB 에 대해 API 작업 권한을 가지고 있는 사용자 관리
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
CLI/API를 통해 DB리소스 접근 및 작업시 사용되는 Access-key에 대해 주기적으로 관리해 보안 문제가 없어야 한다.
비인가된 사용자가 API 를 통해 DB 작업을 할수 있는지 확인 필요
<15> DB는 DB서브넷에 구축되어 있는가?
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
DB는 DB 서브넷에 구축되어 있어야 한다.
DB 서브넷은 외부와 통신이 되지 않는 서브넷이여야 한다.
DB 서브넷 라우팅 테이블에는 인터넷 게이트웨이와 NAT 게이트웨이와 라우팅은 없어야 한다.
있다면 취약
<16> DB 보안 그룹에 ANY(0.0.0.0/0) 허용은 없어야 한다.
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
DB 보안 그룹을 확인한다.
ANY(0.0.0.0/0) 허용은 없어야 한다.
소스는 특정 IP로 제한 되어야 한다. 목적지 포트도 사용 하는 DB 포트만 허용한다. Mysql은 3306
<17> DB 모니터링 로깅 설정이 되어 있는지 확인
주요 서비스, 사용자 그룹, 정보자산의 중요도, 법적 요구사항에 따라 영역을 구분하고 있는가?
DB에 대한 로깅 설정을 활성화 되어 있어야 한다.
활성화 되어 있지 않으면 취약
추후 문제시 로그로 문제에 대해 확인할수 있어야 한다.
<18> 최소한의 서비스 IP/Port 사용과 불필요한 기능 제거 점검
보안규칙 적용시 검토 하였는지 확인 - 업무 요청 시스템으로 요청받아 검토하고 처리하였는지 증적 제출
보안 규칙 IP/PORT 현황 증적 제출
정기적으로 점검해 IP/PORT 삭제한 화면이나 시스템으로 처리한 내역 제출
<20> (비공인) 네이버 클라우드 ISMS-P 인증심사 통과하기
감사합니다.