[보안 해킹] 개인정보 암호화 방식 - 전송시 암호화
■ 웹서버와 클라이언트 간 암호화
⊙ 웹서버와 클라이언트 간 개인정보 전송시 암호화를 위하여 공인인증기관이 발급한 서버 인증서를 설치한 보안서버를 사용하는 방식으로 웹브라우저에 기본적으로 내장된 SSL/TLS 프로토콜로 접속하는 SSL 방식과 웹브라우저에 보안 프로그램을 설치하여 접속하는 응용프로그램 방식으로 구분할 수 있다.
⊙ SSL 방식은 웹페이지 전체를 암호화(웹페이지내 이미지 포함)하며 응용프로그램 방식은 특정 데이터만을 선택적으로 암호화할 수 있지만, 보안서버와 웹브라우저에 부가적인 프로그램을 설치해야 한다.
⊙ 공공기관에서는 국가정보원이 안전성을 확인한 암호모듈 또는 제품을 우선 적용해야 한다.
■ SSL 방식
⊙ SSL 방식은 전송 계층(Transport Layer)을 기반으로 한 응용 계층(Application Layer)에서 암호화를 수행한다. 암호키교환은 비대칭키 암호 알고리즘을 이용하고, 기밀성을 위한 암호화는 대칭키 암호 알고리즘을 이용하며 메시지의 무결성은 메시지 인증 코드(해쉬함수)를 이용하여 보장한다.
⊙ 인터넷 쇼핑이나 인터넷 뱅킹 시 계좌정보 및 주민등록번호 등과 같은 중요한 정보를 입력할 때, 거래당사자의 신원 및 거래내용의 위·변조 여부를 확인하고 중요 정보가 제3자에게 유출되는 것을 막기 위해 SSL/TLS와 같은 통신 암호기술을 이용할 수 있다.
⊙ <그림 1>은 인증기관으로부터 인증서를 발급받은 웹서버와 사용자의 웹브라우저간 SSL/TLS를 이용한 보안 통신의 개념을 간단하게 소개하고 있다. 사용자가 웹서버에 처음 접속하면 인증서 및 통신 암호화에 이용할 암로화키를 생성하기 위한 정보를 공유하고, 이후 공유된 정보를 통해 생성된 암호키를 이용하여 데이터를 암호화하여 전송한다.
⊙ SSL/TLS 통신을 하는 경우에는 로그인 페이지 등 보안이 필요한 웹페이지에 접속하면 웹브라우저 하단 상태 표시줄에 자물쇠 모양의 표시를 확인할 수 있다.
<그림 1> 웹서버와 웹브라우저 간의 SSL/TLS 통신구조
■ 응용프로그램 방식
⊙ 응용프로그램 방식은 별도의 모듈을 서버와 클라이언트에 설치해야 하며 필요한 데이터만 암호화하여 전달할 수 있다. 이를 위해 웹서버 프로그램에 대한 수정작업이 필요하며, 응용프로그램 방식을 제공하는 솔루션에 따라 수정작업의 범위가 달라질 수 있다.
⊙ 보안서버를 구현한 웹서버에 사용자가 접속하면 사용자 컴퓨터에 자동으로 보안 프로그램이 설치되고 이를 통해 개인정보를 암호화하여 통신이 이루어진다. 웹브라우저의 확장기능인 플러그인 형태로 구현되며 웹사이트 접속 시 초기화면이나 로그인 후 윈도우 화면 오른쪽 하단 작업표시줄 알림영역을 확인하여 프로그램이 실행되고 있음을 알 수 있다.
■ 개인정보처리시스템 간 암호화
⊙ 개인정보처리시스템 간 개인정보를 전송할 때 암호화를 지원하기 위하여 공중망을 이용한 VPN(가설사설망)을 구축할 수 있다.
⊙ VPN은 기반이 되는 보안 프로토콜의 종류에 따라 IPsec VPN 방식, SSL VPN 방식, SSH VPN 방식 등으로 구분할 수 있으며, 개인정보처리시스템 간의 통신에서 사용할 수 있는 VPN 전송 방식의 특징을 비교하면 [표 1]과 같다.
[표 1] 개인정보처리 시스템 간 전송시 암호화 방식 비교
방 식 |
VPN 서버 부하 |
NAT 통과 |
IPsec VPN |
낮음 |
어려움 |
SSL VPN |
다소 낮음 |
쉬움 |
SSH VPN |
다소 낮음 |
쉬움 |
※ NAT(Network Address Translation) : 사설 IP 주소를 공인 IP 주소로 바꿔주는데 사용하는 통신망의 주소 변환기
⊙ VPN은 공중망을 통해 데이터를 송신하기 전에 데이터를 암호화하고 수신측에서 이를 복호화 하는 방식으로 송·수신 정보에 대한 기밀성 및 무결성을 보장하며, 그 외에도 데이터 출처 인증, 재전송 방지, 접근제어 등 다양한 보안 기능을 제공한다.
■ IPsec VPN 방식
⊙ IPsec VPN 방식은 응용프로그램을 수정할 필요가 없으나 IPsec 패킷의 IP 주소를 변경해야 하는 NAT와 같이 사용하기 어려운 점이 있다. 사용자 인증이 필요없으므로 VPN 장비 간 서로 인증이 된 경우, 사용자는 다른 인증절차를 거치지 않아도 된다.
⊙ IPsec VPN 방식의 구조는 게이트웨이 대 게이트웨이, 호스트 대 게이트웨이, 호스트 대 호스트로 구분할 수 있다. 게이트웨이 대 게이트웨이는 네트워크 간의 암호화 통신, 호스트대 게이트웨이는 개인정보처리시스템과 네트워크 간의 암호화 통신, 호스트 대 호스트는 개인정보처리시스템 간의 암호화 통신을 설정할 수 있다. <그림 2>는 게이트웨이 대 게이트웨이 IPsec VPN 방식을 이용하여 인터넷을 통과하는 암호화 통신을 보여준다.
<그림 2> IPsec VPN 방식(게이트웨이 대 게이트웨이)의 개념도
■ SSL VPN 방식
⊙ SSL VPN 방식은 응용프로그램 수준에서 SSL/TLS을 구현하는 것이 일반적이며 NAT를 사용할 수 있다. SSL/TLS는 메모리 소비가 많으므로 동시 접속이 많은 대용량 처리에서 성능 저하가 발생할 수 있다. 하지만 개별 사용자 인증이 필요한 경우 SSL VPN 방식이 좋은 선택이 될 수 있다.
⊙ <그림 3>은 SSL VPN 방식에서 SSL VPN 서버를 거친 개인정보처리시스템 간의 암호화 통신을 보여준다. 이러한 구조는 방화벽 외부에 위치한 개인정보처리시스템과 SSL VPN 서버가 설치된 LAN에 위치한 개인정보처리시스템 간의 통신에 이용이 가능하다.
<그림 3> SSL VPN 방식의 개념도
■ SSH VPN 방식
⊙ SSH VPN 방식은 응용계층의 VPN 기술로서 원격 단말기에서 접속하는 경우에 주로 이용되며 SSH를 이용한 파일 전송 및 파일복사 프로토콜(예: SFTP, SCP)을 이용할 수 있다. 오픈소스 SSH의 일종인 OpenSSH의 경우 프락시 방식의 VPN 서버로 구성할 수도 있다.
⊙ <그림 4>는 SSH VPN 방식에서 개인정보처리시스템 간의 암호화 통신을 보여준다. 각 개인정보처리시스템에 설치된 SSH 기능을 사용하여 VPN을 구성할 수 있다.
※ 개인정보처리시스템 간 전송시 공중망과 분리된 전용선을 사용하면 암호화에 상응하는 보안성을 제공할 수 있다.
■ 개인정보취급자 간 암호화
- 개인정보취급자 간에 개인정보를 전송할 때 주로 이메일을 이용하게 된다. 이메일은 네트워크를 통해 전송되는 과장에서 공격자에 의해 유출되거나 위조될 가능성이 있다. 이러한 위협으로부터 이메일로 전송되는 메시지를 보호하기 위해서 PGP 또는 S/MIME을 이용하는 이메일 암호화 방식과 암호화된 파일을 이메일에 첨부하여 전송하는 이메일 첨부문서 암호화 방식이 있다.
※ 개인정보취급자 간에 이메일을 사용하지 않고 직접 파일을 전송하고자 하는 경우는 개인정보처리시스템 간 전송시 암호화 방식의 VPN 기능을 적용할 수 있다.
[표 2] 개인정보처리 시스템 간 전송시 암호화 방식 비교
방 식 |
공인인증서 필요 여부 |
표준형식 |
|
이메일 암호화 |
PGP |
필요하지 않음 |
PGP 자체정의 |
S/MIME |
필요함 |
X.509,PKCS#7 |
|
이메일 첨부문서 암호화 |
필요하지 않음 |
없음 |
⊙ S/MIME은 공개키를 포함한 공인인증서를 발급받고 등록해야 하는 번거로움이 있다. 이에 비해 PGP의 경우 개인 간의 신뢰를 바탕으로 공개키를 등록하거나 안전한 채널로 미리 확보하는 방법을 사용할 수 있다.
■ 이메일 암호화 방식
- 이메일 암호화 방식은 송·수신되는 이메일의 내용을 암호화함으로써 메일 내 중요 개인정보의 유출을 방지하는 것이며, 대표적인 이메일 보안 프로토콜로는 PGP와 S/MIME 이 있다. <그림 4>는 이메일 암호화 방식의 처리 과정을 보여준다.
<그림 4> 이메일 암호화 방식의 개념도
⊙ PGP는 다양한 응용프로그램에 적용하여 문서, 이메일, 파일, 파일시스템, 디스크 등을 암호화할 수 있다.
⊙ S/MIME은 인증, 메시지 무결성, 부인방지, 메시지 암호화 등에 사용되며 대부분의 이메일 클라이언트에서 기본적으로 지원한다. S/MIME을 사용하기 위해서는 공인인증기관이 발행한 공인인증서가 있어야 한다.
■ 이메일 첨부문서 암호화 방식
⊙ 업무용 컴퓨터에서 주로 사용하는 문서 도구(예 : 한글, MS 워드 등)의 자체 암호화 방식, 암호 유틸리티를 이용한 암호화 방식 등을 통해 암호화한 파일을 이메일의 첨부문서로 송·수신 할 수 있다.
⊙ 이메일을 송·수신할 개인정보취급자 간에는 암호키(또는 비밀번호) 안전하게 공유하여야 한다.
※ 문의 사항은 메일 : jyuhm@sntkor.com 이나 070-8611-4853
'Security > Hacking & Security' 카테고리의 다른 글
[보안 해킹] 개인정보 암호화 적용 사례 - 전송시 암호화 (0) | 2016.11.07 |
---|---|
[보안 해킹] 개인정보 암호화 방식 - 저장시 암호화 (0) | 2016.11.05 |
[보안 해킹] 홈페이지 보안 취약점 점검 (0) | 2016.11.04 |
[보안 해킹] 홈페이지 개발 보안 - 주석을 통한 정보 노출 (0) | 2016.11.03 |
[보안 해킹] 홈페이지 개발 보안 - 취약한 패스워드 복구 (0) | 2016.11.03 |