[IT-Security] Chapter 9. Security Protocol

MJ·2023년 2월 17일
0

IT Security

목록 보기
9/9

Virtual Private Networks (VPNs)

VPN은 인터넷에 가상의 전용선 공간을 만들어 놓아 거점 간을 안전하게 연결하기 위한 기술 또는 이를 사용하여 구축한 네트워크를 가리킨다.

VPN은 공인 인터넷을 사이에 둔 사설망과 사설망이 공인 IP로의 NAT와 같은 제약 없이 사설 IP를 이용해 통신가능하도록 지원하며 데이터의 암호화를 제공한다. 이를 실현하기 위해 VPN은 공인 인터넷에서 IP packet을 캡슐화함과 동시에 데이터의 암호화/인증방식을 협상하게 된다.이 협상 과정을 거친 후에는 캡슐화된 패킷이 오고가기 때문에 아무리 공인 인터넷상이라 하더라도 외부인이 이 패킷ㅇ르 쉽게 탈취할 수 없다. 이 기술을 Tunneling 이 하며 이에 사용된 프로토콜을 Tunneling Protocol이라 부른다 .

VPN 장비를 사용하게 되면, 별도의 전용선을 사용하으로 발생되는 망 임대료를 절감할 수 있고, 인터넷을 사용함으로 인한 낮은 비용 대비 높은 통신 속도를 장점으로 누릴수 있다.

위 그림의 빨간색 선은 실제로 터널을 만드는것이 아니라 VPN 장비 간에 트래픽을 주고받을 때 트래픽이 암호화되어 전송되는 것을 논리적으로 표현한 것이다.

Site-to-Site VPN

두 개의 네트워크 도메인이 가상의 사설 네트워크 연결을 사용하여 프라이빗 통신을 가능하게 하는 서비스로 표준 IPSec VPN만 지원한다.

개념

  • VPN 연결: 온프레미스 장비와 VPC 간의 보안 연결

  • VPN 터널: 데이터가 고객 네트워크에서 AWS와 주고받을 수 있는 암호화된 링크

  • 각 VPN 연결에는 고가용성을 위해 동시에 사용할 수 있는 두 개의 VPN 터널이 포함되어 있다

  • 고객 게이트웨이: 고객 게이트웨이 디바이스에 대한 정보를 AWS에 제공하는 AWS 리소스이다

  • 고객 게이트웨이 디바이스: Site-to-Site VPN 연결을 위해 고객 측에 설치된 물리적 디바이스 또는 소프트웨어 애플리케이션이다

  • 대상 게이트웨이(Target gateway): 사이트 간 VPN 연결의 Amazon 측 VPN 엔드포인트를 일컫는 일반적인 용어

  • 가상 프라이빗 게이트웨이(Virtual private gateway): 가상 프라이빗 게이트웨이는 단일 VPC에 연결할 수 있는 사이트 간 VPN 연결의 Amazon 측 VPN 엔드포인트

  • 전송 게이트웨이(Transit gateway): 사이트 간 VPN 연결의 Amazon 측 VPN 엔드포인트로 여러 VPC와 온프레미스 네트워크를 상호 연결하는 데 사용될 수 있는 전송 허브

IPSec VPN

IPSec VPN은 주로 site-to-site 방식으로 사용되는 VPN이다. 또한 패킷을 암호화함으로써 LAYER 3의 단점인 데이터 암호화를 해결한다.

이는 IPSec이라 불리는 Tunneling Protocol이 있기에 가능한 것이다.

패킷의 이동과 암호화는 전적으로 VPN이 책임지기 때문에 VPN 하단의 장비와 PC들은 패킷 이동과 암호화를 신경 쓰지 않고 Routing을 통해 상대편 네트워크로 이동할 수 있다.

IPSec은 통신 세션의 각 IP패킷을 암호화하고 인증하고 안전한 인터넷 프로토콜 (IP)통신을 위한 인터넷 프로토콜 스위트이다. 이 보안은 통신 세션의 개별 IP 패킷을 인증하고 암호화함으로써 처리된다. IPSec은 세션으 ㅣ시작에서 에이전트들 사이에서 상호 인증을 확립하거나 세션을 맺는 중에 사용될 암호화 키의 협상을 위한 프로토콜을 포함한다.

여기서 IPSec의 역할은 인터넷 경유 구간에서 안전한 터널을 생성하고 패킷을 인증할 수단을 제공하며 패킷을 암호화할 키를 관리하고 제공하는 것이다.

운용모드

전송모드: IP Header를 변형하지 않고 그대로 사용하면서 IP Header를 제외한 데이터 부분만을 인증 혹은 보호하며 단말이 미 모든 과정을 담당하기에 단말과 단말 강 통신이 가능하다는 특징

터널모드: New IP Header (공인 IP)를 추가적으로 씌워 Origin IP Header (사설 IP)를 캡슐화 하고 IP패킷 전체를 인증 혹은 보호하며, VPN 장비가 이를 도맡아 하므로 사설 네트워크와 사설 네트워크 간 통신을 가능테 한다. 현재 사용하고 있는 IPSec VPN 대부분은 터널 모드를 사용한다.

Authentication Header (AH)와 Encapsulating Security Payload (ESP)는 IP 패킷의 보안성을 부여하기 위한 프로토콜 헤더로 패킷을 암호화/인증하는 역할을 한다. 이 둘을 사용하는 이유는 IPSec 터널 내를 흐르는 데이터 패킷을 암호화하고 인증하여 외부침입으로부터 보호하는 것이다.

인터넷 프로토콜 설계 시 패킷의 암호화에 대한 고려가 전혀 반영되어있지 않지 때문에 프로토콜 헤더를 추가로 부착하는 방법을 사용해 IP 패킷의 암호화를 실현하는 것이다.

AH

AH는 IP패킷의 무결성을 입증하기 위한 프로토콜 헤더이다. 패킷의 데이터 부분에 해당하는 IP payload와 IP 헤더를 인증한 후 인증 데이터를 생성하여 AH 헤더에 이를 포함시켜 패킷에 부착한다. 그리고 New IP Header (공인 IP)를 추가로 씌어 기존 AH 헤더, IP 헤더와 IP Payload를 캡슐화한다.

Integrity Check Value는 사설 IP에 대한 정보가 있는 IP헤더와 IP Payload 그리고 New Ip Header를 해쉬 알고리즘을 이용해 고정 크기의 블록으로 만든것이다. 공격자가 IP Payload 혹은 IP Header에 조작한다면 조작된 데이터에 해쉬 알고리즘을 적용 시 헤더 내 인증 데이터와 일치하지 않을테니 외부의 개입 여부를 단번에 알 수 있다.

페이로드 내부의 프로토콜 헤더를 알려주는 'Next HEader', 페이로드의 길이를 정의하는 'Payload Length'등이 있다.

AH는 인증에 관한 작업을 수행할 뿐 패킷의 암호화에는 전혀 관여하지 않는다. 그렇기 때문에 데이터가 쉽게 노출되어 안전하지 않아 잘 사용되지 않는다.

ESP

ESP 헤더는 AH 헤더의 인증 기능에 더해 AH 헤더의 약점인 패킷 암호화 기능을 갖춘 프로토콜 헤더이다.

암호 알고리즘 (DES, 3DES, AES)과 함께 암호화 키를 사용하여 패킷을 암호화한다.

ESP는 패킷의 페이로드와 IP header를 암호화 하고 ESP헤더와 선택사항인 인증 데이터를 부착한 후, New IP Header를 씌워 패킷을 캡슐화한다.

IP Sec 터널을 통과하는 패킷은 아래 패킷과 같은 모습으로 통과한다.

ESP Trailer는 패킷을 암호화하면 필수적으로 생성되는, 페이로드와 인증 데이터를 구분하기 위한 padding 과 내부 프로토콜 헤더에 관한 정보를 담고 있다.

ESP Header는 IP Header와 IP Payload 그리고 ESP Trailer를 암호화 한다.

이 암호화 한 IP Header & Payload, Trailer에 해쉬 알고리즘을 적용하여 인증 데이터인 ESP Auth를 생성하여 부착한다 ESP Trailer와 ESP Auth가 필수적인 역할을 담당하다 보니 ESP Header는 많은 정보를 담고 있지 않다.

SPI는 Security Association(SA)의 식별번호이다. SA란 VPN과 VPN이 데이터를 안전하게 교환하기 위해 쌍방 간 합의되는 사항을 의미한다.

0개의 댓글