2.CUBE 보안

Edit

2.1NEXUSCUBE 보안

2.1.1NEXUSCUBE 보안기능

NEXUSCUBE 보안기능은 개인정보를 일부만 표시하고 프로세스간 통신할 때 전달 되는 패킷을 암호화하여 개인정보에 대한 보안을 강화시키는 기능입니다.

보안 기능 추가로 하위버젼에서 v2.7.2 로 업그레이드 시 이중화 설정이 서로 패킷이 맞지않아 무정지 patch 가 이루어지지 않습니다.

엔진을 2.7.2로 하고 보안기능은 default로 하여 on 이 되었을 때 2.7.2 이전 UI 는 접속되지 않습니다.

보안기능이 적용되지 않은 사이트에 암호화 적용 시 OB EXD-01.INF 의 옵션(ENCRYPTION ) 을 사용하게 되면 기존 캠페인목록(CampaignList), 블랙리스트(BlackList) 파일을 변환 tool (ConvertFile)을 이용해서 변경해줘야 사용가능합니다.

주의사항입니다. 옵션값 중 on/off 또는 no/part_db/all/all_db 같은경우 하나의 값을 택일 하라는 것입니다.

주의사항입니다. 이중화 시 primary, secondary 모두 암호화 설정을 동일하게 해야 합니다. sync 설정시 문제가 됩니다.

주의사항입니다. 암호화 되지 않은 dbfile 이 있을 때 암호화 기능을 켜면 실행되지 않습니다.


다시말해 암호화 끄고 콜테스트 후 암호화 켜서 테스트 할 때 dbfile 은 백업해야 합니다.

2.1.1.1네트워크보안

NEXUSCUBE 에서 프로세스간 통신을 하는 부분을 암호화하여 보안을 강화한 기능입니다.

NEXUSCUBE 는 process 간 통신을 하기위해 TCP/IP 를 이용한 패킷통신을 합니다. 이에 패킷통신을 할 때 패킷을 암호화하여 보안을 강화하는 기능을 추가하였습니다.

암호화한 구간은 NEXUSCUBE Framework 와 통신하는 nxcapi 와 UI 등 모든 구간이 암호화 되어 패킷이 전달됩니다.

CUBE 에서는 네트워크 구간 암호화 방식을 ARIA 알고리즘을 사용합니다.

ARIA 알고리즘에 대한 내용은 여기를 참고하시기 바랍니다.

2.1.1.1.1IB 설정입니다.

전체설정
global.conf
cipher = on/off
ex) cipher = off

옵션 설명입니다.
on 암호화 기능 사용
off 암호화 기능 미사용
설정이 안되어 있으면 기본적으로 암호화 기능 사용
옵션사항에 대소문자 구분없음

포트별 설정(전체설정은 on 이나 해당 포트는 암호화를 해제하고 사용하고 싶을 경우, 혹은 그 반대의 경우 사용)
정리하자면 process.conf가 global.conf 보다 우선순위로 동작합니다.
process.conf
[nxlistener]
1208.cipher = off

nxadaptor 설정(전체설정은 on 이나 해당 포트는 암호화를 해제하고 사용하고 싶을 경우, 혹은 그 반대의 경우 사용)
Adaptor.conf
UI별 섹션 cipher = on/off

global.conf 에 cipher 옵션 설정이 안되어 있다면 default로 on 으로 설정됩니다.

2.1.1.1.2OB 설정입니다.

CIOD 설정
EXD-01.INF
CIPHER=on/off

옵션 설명입니다.
on(소문자) 암호화 기능 사용
off(소문자) 암호화 기능 미사용
설정이 안되어 있으면 기본적으로 암호화 기능 사용(off 가 아니면 기본 on)
공백 허용안함
옵션사항에 대문자만 가능

CIDS 설정은 자동입니다. CIOD 나 CUBE 에서 암호화로 보내면 암호화로 처리하고 기본으로 처리하면 기본으로 처리됩니다.

참고로 CIOD 옵션설정을 위한 EXD-01.INF 파일 작성 규칙입니다.

대문자=0/1

ex) CCBRIDGE_HA_MODE=1

대문자만 가능, 띄어쓰기 허용안함, 0/1만 가능

CIPHER 옵션 설정이 안되어 있다면 default로 on 로 설정됩니다.

2.1.1.2비밀번호 보안

NEXUSCUBE Admin 에서는 비밀번호가 * 로 표시됩니다. 따라서 관리자 권한이라도 비밀번호를 수정해 줄 수는 있지만 알려줄 수는 없습니다.

NEXUSCUBE Messenger 에서는 비밀번호 입력 시 * 로 표시됩니다.

2.1.1.3개인정보 보안

개인정보 보안은 컨택센터에 전화를 건 고객의 고객정보를 암호화하여 보안을 강화한 기능입니다.

개인정보의 범위는 ANI, UUI, UEI, CI 입니다.

NEXUSCUBE 엔진 로그에는 ANI 는 마스킹 처리되며 UUI, UEI, CI 는 길이만 표시됩니다.

옵션에 상관없이 2.7.2 이후 모든 버젼에 적용되는 사항입니다.

고객 개인정보에 대해서는 petra, safedb 암호화 방식 적용 내부 file 은 base64에 대한 en/decode를 진행하고 있습니다.

내부 네트워크암호화는 aria (내부키 적용)방식 적용


2018년 4월 19일 추가

2.1.1.3.1IB 설정입니다.

설정
process.conf
[nxstate]
encryption = no/part_db/all/all_db
(no/part_db/all/all_db 중 택일)

옵션설명입니다.
no 는 암호화 기능 미사용
part_db 는 개인정보만 암호화(dbfile & DB)
all 은 전부암호화하여 dbfile에 쓰며 DB에는 전부복호화하여 넣는다 
all_db 는 전부암호화하여 dbfile에 쓰고 DB에는 개인정보만 암호화한다.
Default는 all_db 임.
옵션사항에 대소문자 구분없음

encryption.call_file = all # no / all / ani,uei,uui,ci,target

no : dbfile에 작성 시 암호화하지 않음.

all : 모든 dbfile 암호화이지만 base64에서만 사용가능 한 옵션(만약 암호화 타입이 base64가 이닌 경우 all옵션을 넣게 되면 모든 개인 정보만 함호화 됨.)

ani,uei,uui,ci,target : 선택적으로 개인정보 암호화 가능


encryption.call_db = ani,uei,uui,ci,target # no ani,uei,uui,ci,target

all은 사용하지 않고 선택적으로 개인정보 암호화 가능


encryption.trace_file = all # no / all / ani,uei,target

no : dbfile에 작성 시 암호화하지 않음.

all : 모든 dbfile 암호화이지만 base64에서만 사용가능 한 옵션(만약 암호화 타입이 base64가 이닌 경우 all옵션을 넣게 되면 모든 개인 정보만 함호화 됨.)

ani,uei,target : 선택적으로 개인정보 암호화 가능


encryption.trace_db = ani,uei,target # no / ani,uei,target

all은 사용하지 않고 선택적으로 개인정보 암호화 가능


encryption_type = base64 # base64 / safedb / ariadb / petra


2018년 4월 19일 보완

2.1.1.3.2OB 설정입니다.

CIOD
ENCRYPTION=on/off

옵션 설명입니다.
on(소문자) 암호화 기능 사용
off(소문자) 암호화 기능 미사용
설정이 안되어 있으면 기본적으로 암호화 기능 사용(off 가 아니면 기본 on)
공백 허용안함
옵션사항에 대문자만 가능
CIDS
ENCRYPTION=on/off

옵션 설명입니다.
on 암호화 기능 사용
off 암호화 기능 미사용
설정이 안되어 있으면 기본적으로 암호화 기능 사용(off 가 아니면 기본 on)
공백 허용안함
옵션사항에 대문자만 가능

2.1.1.4UI 보안

NEXUSCUBE Insight 에서는 고객정보 중 일부를 **** 로 표현하여 고객정보의 보안성을 강화하였습니다.

그림 2-1UUI 정보

EMPLOYEE_PASSWD 의 다음의 암호화 방식을 제공합니다.

1. ARIA

2. SHA256

3. SHA512

4. BASE64


2018년 4월 19일 추가사항

2.1.1.5API 보안

API 로그에서 개인 정보를 모두 마스킹 처리하여 보여줍니다.

NXCAPI.ini
encryption = on/off

옵션 설명입니다.
on 암호화 기능 사용
off 암호화 기능 미사용
설정이 안되어 있으면 기본적으로 암호화 기능 사용
옵션사항에 대소문자 구분없음

2.1.2NEXUSCUBE CIOD DB & FTP 접속 정보 ID/PW 암호화 기능

v2.7.5 CIOD Ciod-5.01.030.U092-P376 version 이상 에서는 기본으로 적용됩니다. 따라서 사이트의 엔진 업그레이드 시 EXD-01.INF 를 꼭 변경하여야 합니다.

이 기능은 CIOD 에서 DB & FTP 정보를 conf 설정 파일에 정보가 노출되어 표현되는 것을 암호화하여 보안 기능을 강화한 것입니다.

  1. 암호화 방식은 aria입니다.

  2. 암호화 옵션에 따라 동작하지않고 무조건 암호화 해야합니다.( 비밀번호는 최대 32자로 제한합니다 )

  3. 현재 적용부분은 아래 3가지입니다.

    - [CAMPAIGNDB] PASSWORD, [EXTDB]PASSWORD, [FRFTP] FTP_USER_PW

  4. 암호화, 복호화하는 tool이 추가되었습니다.

    - 해당 Tool을 통하여 암호화된 패스워드를 확인하여 설정파일에 입력합니다.

    - 해당 Tool을 통화여 암호화된 패스워드를 일반 패스워드로 확인 합니다.

암호화 사용 예)


[cube@localhost bin]$ encipher

******* CIOD Ver.5.01.030.U092_P376 *******

please input text. Max text size is 32 Byte. =>

cube@cube@127.0.0.1

plain Text [cube@cube@127.0.0.1] size[19]

cipher Text >> ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e84dbb895d76699dcb

check cipher-text size[64]


EXD-01.INF 설정방법

[CAMPAIGNDB]

PASSWORD=ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e84dbb895d76699dcb

[EXTDB]

PASSWORD=ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e84dbb895d76699dcb

[FRFTP]

FTP_USER_PW=ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e84dbb895d76699dcb


복호화 사용 예)


[cube@release-144 bin]$ decipher ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e 84dbb895d76699dcb

******* CIOD Ver.5.01.030.U092_P376 *******

cipher Text [ce7bbdf3833703e50ca7cae30b4c797e9e0199b35e5f65e84dbb895d76699dcb] size[64]

plain Text >> cube@cube@127.0.0.1

check plain-text size[19]

비밀번호 32자 초과 안됩니다.(mysql 의 경우 *******@CUBE@100.100.100.100 의 식으로 암호말고 들어가는 부분의 길이가 깁니다. 32자리를 초과하지 않도록 설정해야 합니다.)

비밀번호에 특수기호 가능합니다.