VPN이란 무엇인가요?

Last updated 24 days ago

VPNVirtual Private Network의 약자로 가설사설망을 뜻합니다. 인터넷 프라이버시를 지키기 위한 도구로 널리 사용되기 전에는 멀리 떨어진 네트워크 환경을 하나의 안전한 네트워크로 만드는 역할을 하였습니다. 예를들어 회사 내부 네트워크에서만 접속 가능한 서버를 집에서 접속하기 위해서는 VPN을 이용하여 마치 회사 내부 네트워크에 있는것 처럼 만들어 주는 역활을 하였습니다.

전세계 인구가 모바일을 통해 인터넷에 손쉽게 접근하고 웹브라우징, 이메일, 메신져, SNS 등의 인터넷 서비스를 매일 사용하게 되면서 점차 개인 프라이버시에 관련한 문제가 대두 되었습니다. 네트워크 표준이 점차 개선되면서 개인정보가 유출될 수 있는 가능성을 줄어들고 있지만, 그럼에도 불구하고 아직 많은 국가에서 인터넷 검열이 가능하고 악의를 가진 해커는 중간자 공격(MITM)을 통해 개인정보를 취득할 가능성이 있습니다.

현재의 VPN

인터넷 프라이버시 문제가 대두 되면서 전세계적으로 수백개의 VPN 업체가 생겨났고, 현재의 VPN은 이전의 의미보다는 조금 더 넓은 의미로 "안전하게 인터넷을 사용하는 툴" 으로 인식 되고 있습니다.

안전하지 않은 인터넷 트래픽

우리가 현재 사용하고 있는 인터넷은 서버의 ip주소에 네트워크 패킷을 주고 받으며 통신을 하고 있습니다. 만약 google.com에 접속을 한다면 먼저 DNS서버를 통해 ip주소 x.x.x.x를 받아오게 되며, x.x.x.x 주소로 패킷을 보내고 받게 됩니다.

주소창에 입력된 주소가 http://google.com으로 접속하게 되면 평문(plain text)로 그 내용을 주고 받고, https://google.com 으로 입력한 경우 암호화된 데이터로 주고 받기 때문에 중간에서 누군가 그 내용을 알 수 없습니다.

2018년 현재 대다수의 인터넷 업체는 https프로토콜(TLS)을 지원하고 있어 그 내용이 유출 될 가능성은 그리 크지 않다고 할 수 있습니다. 하지만 아직 작은 규모의 회사의 경우 http 프로토콜만 지원하는 경우 session key hijacking 공격을 통해 개인정보가 유출될 수 있습니다.

웹서비스의 경우 최근 몇년에 걸쳐 https 프로토콜이 많이 받아들여지고 있지만, 그 외의 TCP, UDP를 사용하는 트래픽은 아직도 인터넷 보안의 사각지대에 있다고 할 수 있습니다. 단적인 예로, 인터넷 통신의 첫단계인 DNS는 1980년대에 만들어져 지금까지 사용되고 있지만 이 트래픽은 암호화 되지 않은 평문의 형태로 통신하게 됩니다. 이를 다른말로 하면 누가 어떤 사이트에 접속하는지 볼수 있고, 그 내용을 기록으로 남길 수 있습니다.

DNS트래픽의 경우에도 https처럼 점차 안전한 트래픽으로 바꾸려는 시도가 이루어 지고 있으며, 아직까지는 표준화가 되지 않아 널리 사용되지 않고 있습니다.

VPN으로 안전하게

VPN은 인터넷에 사용되는 모든 네트워크 패킷을 암호화 해서 믿을수 있는 VPN 서버에 보내고, 그 서버가 나를 대신하여 인터넷에 접속하고 그 결과를 돌려주게 됩니다. 내 컴퓨터와 VPN서버 사이에는 안전하게 암호화가 되어 그 내용을 중간에서 볼 수 없기 때문에 인턴넷이 안전하다고 볼 수 있습니다. 모든 트래픽을 암호화해서 보내기 때문에 설령 내가 접속하려는 웹사이트가 https를 지원하지 않더라도 안전하게 접속이 가능합니다.

VPN 업체 선택

VPN을 사용하지 않는것 보다 VPN을 사용하면 무조건 안전하지는 않습니다. 위에서 설명한것 처럼 내 컴퓨터와 VPN서버 사이에는 암호화가 되어 전송되지만, 만약 VPN업체가 뒷통수를 때리면 VPN을 안쓰는것만 못한 결과를 초래하게 됩니다.

VPN업체를 선택하는 기준으로는 서버 속도, 안정성도 있겠지만 더 중요하게 보아야 할점은 과연 믿고 맡길 수 있는지가 중요하다고 볼 수 있습니다.

현재 VeilDuck을 운영하는 BGPworks는 개인 정보 보호를 위해 어떠한 개인정보를 받지 않고 있으며, 익명화된 티켓 발급 절차를 거쳐 인증하는 방식을 사용하고 있습니다.