8.3 ESP
8장. IP 보안
목포해양대해양컴퓨터공학과
개요
•
캡슐화 보안 페이로드 (ESP) 제공 서비스
• 기밀성
• 데이터 출처 인증
• 비연결형 무결성
• 재전송 방지 서비스(부분적 순서 무결성의 형태)
• (제한된) 트래픽 흐름의 비밀성
•
SA 설정 시점에 선택된 옵션과 네트워크 상의 구현위치에
의존적
•
다양한 암호화와 인증 알고리즘으로 동작
목포해양대해양컴퓨터공학과
ESP 형식 (1)
•
필드
• 보안 매개변수 색인(Security Parameters Index, 32비트):
• 순서 번호(Sequence Number, 32비트):
• 페이로드 데이터(Payload Data, 가변 길이):
• 패딩(Padding, 0~255 바이트):
• 패드 길이(Pad Length, 8 바이트):
• 다음 헤더(Next Header, 8 비트):
• 무결성 확인 값(ICV: Integrity Check Value, 가변 길이):
목포해양대해양컴퓨터공학과
ESP 형식 (2)
목포해양대해양컴퓨터공학과
ESP 형식 (3)
•
결합모드 알고리즘이 사용되는 경우
• 무결성 확인에 대한 성공/실패 지시자와 복호화된 평문 2가지를 반환
• ESP 마지막에 나오는 마지막 ICV 생략 가능
• 무결성 검증이 요구되는 경우 패킷의 무결성 검증은 결합모드 알고리즘에서 담당
•
추가적인 필드
• 암호화 또는 인증 알고리즘에서 요구하는 경우 IV(Initialization Vector) 또는 nonce 필드 가능
• 터널모드 사용시 페이로드 데이터 이후 또는 패딩 이전에
TFC(Traffic Flow Confidentiality) 패딩 추가 목포해양대
해양컴퓨터공학과
ESP 형식 (4)
목포해양대해양컴퓨터공학과
암호화 및 인증 알고리즘 (1)
•
ESP 서비스에서 암호화 대상
• 페이로드 데이터, 패딩, 패드 길이, 다음 헤더 필드
•
페이로드 암호화
• 암호화 알고리즘이 초기화 벡터(IV)를 필요로 하면 데이터는 페이로드 데이터 필드의 시작 부분에 명시해서 전달
• IV를 포함하면 암호문의 일부로 간주하지만 IV는 대체로
암호화하지 않음
목포해양대해양컴퓨터공학과
암호화 및 인증 알고리즘 (2)
•
ICV
• 필드는 옵션
• 무결성 서비스가 선택되고, 개별 무결성 알고리즘이나 ICV를 사용하는 결합 모드 알고리즘에 의해 제공될 때에만 나타남
• ICV는 암호화 알고리즘이 수행된 후에 계산
• 복호화하기 전에 위조 패킷을 탐지하고 폐기
• 서비스 거부(DoS) 공격 영향을 잠재적 줄임
• 수신자가 패킷 병렬 처리 가능
• ICV 확인과 복호화 병렬 처리
• ICV는 암호화로 보호되지 않으므로 키가 적용되는 무결성
알고리즘을 ICV 계산에 적용해야 함 목포해양대
해양컴퓨터공학과
패딩
•
평문 길이가 특정 길이의 배수가 되야 하는 암호화 알고리즘
• 패딩 필드는 평문을 확장시 필요
•
ESP 형식은 4 바이트 단위
• 패드 길이와 다음 헤더 필드가 32비트 워드에서 오른쪽 정렬
• 암호문은 32비트의 배수로 된 정수
• 패딩 필드는 이러한 정렬을 보장하는 데 사용
•
추가 패딩
• 페이로드의 실제 길이를 감추어서 부분적인 트래픽 흐름의
비밀성 제공 목포해양대
해양컴퓨터공학과
재전송방지 서비스 (1)
•
재전송 (Replay) 공격
• 인증된 패킷의 복사본 전송
•
순서번호 필드로 재전송 공격 방지
•
순서번호 처리 ( 송신자 )
• 새로운 SA 성립되면 순서 번호 카운터를 0으로 초기화
• 패킷을 SA로 전송시 송신자는 카운터 값을 증가하고, 순서
번호 필드 값 변경
• 초기 값은 1
• 재전송방지가 기본 값으로 설정되어 있다면,
• 송신자는 순서번호가 232 - 1을 넘을 경우 해당 SA를 종료하고, 새로운 키를 가진 새로운 SA를 설정
목포해양대해양컴퓨터공학과
재전송방지 서비스 (2)
•
순서번호 처리
• 수신자는 반드시 크기가 W의 윈도우 구현 (W의 기본값 64)
• 윈도우의 오른쪽 끝은 지금까지 수신한 유효 패킷의 가장 높은 순서 번호, N
• 정확하게 수신된 N - W + 1부터 N 범위에 있는 순서 번호를 가진 모든 패킷에 대해 윈도우 대응하는 슬롯을 표시
목포해양대해양컴퓨터공학과
재전송방지 서비스 (3)
•
순서번호 처리 ( 계속 )
목포해양대해양컴퓨터공학과
재전송방지 서비스 (4)
•
순서번호 처리(수신자)
1. 수신된 패킷이 윈도우 범위 내에 있고, 새로운 것이면, MAC을 검사
• 패킷이 인증되면 윈도우 안의 해당 슬롯을 표시
2. 수신된 패킷이 윈도우의 오른쪽에 해당하고 새로운 것이면, MAC을 검사
• 패킷이 인증되면, 순서 번호가 윈도우 오른쪽 끝에
위치하도록 윈도우를 이동시키고, 윈도우 내의 해당 슬롯을 표시
3. 수신된 패킷이 윈도우의 왼쪽에 해당하거나 또는 인증되지 목포해양대
해양컴퓨터공학과
전송 모드와 터널 모드 (1)
•
전송 모드 ESP
• IP로 전송되는 데이터(예: TCP 세그먼트)를 암호화하고,
선택적으로 인증하는 데 사용
•
터널 모드 ESP
• 전체 IP 패킷을 암호화하는 데 사용
목포해양대해양컴퓨터공학과
전송 모드와 터널 모드 (2)
•
암호화는 두 호스트 사이에서 직접 제공
목포해양대해양컴퓨터공학과전송 모드와 터널 모드 (3)
•
각 내부 네트워크의 보안 게이트웨이에서 터널 종료
목포해양대해양컴퓨터공학과
16
전송 모드 ESP (1)
•
IP 로 전송되는 데이터 ( 예 : TCP 세그먼트 ) 를 암호화하고 , 선택적으로 인증하는 데 사용
•
IPv4
• ESP 헤더는 IP 패킷의 전송 계층 헤더 바로 앞에 삽입
• ESP 트레일러는 IP패킷 다음에 위치
• 인증이 선택되면, ESP 인증 데이터 필드가 ESP 트레
• 일러 뒤에 추가
• 전체 전송 계층 세그먼트와 ESP 트레일러를 암호화
• 인증은 암호문 전체와 ESP 헤더까지 포함
목포해양대해양컴퓨터공학과
전송 모드 ESP (2)
•
IPv6
• ESP는 종단 간(end-to-end) 패킷으로 처리
• 중간라우터에서 검사되거나 처리되지 않음
• ESP 헤더는 IPv6 기본 헤더, 홉 간(hop-by-hop), 라우팅, 단편 확장 헤더 뒤에 위치
• 목적지 옵션 확장 헤더는 필요에 따라 ESP 헤더 앞 또는 뒤에 위치
• 암호화는 전체 전송 계층 세그먼트와 ESP 트레일러
• ESP 헤더 다음에 ESP 트레일러가 위치해 있다면 목적지 확장 옵션 확장 헤더까지를 포함해서 암호화
• 인증은 암호문과 ESP 헤더를 포함 목포해양대
해양컴퓨터공학과
전송 모드 ESP (3)
•
전송 모드 동작
1. 발신지에서 ESP 트레일러와 전송 계층 세그먼트로 구성된 데이터 블록은 암호화
• 이 블록의 평문은 전송을 위한 IP 패킷을 구성하기 위해 암호문으로 대치
• 인증 옵션이 선택되면 인증이 추가
2. 패킷은 목적지로 라우팅
• 각 중간 라우터는 IP 헤더와 평문 IP 확장 헤더만을 검증하고 처리
• 암호문은 조사하지 않음
목포해양대해양컴퓨터공학과
전송 모드 ESP (4)
•
전송 모드 동작 ( 계속 )
3. 목적지 노드는 IP 헤더와 모든 평문 IP 확장 헤더를 조사하고 처리
4. ESP헤더에서 SPI에 근거하여 목적지 노드는 전송 계층
세그먼트를 평문으로 만들기 위해 패킷의 나머지 부분을 복호화
•
장점 : 임의의 응용프로그램에 비밀성 제공
•
단점 : 전송되는 패킷에 대한 트래픽 분석 가능
목포해양대해양컴퓨터공학과
터널 모드 ESP (1)
• 전체 IP 패킷을 암호화하는 데 사용
• ESP 헤더 위치: 패킷의 앞
• 패킷과 ESP 트레일러는 암호화
• 이 방법은 트래픽 분석에 대응하기 위해 사용
• 새로운 IP 헤더를 붙여 캡슐화
• IP 헤더는 목적지 주소와 발신지 라우팅 지시자, 그리고 홉
간(hop-by-hop)옵션 정보를 갖고 있기 때문에 암호화된 IP 패킷
앞에 ESP 헤더를 붙여 전송하는 것은 불가능
• 중계 라우터는 ESP 패킷 처리 불가
• 터널모드의 경우 방화벽이나 보안 게이트웨이 환경에서 유용
• 내부에서의 암호화 부담이 없음
목포해양대해양컴퓨터공학과
터널 모드 ESP (2)
•
외부 호스트에서 내부호스트로 전송데이터 세그먼트 전송 단계
1. 발신자는 내부 호스트 목적지 주소를 가진 내부 IP 패킷을 준비하고 목적지 주소가 방화벽인 새로운 IP헤더로 캡슐화
• ESP 헤더 + 패킷과 트레일러 암호화 + 인증 데이터(옵션)
2. 목적지 방화벽으로 라우팅 (외부 IP헤더만 참조)
3. 목적지 방화벽에서 외부 IP헤더와 IP확장헤더확인 후 처리 4. 내부 패킷은 내부 네트워크 안의 라우터를 통해 목적지
호스트로 라우팅 목포해양대
해양컴퓨터공학과
ESP 암호화와 인증 범위
목포해양대해양컴퓨터공학과
ESP 암호화와 인증 범위
목포해양대해양컴퓨터공학과