인터넷 보안 - ipsecc0%cc%b1%a4...임무 ip 계층에서의 보안 및 키 관리 프로토콜...
TRANSCRIPT
2
목 차
1. IPsec 프로토콜 개요
2. IETF IPsec WG 문서
3. IPsec 구조
4. IPsec 프로토콜 보안 특성
5. 관련 IETF WGs
6. IPsec Products
3
1. IPsec 프로토콜 개요
• IETF IPsec WG
• IPsec 프로토콜
• AH (Authentication Header)
• ESP (Encapsulating Security Payload)
• IKE (Internet Key Exchange)
4
IETF IPsec WG
이름 IP Security Protocol
홈페이지 http://www.ietf.org/html.charters/ipsec-charter.html
활동기간 Since 1992 (1st WG Meeting in 1993)
임무 IP 계층에서의 보안 및 키 관리 프로토콜 개발
의장단 Theodore Ts'o <[email protected]>
Barbara Fraser <[email protected]>
메일링
리스트
일반 토의 [email protected]
메일 보관고 ftp://ftp.tis.com/pub/lists/ipsec
5
IPsec 프로토콜
설계
목표
IP 계층 또는 그 상위 계층 프로토콜을 보호
기밀성
데이터 근원 인증
비연결형 무결성
재전송 공격 방지
제한된 트래픽 흐름 기밀성
접근 제어
보안
메커니즘
• AH (인증 헤더; Authentication Header)
• ESP (캡슐화 보안 페이로드; Encapsulating Security Payload)
• 키 관리 절차
– 수동식
– 자동식: IKE (Internet Key Exchange), KINK, …
6
• IPsec 운용 모드
인터넷
데이터
IPsec 터널 또는 트랜스포트
호스트
데이터
IPsec 터널
인터넷
보안 게이트웨이
트랜스포트 모드 터널 모드
상위 계층 데이터에 보안 서비스 제공 전체 IP 패킷에 보안 서비스 제공
호스트에 적용 호스트와 보안 게이트웨이에 적용
SA (Security
Association):
실제 적용될 보안
서비스, 알고리즘,
키, 기타 패러미터
등을 나타냄
7
• 메시지 checksum (ICV; Integrity Check Value)을 이용하여 보안 서비스 제공
• Keyed MD5 또는 HMAC 알고리즘들을 사용하여 MAC 계산
• 제공되는 서비스
– 비연결형 무결성
– 데이터 근원 인증
– 재전송 공격 방지
AH (Authentication Header)
8
• 인증 알고리즘
– Keyed MD5
MD5 (key || keyfill || datagram || key || MD5fill)
– HMAC
H(key XOR opad, H(key XOR ipad, text))
ipad = 패딩 (값: 0x36)
opad = 패딩 (값: 0x5C)
9
• AH 양식
IP 헤더 AH Payload
Next Header Payload Len RESERVED
Security Parameter Index (SPI)
Sequence Number Field
Authentication data (variable length)
0 7 15 31
Next Header: 다음 헤더의 종류를 표시
Payload Len: AH 길이 (32비트 워드 단위) - 2
10
• AH 위치
– Transport mode
– Tunnel mode
new IP
header
ext hdrs
if present AH
original
IP header
ext hdrs
if present
upper
level hdr data
new IP
header AH
original
IP header
upper
level hdr data
original
IP header
ext hdrs
if present AH
ext hdrs if
present
upper
level hdr data
original
IP header AH
upper
level hdr data
Authenticated except for mutable fields in the new IP header
IP v4
IP v4
IP v6
IP v6
11
• 암호화 알고리즘을 사용하여 기밀성 제공: DES, 3DES, CAST-128, IDEA, RC5, Blowfish
• 인증 서비스의 경우 AH와 인증 범위 다름
• 제공되는 서비스
– 기밀성
– 데이터 근원 인증
– 비연결형 무결성
– 재전송 공격 방지
– 제한된 트래픽 흐름 기밀성
둘 중 하나는 반드시 선택
ESP (Encapsulating Security Payload)
12
• ESP 양식
IP 헤더 ESP 헤더 Payload ESP trailer ESP Auth.
0 7 15 31
Security Parameter Index (SPI)
Sequence Number Field
페이로드 데이터 (가변 길이)
패딩 (0-255 바이트)
패딩 길이 다음 헤더
Authentication Data (가변 길이)
Au
then
tica
tio
n
En
cry
pti
on
13
• ESP 위치
– Transport mode
– Tunnel mode
new IP
hdr
ext
hdrs
ESP
hdr
orig. IP
header
orig. ext
hdrs
upper
level hdr data
ESP
trailer
ESP
auth.
new IP
hdr
ESP
hdr
orig. IP
header
upper
level hdr data
ESP
trailer
ESP
auth.
orig. IP
hdr
ext
hdrs
ESP
hdr
Dest
option
upper
level hdr data
ESP
trailer
ESP
auth.
encrypted authenticated
orig. IP
hdr
ESP
hdr
upper
level hdr data
ESP
trailer
ESP
auth. IP v4
IP v4
IP v6
IP v6
14
• ISAKMP – Internet Security Association and
Key Management Protocol
– 키나 SA 정보 교환을 위한 기본 구조와 데이터 형식 규정
• Oakley – 안전한 키 교환 절차들을 기술
– 주요 기능
• Authentication: man-in-th-middle 공격으로부터의 보호
• PFS(Perfect Forward Secrecy) for keys
• Identity protection: 통신 당사자의 신원 보호
IKE (Internet Key Exchange)
15
• IKE (Internet Key Exchange) 개요
– 자동식 SA 협상, 키 교환
– peer-to-peer 방식: 서버 요하지 않음
– ISAKMP 프레임워크 + Oakley 키 교환 절차
– Denial-of-Service에 대한 제한적 방어
– Man-in-the-middle 공격 방지
– 협상 항목
• E/A/H Algorithms
• Diffie-Hellman 그룹
• 키 재료
16
• Diffie-Hellman Key Agreement Protocol
– 소수 p 와 Zp* 의 생성자 a 를 선택하여 공표
– 사용자 A, B는 각기 비밀 값 x, y를 선택
– A는 K = (ay mod p)x mod p = axy mod p ,
B는 K = (ax mod p)y mod p = axy mod p 를 계산
– Man-in-the-Middle Attack에 취약
A B
ax mod p
ay mod p
17
• D-H Protocol에 대한 MitM 공격
– A는 K1 = (az mod p)x mod p = axz mod p ,
B는 K2 = (az mod p)y mod p = ayz mod p 를 계산하며;
공격자 C는 (ax mod p)z, (ax mod p)z 로 K1, K2 모두 계산
– 교환되는 정보에 대한 인증을 사용하여 방지 가능
C A B
ax mod p
ay mod p az mod p
az mod p
18
• IKE 절차
– Phase 1 (main mode 또는 aggressive mode)
• IKE SA 및 master secret 생성
• 이후의 IKE 협상 과정을 보호
• Main mode는 6번의 메시지를 교환
• Aggressive mode는 3번의 메시지 교환으로 완료, ID 보호되지
않음
– Phase 2 (quick mode)
• SA 및 키 협상
• 3번의 메시지 교환
• Phase 1에 비해 계산량이 적음
• Key refresh(Rekeying)를 위해 자주 수행
• 동일한 Phase 1 IKE SA 보호 하에 여러 번의 Phase 2 교환 가능
19
IKE Phase 1 (main mode)
IKE Phase 2 (quick mode)
msg 1
msg 2
Alice
Bob 패러미터 협상 (HDR, SA)
msg 3
msg 4
Alice
Bob D-H 키 교환 인증
(사전 공유키, 서명,
공개키 암호화) msg 5
msg 6
Alice
Bob
msg
1
HDR*, HASH(1), SA, Ni
[, KE] [, IDci, IDcr]
KEYMAT = prf(SKEYID_d,
protocol | SPI | Ni_b | Nr_b)
또는 (with PFS)
KEYMAT = prf(SKEYID_d, g(qm)^xy |
protocol | SPI | Ni_b | Nr_b)
• HDR*는 HDR 이후 부분의 암호화를 의미
msg
2
HDR*, HASH(2), SA, Nr
[, KE] [, Idci, IDcr]
msg
3
HDR*, HASH(3)
20
Main mode example using Signature
HDR, SA -->
<-- HDR, SA
HDR, KE, Ni -->
<-- HDR, KE, Nr
HDR*, IDii, [CERT,] SIG_I -->
<-- HDR*, IDir, [CERT,] SIG_R
Agressive mode example using Signature
HDR, SA, KE, Ni, IDii -->
<-- HDR, SA, KE, Nr, IDir, [ CERT, ] SIG_R
HDR, [ CERT, ] SIG_I -->
21
Main mode example using Public Key Encryption HDR, SA -->
<-- HDR, SA
HDR, KE, [HASH(1),] <IDii_b>PubKey_r, <Ni_b>PubKey_r -->
<-- HDR, KE, <IDir_b>PubKey_i, <Nr_b>PubKey_i
HDR*, HASH_I -->
<-- HDR*, HASH_R
Agressive mode example HDR, SA, [ HASH(1),] KE,
<IDii_b>Pubkey_r, <Ni_b>Pubkey_r -->
<-- HDR, SA, KE, <IDir_b>PubKey_i,
<Nr_b>PubKey_i, HASH_R
HDR, HASH_I -->
* <X>Y: 키 Y를 사용하여 데이터 X를 암호화 함
22
• IPsec RFCs
• IPsec RFC 문서들의 상관 관계
• IPsec Internet Drafts
2. IETF IPsec WG 문서
23
제목 RFC#
IP Security Document Roadmap 2411
Security Architecture for the Internet Protocol 2401
IP Authentication Header
IP Encapsulating Security Payload (ESP)
2402
2406
The Internet IP Security Domain of Interpretation for ISAKMP
Internet Security Association and Key Management Protocol
(ISAKMP)
The Internet Key Exchange (IKE)
The OAKLEY Key Determination Protocol
2407
2408
2409
2412
IPsec RFCs (1/2)
24
제목 RFC#
IP Authentication using Keyed MD5
HMAC: Keyed-Hashing for Message Authentication
HMAC-MD5 IP Authentication with Replay Prevention
The Use of HMAC-MD5-96 within ESP and AH
The Use of HMAC-SHA-1-96 within ESP and AH
The Use of HMAC-RIPEMD-160-96 within ESP and AH
1828
2104
2085
2403
2404
2857
The ESP DES-CBC Transform
The ESP DES-CBC Cipher Algorithm With Explicit IV
The NULL Encryption Algorithm and Its Use With IPsec
The ESP CBC-Mode Cipher Algorithms
1829
2405
2410
2451
IPsec RFCs (2/2)
25
Architecture
(RFC 2401)
Encapsulation Security
Protocol (RFC 2406)
Authentication Header
(RFC 2402)
Encryption Algorithm
(RFC 1829, 2405, 2410, 2451)
Authentication Algorithm
(RFC 2085, 2104, 2403, 2404, …)
Domain of Interpretation
(RFC 2407)
Key Management
(RFC 2408, 2409, 2412)
IPsec RFC 문서들의 상관 관계
26
IPsec Internet Drafts (1/2)
More MODP Diffie-Hellman groups for IKE
The AES-XCBC-MAC-96 Algorithm and Its Use With IPsec
On the Use of SCTP with IPsec
The Internet IP Security PKI Profile of ISAKMP and PKIX
IPsec-NAT Compatibility Requirements
Negotiation of NAT-Traversal in the IKE
UDP Encapsulation of IPsec Packets
27
IPsec Internet Drafts (2/2)
IP Authentication Header
IP Encapsulating Security Payload (ESP)
Proposal for the IKEv2 Protocol
Just Fast Keying (JFK)
Design Rationale for IKEv2
Son-of-IKE Requirements
Features of Proposed Successors to IKE
Revised Use of Identity in Successors to IKE
28
3. IPsec 구조
관련 문서 RFC 2401: Security Architecture for the Internet Protocol
주요 내용
IPsec 시스템의 기본 구조
– IPsec 시스템의 목적
– IPsec 시스템의 구성 요소
– IPsec 시스템 구성 요소들의 관계
– IPsec 시스템과 IP 환경과의 관계
설계 목표
IP 계층 또는 그 상위 계층 프로토콜을 보호
기밀성 재전송 공격 방지
데이터 근원 인증 제한된 트래픽 흐름 기밀성
비연결형 무결성 접근 제어
보안
메커니즘
• AH (인증 헤더; Authentication Header)
• ESP (캡슐화 보안 페이로드; Encapsulating Security Payload)
• 키 관리 절차
29
• IPsec 시스템 개요
– IP 트래픽을 보호
– 보호 내용은 보안 정책 데이터베이스에 규정
• 데이터베이스는 사용자나 관리자, 또는 어플리케이션에 의해
설정/유지 된다.
• 각 패킷은 선택자 정보를 이용하여 해당 보안 정책을 찾아 다음
세가지 처리 모드 중 하나를 선택한다:
– IPsec 보안 서비스를 받는다
– 패킷이 폐기된다
– IPsec을 우회(bypass)한다
30
• IPsec이 하는 일
– IP 계층에서의 보안 서비스 제공
• 보안 프로토콜의 선택
• 선택된 보안 서비스를 위한 알고리즘의 선택
• 알고리즘에 사용되는 암호키의 배치
– 보안 서비스 제공 구간
• 호스트와 호스트 사이
• 보안 게이트웨이와 보안 게이트웨이 사이
• 호스트와 보안 게이트웨이 사이
– IP 계층에서의 압축
암호화 이후에는 압축 효과가 없기 때문
IPsec을 구현한
라우터나 방화벽
31
• IPsec은 어떻게 작동하는가 [1]
– 보안 메커니즘
• 인증 헤더(AH):
비연결형 무결성과 데이터 근원 인증 + [재전송 공격 방지]
• 캡슐화 보안 페이로드(ESP):
기밀성 + 제한된 트래픽 흐름 기밀성 + AH 기능
• AH와 ESP 모두 접근 제어 수단으로 사용 가능:
암호키 분배와 트래픽 흐름 관리 이용
• AH와 ESP는 IPv4/6에서 단독으로 또는 결합되어 사용 가능
32
• IPsec은 어떻게 작동하는가 [2]
– 운용 모드
• 트랜스포트 모드: 상위 계층 프로토콜 보호
• 터널 모드: 터널화된 IP 패킷에 보안 서비스 제공
– 키 관리 기능
• IKE가 규정되어 있음
• 다른 키 관리 메커니즘의 사용도 배제되어 있지 않음
– 커버로스와 같은 중앙 집중형 KDC 기반 시스템:
KINK WG에서 작업 중
– SKIP (Simple Key management for Internet Protocols)
고정된 Diffie-Hellman 키 인증서 기반
http://www.skip.org/
33
• IPsec의 구현 위치: 호스트나 방화벽, 라우터에 구현
– IP 구현에 통합
• IP 스택 소스 코드에 대한 접근이 필요함
• 호스트나 보안 게이트웨이 모두에 적용 가능
– BITS (bump-in-the-stack) 구현
• IP 프로토콜 스택 바로 아래, 즉 IP와 지역 네트워크 드라이버
사이에 구현
• IP 스택 소스 코드에 대한 접근은 필요하지 않음
• 호스트 구현에 적합
– BITW (bump-in-the-wire) 구현
• 외장형 암호 처리기로 사용
• 호스트나 보안 게이트웨이 모두에 적용 가능
34
• 보안 연계 = Security Association = SA
– 트래픽에 보안 서비스를 제공하는 일방향 연결
• 보안 서비스는 ESP나 AH 중의 하나이며,
두 가지 서비스를 모두 받기 위해서는 두 개의 SA가 필요함
• 양 방향 통신을 보호하기 위해서는 각 방향별로 별도의 SA를 필
요로 하며, 두 SA의 서비스 내용이 다를 수 있음
• IPsec 서비스 제공 전 송신자와 수신자 사이에서 협상
– 해당 보안 서비스와 메커니즘을 정의하는 패러미터들의
집합
35
• SA의 식별
– 보안 패러미터 인덱스 (SPI; Security Parameter Index)
– 목적지 IP 주소
– 보안 프로토콜 (AH 또는 ESP)
• SA의 결합
– 두 가지 이상의 보안 서비스가 적용되어야 할 상황에 여
러 개의 SA가 사용되며, 이들을 SA 번들이라 부름
– SA 결합 방식
• 트랜스포트 인접성: 트랜스포트 모드에서 AH + ESP
• 반복 터널링: 터널마다 송신/수신 노드가 다를 수 있음
• 위의 두 방식이 결합되어 사용될 수도 있음
36
• 보안 연계 관련 데이터베이스 모델: SPD와 SAD
– SPD: 보안 정책(Security Policy) 데이터베이스
• IP 트래픽에 적용될 보안 서비스를 규정
• 각 항은 “선택자 + 보안 서비스”로 구성됨
• 선택자는 DB “키” 역할을 함
• 보안 서비스
– IPsec 적용 + pointer to SA(s) in SAD
– 패킷 폐기
– IPsec 우회
• 출발 트래픽용 SPD와 도착 트래픽용 SPD가 있음
37
– 선택자 (Selectors)
• IP 트래픽을 IPsec 정책에 대응시킨다
• 구성 항목 (각 항목은 범위 표현이나 와일드카드 표현 가능)
– 출발지 IP 주소
– 목적지 IP 주소
– 출발지 포트
– 목적지 포트
– 이름 (사용자 ID, 시스템 이름)
– 데이터 민감성 수준
– 전송 계층 프로토콜
• SPD에서 선택자 해당 범위가 겹칠 수 있어 일관성 있게 해당 정책항의 선택을 보장하는 메커니즘이 필요함
38
– SAD: 보안 연계 (Security Association) 데이터베이스
• SA 관련 패러미터를 저장하고 있는 데이터베이스
• SAD 필드
– 일련 번호 카운터 (출발 트래픽용; 재전송 공격 방지)
– 재전송 공격 방지 윈도우 (도착 트래픽용; 비트맵)
– AH 인증 알고리즘, 키, …
– ESP 암호화 알고리즘, 키, IV 모드, IV 값, …
– ESP 인증 알고리즘, 키, …
– SA 유효기간
– IPsec 프로토콜 모드: 터널, 트랜스포트
– PMTU (Path Maximum Transfer Unit)
• 출발용 패킷 처리
– SPD 항이 SAD 항(들)을 가리킴; 아니면 SA 협상/생성 필요
• 도착용 패킷 처리
– 패킷의 목적지 IP 주소, IPsec 프로토콜(AH, ESP), SPI에 의해 해당 SA를 찾아서 처리
39
• SA의 기본 조합
– End-to-end security (case 1)
인터넷/인트라넷
host
Transport/Tunnel
Transport Tunnel
1. [IP1][AH][upper] 4. [IP2][AH][IP1][upper]
2. [IP1][ESP][upper] 5. [IP2][ESP][IP1][upper]
3. [IP1][AH][ESP][upper]
40
– Simple VPN (case 2)
– LAN-to-LAN VPN (case 3): case 1 + case 2
case 1
case 2
인터넷
Secure gateway
인트라넷
인트라넷
인트라넷
인트라넷
인터넷
Tunnel
41
– Dialup Remote Access VPN, Mobile Host (case 4)
case 1
case 2
인트라넷
인터넷
could be dialup to PPP/ARA server
42
• SA 및 키의 관리
– 키 관리 방식
• 수동식
– 소규모의 정적인 환경에 적합
– 일반적으로 대칭 키를 사용
• 자동식
– 대규모의 동적인 환경을 지원
– 재전송 공격 방지, 사용자별/세션별 키 제공 등에 필요
– 기본 프로토콜: IKE (Internet Key Exchange: RFC 2409)
– 보안 게이트웨이의 발견
– 호스트가 상대방 호스트에 이르는 보안 게이트웨이를 발견
하고 인증하는 문제로서 지역 구현에 맡겨져 있음
43
4. IPsec 프로토콜 보안 특성
기밀성
Confidentiality
암호화 범위 트래픽 흐름
암호 특성 신원 보호
인증
Authentication
인증 범위 암호 특성
호스트 인증 사용자 인증
키 생성
Key Generation
키 변경 (Rekeying) 키 재료의 독립성
암호 특성 완전 전방 기밀성 (PFS)
약한 키 (Weak Keys) 임의 군의 사용
키 강도
서비스 거부 공격
Denial of Service
ESP 패킷 위장 메모리 소모
시간 소모 동기화
기타 재전송 공격 (Replay)
44
기밀성
• 암호화 범위
– ESP 트랜스포트 모드:
4계층 이상의 데이터 보호
– ESP 터널 모드:
내부 헤더도 암호화 됨,
그러나 내부 헤더의 일부 정보는
암호화 되지 않는 외부 헤더에 복사되어 있음
– IKE phase 1:
상당 부분은 암호화되지 않음
– IKE phase 2:
HDR 부분을 제외하고는 모두 암호화됨
45
• 트래픽 흐름
– ESP
• 포트/프로토콜 등을 숨김
• 패딩을 사용하여 패킷 크기 숨김 (패딩 길이 < 256); 더 이상의 패딩을 원할 경우 어플리케이션에서 처리해야 함
– ESP 터널 모드
• 보안 게이트웨이 뒤의 실제 호스트 주소 숨김
• 암호 특성
– ESP/IKE 등에서의 암호화는 CBC 모드 사용
• IV의 사용으로 동일한 평문 블록이 다른 암호문 블록이 된다
• CBC는 known plaintext attack에 취약 (동일한 키를 사용하여 암호화된 패킷의 일부를 끼워넣을 때, 연결 부분 근처 두 블록씩만 손상됨)
– 암호화는 인증을 대체할 수 없다
46
• 신원보호
– 서명 방식의 인증
• 수동적 공격자로부터 Alice와 Bob의 신원 보호
• 능동적 공격자는 Alice의 신원을 파악하게 됨
– 공개키 암호화 방식의 인증
• Bob이 여러 공개키를 갖고 있을 경우 Alice는 자신이 사용한 키의 해쉬를 보냄으로써 Bob을 노출
– 사전 공유키에 의한 암호화 방식의 인증
• IP 주소로 식별되는 키를 사용
HDR, SA -->
<-- HDR, SA
HDR, KE, Ni -->
<-- HDR, KE, Nr
HDR*, IDii, HASH_I -->
<-- HDR*, IDir, HASH_R
47
인증
• 인증 범위
– ESP: IP 페이로드 전체 (IP 헤더 제외)
– AH: IP 헤더의 불변 부분도 포함
– 터널 모드의 경우 ESP와 AH의 인증 효과는 동일함
– IKE Phase 1:
• DH 비밀과 ID 인증
• 선택 사항인 ISAKMP 페이로드는 인증 안됨
– Notify 메시지, Vendor-id 메시지 등을 이용한 공격 가능
– IKE Phase 2:
• 헤더를 제외한 전체 인증
• 헤더의 commit bit를 변경함으로써 DoS 공격 가능
48
• 암호 특성
– HMAC 함수들은 결과를 절삭하여 사용
• 분석 자료를 감소시킴
• 보안 효과에 대해서는 강화시킬지 약화시킬지 불분명함
• 패킷의 크기를 줄이는 효과가 있음
– HMAC 함수들은 prf로도 사용되고 있으므로 결과의 난수성을 보장할 수 있는 함수를 사용해야 함
• 호스트 인증
– IKE Phase 1 인증: Man-in-the-middle 공격 방지
– 서명 방식 인증: 부인 봉쇄 지원
• 사용자 인증
– 지원되고 있지만 어플리케이션 계층에 전달되지 않음
49
키 생성
• 키 변경 (Rekeying)
– 목적:
• 암호문의 양을 제한하여 암호 분석을 방지
• 노출된 키로 인한 피해 범위를 제한
– 키 수명
• 시간 기반
• 트래픽 기반
– 퀵 모드 적용 횟수에 의해 IKE Phase 1 SA 수명을 제한
50
• 키 재료의 독립성 – 양자간 비밀 값 SKEYID 계산 (IKE Phase 1)
• 서명: prf(Ni_b | Nr_b, g^xy)
• 공개키 암호: prf(hash(Ni_b | Nr_b), CKY-I | CKY-R)
• 사전 공유키: prf(pre-shared-key, Ni_b | Nr_b)
– IPsec 보호용, IKE 인증용, IKE 암호화용 값 계산 (IKE Phase 1)
• SKEYID_d = prf(SKEYID, g^xy | CKY-I | CKY-R | 0)
• SKEYID_a = prf(SKEYID, SKEYID_d | g^xy | CKY-I | CKY-R | 1)
• SKEYID_e = prf(SKEYID, SKEYID_a | g^xy | CKY-I | CKY-R | 2)
– PFS 지원 여부에 따라 (IKE Phase 2)
• KEYMAT = prf(SKEYID_d, protocol | SPI | Ni_b | Nr_b)
• KEYMAT = prf(SKEYID_d, g(qm)^xy | protocol | SPI | Ni_b | Nr_b)
• 키 재료가 짧을 경우 결과 값에 일방성 함수인 prf를 반복 적용하여 얻은
결과들을 연접하여 사용함
– prf 함수의 일방성: 한 키가 노출되어도 다른 키는 안전함
51
• 암호 특성 – 키 계산에 사용되는 요소들은 일방성 함수 prf를 거치므로 그 결과
가 노출되어도 그 요소들은 노출되지 않음
– SKEYID는 가능한 한 g^xy 아닌 값으로부터 도출함으로써 DH 비밀 보호
• 완전 전방 기밀성 (PFS; Perfect Forward Secrecy) – 장기간용 비밀의 노출이 세션키를 노출하지 않음
– 퀵 모드 적용 때마다 별도의 임시 DH 교환
– PFS의 사용으로 계산량이 적은 quick mode로 main mode의 효과를 대체
• 약한 키 (Weak Keys) – IKE는 약한 키에 대한 검사를 의무화하고 있음
– 약한 키의 발생 가능성은 아주 낮으며, 공격자가 이를 발견할 가능성도 적음
– 따라서 약한 키에 대한 검사의 실효성은 별로 없음
52
• 임의 군의 사용 (Ad Hoc Groups) – IKE 문서는 4개의 DH 군을 지정하고 있음 (Oakley 문서는 5개)
– IKE는 지정되어 있지 않은 임의 군의 사용을 허용함
– 충분히 검증되지 않은 임의 군을 장기간 사용하는 것은 바람직하지 않음
– 구현은 제안된 임의 군의 소수성을 검사하도록 되어 있음
• 키 강도
– 키 강도에 영향을 주는 요소
• 키 길이
• DH 비밀의 길이
• 키 재료의 길이가 충분하지 않을 때 처음 생성된 값에 일방성 함수인 prf를 반복 적용하여 얻은 결과들을 연접하여 사용하는데, 이는 DH 비밀의 엔트로피를 충분히 활용하지 못하는 방식이다
53
서비스 거부 공격
• ESP 패킷 위장 (Packet Spoofing)
– IPsec 인증 서비스는 위장 패킷에 의한 DoS 방지
– 암호화되지 않은 초기 IKE 패킷이 DoS 공격에 사용 가능
• 메모리 소모 (Memory Consumption)
– IKE 프로토콜 메시지는 상태 유지를 요하며, 따라서 상태 저장 공간 오버플로우를 일으키는 공격 가능
– IKE 메인 모드의 1 번 메시지 내용을 3 번 메시지에서 반복하는 방법으로 상태 유지 필요 없는 IKE 교환 가능
54
• 시간 소모 (Time Consumption)
– IKE Phase 1의 지수 계산을 이용한 DoS 공격 가능
– 메인 모드에서는 초기 쿠키 교환을 이용하여 방지
– Aggressive 모드는 공격에 노출되어 있음
– PFS 지원 퀵 모드도 취약하지만 계산 지연 방식으로 회피
– IKE는 DDoS를 막지 못함
• 동기화 (Synchronization)
– ISAKMP 헤더의 commit bit를 공격자가 설정하면, 상대편으로부터 (오지 않을) 연결 통지를 기다리게 됨
– Vendor id 페이로드를 추가함으로써 동작 방식 변경
– 상태 삭제 메시지를 위조하거나 전달을 막을 수 있음
55
기타 – 재전송 공격
• ESP와 AH는 인증에서 재전송 방지 카운터 포함
– 전달 차단 후 나중에 일부만 전송하는 공격은 방지 못함
• IKE의 메인 모드, aggressive 모드, 퀵 모드는 재전송 공격
방지 기능 있음 (nonce 교환 사용)
• 퀵 모드 재전송은 DoS 공격 가능
• 일반 ISAKMP 메시지는 재전송 공격 방지 기능 없음
– New group mode
– Info mode: <예> initial contact 통지문 => 이전 정보의 삭제 초래
56
5. 관련 IETF WGs
• IPSP (IP Security Policy)
• IPSRA (IP Security Remote Access)
• KINK (Kerberized Internet Negotiation of Keys)
• MSEC (Multicast Security)
57
IPSP
작업반
개요
• IP Security Policy
• Since 2000
• 보안 정책의 표현, 발견, 교환, 관리 등을 위한 구조 정의
– IP 보안 정책을 지원하기 위한 저장소 독립적 정보
모델과
저장소 종류별 데이터 모델 명세
– 확장 가능한 정책 표현 언어 개발
– 정책의 교환과 협상 프로토콜 개발
RFCs • None
I-Ds • IPsec Configuration Policy Model
• Security Policy Protocol
• IPsec Policy Information Base
58
IPSRA (1)
작업반
개요
• IP Security Remote Access
• Since 2000
• IPsec 게이트웨이 바깥에서 이동식 장비를 이용하는
원격 사용자를 위한 IPsec 지원
• 원격 사용자들의 인터넷 접속 형태:
– 지역 ISP에의 모뎀 접속
– 컨퍼런스 등 객지에서의 유선/무선 LAN 접속
• 일반적인 IPsec과의 차이점:
– 인증 실체가 사람
– 여러 사람이 동일한 장비를 공유하는 상황 고려
– 엔트리 지점에서 접근 실체에 대한 정보를
갖고 있지 않을 수도 있다
– 원격 접근 실체가 설정 정보를 갖고 있지 않을 수 있다
59
IPSRA (2)
RFCs • None
I-Ds • DHCPv4 Configuration of IPSEC Tunnel Mode
• Requirements for IPsec Remote Access Scenarios
• PIC, A Pre-IKE Credential Provisioning Protocol
60
KINK
작업반
개요
• Kerberized Internet Negotiation of Keys
• Since 2000
• Kerberos 기반 중앙 집중형
IPsec 키 관리 메커니즘 개발
RFCs • Requirements for Kerberized Internet Negotiation of Keys
(RFC 3129)
I-Ds • Kerberized Internet Negotiation of Keys (KINK)
61
MSEC (1)
작업반
개요
• Multicast Security
• Since 2001
• IRTF의 Seccure Multicast RG의 작업에 기반
• 인터넷에서의 그룹 통신 보호 (특히, 단일 송신자 – 다수 수신자)
• 주요 구성 요소
– 데이터 보호 변환 (당사자 인증과 기밀성)
– 그룹 키 및 SA 관리
– 그룹 정책 관리
• IRTF의 SMuG와 RMRG, IETF의 IPsec, IPSP, Policy, RMT
작업반과 긴밀하게 협력
62
MSEC (2)
RFCs • None
I-Ds • The Group Domain of Interpretation
• Group Key Management Architecture
• MIKEY: Multimedia Internet KEYing
63
6. IPsec Products
• Cisco VPN Devices
(http://www.cisco.com/warp/public/cc/pd/hb/vp5000/)
– Cisco Secure PIX Firewall
– Cisco VPN 5000 Series Concentrators
– Cisco VPN 3000 Series Concentrators
• ICSA Labs Certified IPsec Products (http://www.icsalabs.com/html/communities/ipsec/certification/certified_products/)
21개 이상의 회사로부터의 27개 이상의 제품
64
• VPNC Conformance Testing
(http://www.vpnc.org/conformance.html)
2002년 6월 현재 기본 적합성 시험에 합격한 23개 회사로부터의 25
개 제품을 열거하고 있으며, 이 중 일부는 ICSA 리스트와 중복
• 국내 제품
– ㈜니츠 VPN Suite
(http://www.nitz.co.kr/newhome/korea/sub/vpn.htm)
– 리눅스시큐리티㈜ BiMON VPN
(http://www.linuxsecurity.co.kr/korea/boan7.html)
– ㈜퓨쳐시스템 SecuwayGate 2000
(http://www.future.co.kr/product/product1.php?num=2)
– 시큐아이닷컴㈜ secuiVPN
(http://www.secui.com/korean/body1121.asp?code=1121)
65
• 소스가 공개된 구현
– NIST IP Security Web Based Interoperability Tester
(IPsec-WIT)
(http://ipsec-wit.antd.nist.gov/)
• Cerberus (http://www.antd.nist.gov/cerberus/): IPsec R.I.
• PlutoPlus (http://www.antd.nist.gov/plutoplus/): IKE R.I.
– Linux FreeS/WAN (http://www.freeswan.org/)
– OpenBSD (http://www.openbsd.org/)
– KAME Project (http://www.kame.net/)