캡슐화 보안 페이로드(ESP)
캡슐화 보안 페이로드는 비밀성, 데이터 출처 인증., 비연결형 무결성, 재전송 방지 서비스, 트래픽 흐름의 비밀성을 제공하기 위해 사용된다.
제공되는 서비스의 집합은 SA 설정 시점에 선택된 옵션과 네트워크 위상에서 구현 위치에 따라 의존적이다
ESP는 GCM과 같은 인증 되는 암호화 알고리즘을 포함하여 다양한 암호화와 인증 알고리즘으로 동작한다
ESP 형식
ESP 패킷 최상위 형식
페이로드 데이터 서브 구조
암호화 및 인증 알고리즘
페이로드 데이터 그리고, 패딩 패드 길이, 다음 헤더 필드는 ESP 서비스에 의해 암호화 된다.
암호화 알고리즘이 초기화 벡터(IV)를 필요로 하면 데이터는 페이로드 데이터 필드의 시작 부분에 명시해서 전달된다.
IV를 포함하면 암호문의 일부로 간주하지만 IV는 대체로 암호화하지 않는다
ICV 필드
ICV 필드는 옵션이다. ICV는 무결성 서비스가 선택 되고 , 개별 무결성 알고리즘이나 ICV를 사용하는 결합 모드 알고리즘에서 제공할 때만 나타난다
ICV는 암호화 알고리즘을 수행한 후에 계산한다.
이러한 처리 순서는 수신자가 패킷을 복호화하기 전에 재전송 또는 위조 패킷의 빠른 탐지와 폐기를 용이하게 한다.
이렇게 함으로써 서비스 거부 공격의 영향을 잠재적으로 줄일 수 있다
또한, 수신자가 패킷의 병렬 처리를 가능하게 한다.
즉 보호화는 무결성 확인과 병렬 처리 될 수 있다
ICV는 암호화에 의해 보호 되지 않기 때문에, 키를 적용하는 무결성 알고리즘을 ICV 계산에 적용해야 한다
패딩
평문 길이가 특정 길이의 배수가 되야 하는 암호화 알고리즘이다.
패딩 필드는 평문을 확장시 필요하다
ESP 형식은 패드 길이와 다음 헤더 필드가 32 비트 워드에서 오른쪽 정렬이 필요하다.
마찬가지로 암호문 역시 32 비트 배수로 된 정수이어야 한다.
패딩 필드는 이러한 정렬을 보장하는데 사용된다
추가적인 패딩은 페이로드의 실제 길이를 감추어서 부분적인 트래픽 흐름의 비밀성을 제공하기 위해 추가하기도 한다.
재전송 방지 서비스
순서번호 필드로 재전송 공격을 막습니다
순서번호 처리(송신자)하는 방법
- 새로운 SA 성립되면 순서 번호 카운터를 0으로 초기화
- 패킷을 SA로 전송시 송신자는 카운터 값을 증가
- 순서 번호 필드 값 변경
- 초기 값은 1
재전송방지가 기본 값으로 설정되어 있다면, 송신자는 순서번호가 23^2 - 1을 넘을 경우 해당 SA를 종료하고, 새로운 키를 가진 새로운 SA를 설정합니다
순서 번호 처리
- 수신 된 패킷이 윈도우 범위 내에 있고, 새로운 것이면, MAC 검사
- 수신 된 패킷이 윈도우의 오른쪽에 해당하고, 새로운 것이면, MAC을 검사
- 수신된 패킷이 윈도우의 왼쪽에 해당하거나 또는 인증이 되지 않으면 패킷을 폐기
전송 모드와 터널 모드
IPsec ESP 서비스가 사용 되는 방법은 2가지 방법이 있습니다
전송 모드 ESP
- IP로 전송되는 데이터를 암호화하고, 선택적으로 인증하는데 사용한다
터널 모드 ESP - 전체 IP 패킷을 암호화하는데 사용
전송 모드 ESP
IP로 전송되는 데이터를 암호화하고, 선택적으로 인증하는데 사용 됩니다
IPv4
- ESP 헤더는 IP 패킷의 전송 계층 헤더 바로 앞에 삽입
- ESP 트레일러는 IP패킷 다음에 위치
- 인증이 선택되면, ESP 인증 데이터 필드가 ESP 트레일러 뒤에 추가
- 전체 전송 계층 세그먼트와 ESP 트레일러를 암호화
- 인증은 암호문 전체와 ESP 헤더까지 포함
IPv6 - ESP는 종단 간(end-to-end) 패킷으로 처리
- 중간라우터에서 검사되거나 처리되지 않음
- ESP 헤더는 IPv6 기본 헤더, 홉 간(hop-by-hop), 라우팅, 단편 확장 헤더 뒤에 붙는다
- 목적지 옵션 확장 헤더는 필요에 따라 ESP 헤더 앞 또는 뒤에 붙인다
- 암호화는 전체 전송 계층 세그먼트와 ESP 트레일러
- ESP 헤더 다음에 ESP 트레일러가 위치해 있다면 목적지 확장 옵션 확장 헤더까지를 포함해서 암호화 한다
- 인증은 암호문과 ESP 헤더를 포함
전송 모드 동작
- 발신지에서 ESP 트레일러와 전송 계층 세그먼트로 구성된 데이터 블록은 암호화
- 이 블록의 평문은 전송을 위한 IP 패킷을 구성하기 위해 암호문으로 대치
- 인증 옵션이 선택되면 인증이 추가 된다.
- 패킷은 목적지로 라우팅
- 각 중간 라우터는 IP 헤더와 평문 IP 확장 헤더를 검증하고 처리
- 암호문은 조사하지 않는다
- 목적지 노드는 IP 헤더와 모든 평문 IP 확장 헤더를 조사하고 처리
- ESP 헤더에서, SPI에 근거하여 목적지 노드는 전송 계층 세그먼트를 평문으로 만들기 위해 패킷의 나머지 부분을 복호화
터널 모드 ESP
터널 모드 캡슐화 보안 페이로드(ESP)는 네트워크를 통해 전송되는 IP 패킷에 대해 높은 수준의 보안을 제공하기 위해 IPsec(인터넷 프로토콜 보안)에서 사용되는 방법입니다.
터널 모드 ESP의 주요 특징은 다음과 같습니다
전체 IP 패킷 암호화
터널 모드 ESP는 원래 IP 헤더와 페이로드를 포함하여 전체 IP 패킷을 암호화하도록 설계되었습니다.
ESP 헤더 위치
ESP 헤더는 터널 모드에서 패킷의 앞에 위치합니다.
이는 패킷이 ESP에 의해 보호됨을 나타냅니다.
카운터 트래픽 분석
전체 패킷을 암호화함으로써 터널 모드 ESP는 잠재적인 공격자가 네트워크 트래픽을 분석하고 유용한 정보를 얻는 것을 더욱 어렵게 만듭니다.
IP 헤더에 미치는 영향
원본 IP 헤더(대상 주소, 소스 라우팅 표시기 및 홉별 옵션 정보와 같은 세부 정보 포함)가 암호화되기 때문에 중간 라우터에서 읽거나 처리할 수 없습니다.
중간 라우터에 의한 처리
중간 라우터는 암호화된 IP 헤더를 처리할 수 없기 때문에 터널 모드에서 직접 ESP 패킷을 처리할 수 없습니다.
새 IP 헤더 사용
암호화된 패킷이 네트워크를 통해 라우팅될 수 있도록 새로운 IP 패킷 내에 캡슐화됩니다.
이 새 패킷에는 라우팅 목적으로 사용되는 암호화되지 않은 새 IP 헤더가 포함되어 있습니다
터널 모드 ESP 전송 단계
외부 호스트에서 내부호스트로 전송데이터 세그먼트 전송하는 상황을 가정합니다
- 내부 호스트 목적지 주소를 가진 내부 IP 패킷을 준비
- 목적지 방화벽으로 라우팅
- 목적지 방화벽에서 외부 IP헤더와 IP확장헤더확인 후 처리
- 내부패킷은 내부 네트워크 안의 라우터를 통해 목적지 호스트로 라우팅
부족한 점이나 잘못 된 점을 알려주시면 시정하겠습니다 :>
'DEV > Backend' 카테고리의 다른 글
Secondary Index (0) | 2023.06.17 |
---|---|
SA (0) | 2023.06.10 |
Write Lock과 Read Lock (0) | 2023.06.10 |
낙관적 Lock과 비관적 Lock (1) | 2023.06.10 |
동시성 제어 (1) | 2023.06.10 |