1 TCP/IP Network Protocols 제 11 장보안프로토콜 박승철교수한국기술교육대학교
2 제 11 장의강의목표 인터넷보안의기본개념이해 암호화기법에대한이해 대칭열쇠암호화 공개열쇠암호화 디지털서명, 사용자인증, 열쇠관리기법이해 인터넷보안프로토콜에대한이해 IPsec, SSL/TLS, PGP, 무선 LAN 보안프로토콜 접근제어시스템의개념이해
3 제 11 장의구성 인터넷보안개요 암호화기법 디지털서명 사용자인증 열쇠관리 네트워크계층보안프로토콜 IPsec 트랜스포트계층보안프로토콜 - SSL/TLS 이메일보안프로토콜 - PGP 무선 LAN 보안프로토콜 접근제어시스템
4 인터넷보안요구사항 악의적인인터넷이용자 통신중인특정정보에대한접근 입수한정보를악의적으로사용 특정시스템에대한악의적인공격 인터넷보안요구사항 기밀성 (Confidentiality) 무결성 (Integrity) 인증 (Authentication) 부인방지 (Non-repudiation) 접근제어 (Access Control)
5 기밀성 (Confidentiality) 기밀성 정보가제3자에게노출이되더라도통신에참여하지않는제3자는해당정보를이해할수없게만드는기법 기밀성보장원리 : 암호화 (Encryption) 송신자 - 미리정의된열쇠 (Key) 를보유하고있는수신자만이이해할수있는형태로데이터를암호화 수신자 - 자신의열쇠를사용하여복호화 (Decryption) 열쇠가없는제 3 자 - 데이터복호화불가능
6 무결성 (Integrity) 무결성 교환되는정보가제 3 자에의해변경되지않았음을보장 무결성보장원리 해시 (Hash) 함수 해시함수 - 서로다른메시지를축약 (Digest) 할때항상 다른결과생성 송신자 해시함수적용결과를원래정보와함께송신 수신자 동일한해시함수를수신정보에적용한결과와송신자가전송한해시함수결과를비교
7 인증 (Authentication) 인증 신원식별로상대방이원하는당사자인지확인 인증서비스의기본 - 인증서 (Certificate) 믿을수있는인증기관 (CA-Certification Authority) 에서발급하는인증서로상대방의신원을식별
8 부인방지 (Non-repudiation) 부인방지서비스 일상생활에서사용하는서명과동일한서비스 부인방지의기본 - 디지털서명 (Digital Signature) 고유하게부여된열쇠 (Key) 로문서 ( 문서의일부 ) 를암 호화하여송신 복호화된문서의작성자가자신임을보장
9 접근제어 (Access Control) 접근제어 허가된사용자만특정자원을사용할수있게제어 악의적인사용자가시스템또는정보를접근하는것을원천적으로차단 인터넷의접근제어기법 방화벽 (Firewall)
10 인터넷보안구조 보안기본기술 보안프로토콜 & 시스템 암호화 ( 비밀키, 공개키 ) PGP 디지털서명 사용자인증 키관리 SSL/ TLS IPsec 방화벽
11 암호화원리 평문 (Plaintext) 평문 (Plaintext) m K ( K ( m)) B =mm A KA 암호알고리즘 (Encryption Algorithm) 복호알고리즘 (Decryption Algorithm) KB K A (m) K A (m) ( A A ) 암호문 (Ciphertext) (A) 인터넷 암호문 (Ciphertext) (B)
12 암호화원리 대칭열쇠암호화 (Symmetric Key Encryption) 송신자와수신자가동일한열쇠를사용하는암호화기 법 열쇠는송신자와수신자에게만알려진비밀열쇠 공개열쇠암호화 (Public Key Encryption) 모든송신자에게알려진공개열쇠 (Public Key) 와자신만알고있는비밀개인열쇠 (Private Key) 로구성되는한쌍의열쇠를사용하는암호화기법 암호화를위한공개열쇠와복호화를위한개인열쇠는서로달라야함
13 대칭열쇠암호화 (Symmetric Key Encry ption) 치환암호화 (Substitution Encryption) 전치암호화 (Transposition Encryption) 치환-전치곱암호화 (Substitution-Transposition Product Encryption) DES(Data Encryption Standard) AES(Advanced Encryption Standard)
14 치환암호화 (Substitution Encryption) 치환 (substitution) 정보를구성하는기본단위의내용을미리정해진규칙 ( 열쇠 ) 에근거하여다른내용으로바꾸는작업 시이저암호 (Caesar Cipher) 원래평문의문자를단순히미리정해진숫자 ( 열쇠 ) 뒤의문자로치환
15 시이저암호 (Caesar Cipher) A B C D E..X Y Z A B C D E..X Y Z m K ( K ( m)) B = =mm A K =3 A K B = 3 Shift Key characters down Shift Key characters up K A (m) K A (m) ( A A ) DE..X XYZABC 인터넷 DE..X XYZABC (A) (B)
16 치환암호화 (Substitution Encryption) 단일문자치환암호 (Mono-alphabetic Substitutio n Encryption) 암호열쇠 - 평문의모든문자에대응되는치환문자표 26 개의소문자만사용하는평문의경우암호열쇠의수 - 26!( 4X10 26 ) ( 열쇠의크기는?) 시이저암호에비해제3자가해석하기가훨씬어려움 문자사용빈도와문자집합 ( 예, in, it, the, ion 등 ) 정보를활용하면보다정확하게원래의문자를유추가능
알파벳문자의사용빈도 17
18 치환암호화 (Substitution Encryption) 다중문자치환 (Polyalphabetic Substitution) 암호 평문메시지에서문자의위치에따라치환문자다르게 정의 각각 2 와 5 인시이저암호기법을각각 C1 과 C2 라하고 (C1, C2, C2, C1, C2) 를반복적으로적용 단일문자치환암호인시이저암호에비해훨씬난해 ( 서로다른 7개의단일문자치환암호를반복적으로적용할경우의열쇠크기는?) 평문의문자빈도수는암호문에서변경, 평문의문자의순서는여전히유지. 순서정보를해석정보사용가능.
19 전치암호화 (Transposition Encryption) 전치암호 문자순서변경으로치환암호의문제점보완 열전치 (Columnar Transposition) 암호의예 전치암호 - (1,4,2,5,3) 평문 - (THISISASAMPLEMESSAGE) 암호문 - (TSPSISEAIMEEHALSSAMG) 열의숫자만알면쉽게암호문을해석가능
20 열전치 (Columnar Transposition) 암호 write 1(1 st 1 st ) 4(4 th 2 nd )) 2(2 nd 3 rd ) 5(5 th 4 th ) 3(3 rd 5 th ) T H I S I read S A S A M P L E M E S S A G E
21 치환 - 전치곱암호화 (Substitution-Tran sposition Product Encryption) 치환 - 전치곱암호화 치환암호화와전치암호화를결합 현대의대부분의대칭열쇠암호화기법 치환암호와전치암호의단점을극복하기위해치환 - 전치곱암호화사용 문자단위가아닌비트단위로적용
22 치환 - 전치곱암호화 치환 - 전치곱암호화를위한전치동작 일반적으로 P-Box 라함 수평전치 (Straight Transposition 또는 Permutation) 확장전치 (Expanded d Transposition) 압축전치 (Compressed Transposition)
23 P-Box 1 2 3 4 5 6 1 2 3 4 5 6 Key = 25817463 6 7 8 6 7 8 (a) 수평전치 (Straight Transposition) 1 2 3 4 1 2 3 4 5 6 4 5 6 7 8 6 7 8 9 10 11 12 Key = 132158723684 12 (b) 확장전치 (Expansion Transposition) 1 2 3 4 5 6 1 2 3 4 Key = 572813 6 7 8 4 5 6 (c) 압축전치 (Compression Transposition)
24 치환 - 전치곱암호화 비트단위의치환 (Substitution) 동작 매우큰수의치환열쇠 (Key) 필요 8비트입력데이터수평치환 (Straight Substitution) - 2 048(256 X 8 ) 비트열쇠필요 치환 - 전치곱암호화를위한치환동작 (S-Box) 하나의 P-Box 를하나의디코더 (Decoder) 와상응하는인코더 (Encoder) 로캡슐화 (Encapsulation) 함으로써치환을설정
25 치환 - 전치곱암호화 S-Box 의예 S-Box P-Box A B A A A B 0 0 2-to-4 4-to-2 0 1 0 1 decoder encoder 1 1 1 0 0 0 1 1 B B 1 0 Key = 2413 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0
26 치환 - 전치곱암호화 치환 - 전치곱암호화예 S1 S1 S1 8-비트 S2 S2 S2 평문문자 P1 P2 P3 P4 S3 S3 S3 8-비트암호문문자 S4 S4 S4
27 DES(Data Encryption Standard) IBM에의해고안 1976년미국표준으로채택 가장많이사용되고있는대칭열쇠암호화기법 64비트단위의블록 (Block) 으로나누고 56비트열쇠를사용하여 64비트암호블록생성 수신자는동일한열쇠를사용하여복호화 3 차의전치 (Transposition) 과정과 16 단계의치환 (Substitution) 과정
64 비트평문 28 1 차전치 (Transposition 1) 1 차치환 (Substitution 1) 56 비트열쇠 2 차치환 (Substitution 2) 16 차치환 (Substitution 16) 1 2 16 열쇠생성기 (Key Generator) 2 차전치 (Transposition 2) 48 비트부열쇠 (Subkey) 3 차전치 (Transposition 3) 64 비트암호문
29 전단계의 64 비트결과 상위 32 비트 하위 32 비트 48비트부열쇠 치환및전치동작 다음단계를위한 64 비트결과
30 3DES(Triple DES) DES 를보완하기위해 1999 년표준으로개발 3 개의 DES 블록을사용 첫번째 DES 블록과세번째 DES 블록은동일한열쇠사용 2 개의 56 비트열쇠 (112 비트열쇠 ) 사용 강력한암호화를요구하는금융응용등에사용
31 AES(Advanced Encryption Standard) DES 후속표준으로 2001 년개발 NIST(National Institute of Standards and Techno logies) 에의해개발 128 비트, 192 비트, 256 비트암호화열쇠사용 DES 암호문을 1 초에해석할수있는능력의컴퓨터가 128 비트열쇠의 AES 암호문을해석하는데 149 조년이소요될것으로예측
32 공개열쇠암호화 (Public Key Encryption) 대칭열쇠암호화 (Symmetric Key Encryption) 강력하고효과적인암호화서비스제공 비밀열쇠 (Secret Key) 안전한공유에많은노력필요 (Nx(N-1)/2) 의열쇠유지노력 공개열쇠암호화 (Public Key Encryption) 한쌍의열쇠사용으로대칭열쇠암호화문제점해결 다른사용자를위한한개의공개열쇠 (Public Key) 자신을위한한개의개인열쇠 (Private Key)
33 공개열쇠암호화의개념 평문 (Plaintext) 평문 (Plaintext) m K B ( K = m + B ( m)) + K B (B의공개열쇠 ) 공개열쇠암호알고리즘 K B + (m) 복호알고리즘 (Decryption Algorithm) K B + (m) K B (B의개인열쇠 ) 암호문 (Ciphertext) (A) 인터넷 암호문 (Ciphertext) (B)
34 공개열쇠암호화 (Public Key Encryption) 2N 개열쇠필요 공개열쇠암호화기법의문제점 공개열쇠에대한인증메커니즘필요 긴처리시간을필요로하는지수함수에기초 크기가큰데이터의암호화에적용하기어려움 크기가큰데이터는대칭열쇠암호화기법을사용 공개열쇠암호화는대칭열쇠의안전한전송에사용
35 RSA(Rivest, Shamir and Adleman) 알고리즘 1978년개발 가장잘알려진공개열쇠암호기법 첫번째숫자조합에의해암호화된메시지는두번째숫자조합에의해서만복호화될수있는한쌍의큰숫자조합을생성 첫번째숫자조합은공개열쇠 두번째숫자조합은개인열쇠 개인열쇄를잘보호하기위해큰숫자조합에기초한공개열쇠와개인열쇠선택
36 RSA 알고리즘의기본개념 사용자 (B) 의공개열쇠 :(N, e) 사용자 (B) 의개인열쇠 :(N, d) P - 평문, C - 암호문 C = P e P = C d mod N mod N
37 RSA 알고리즘예 공개열쇠 (N, e) : (35, 5) 개인열쇠 (N, d) : (35, 29) 평문 : love
38 RSA 알고리즘예 - 암호화 평문문자평문숫자암호문 e P (C = P e mod N) l 12 248832 17 o 15 759375 15 v 22 5153632 22 e 5 2125 10
39 RSA 알고리즘예 - 복호화 암호문 d P 평문 C (C d mod N) 문자 17 4819685721067509915091411825223071697 12 ㅣ 15 12783403948858939111232757568359375 15 o 22 815643319086537701956194499721106030592 22 v 10 100000000000000000000000000000 5 e
40 디지털서명 (Digital Signature) 공개열쇠암호화의특징을디지털서명에활용 송신자는자신의개인열쇠 (Private Key) 를사용하여메 시지암호화가능 수신자는송신자의공개열쇠 (Public Key) 를사용하여메시지복호화가능
41 디지털서명의원리 평문 (Plaintext) 평문 (Plaintext) m + K A ( K = m A ( m)) K A (A의개인열쇠 ) 공개열쇠암호알고리즘 K A (m) 복호알고리즘 (Decryption Algorithm) K A (m) + K A (A의공개열쇠 ) 암호문 (Ciphertext) (A) 인터넷 암호문 (Ciphertext) (B)
42 디지털서명 (Digital Signature) 전체메시지에대한디지털서명 공개열쇠암호화의복잡성으로인해실제적용불가 메시지축약본 (MD-Message Digest) 디지털서명 해시함수 (Hash Function) 을사용하여메시지축약본 ( Message Digest) 을생성 개인열쇠를사용하여메시지축약본을공개열쇠암호화기법으로암호화
43 디지털서명 (Digital Signature) 해시함수 (H) 의특성 H ( x ) = H ( y ) 의관계가성립하는서로다른메시지 x와 y 를찾는것은계산상으로불가능 해시함수의결과값인 H (x) 는원래메시지 x 에비해훨씬작은크기를가짐 MD5(Message Digest 5) 는 120 비트크기의축약본 SHA-1(Secure Hash Algorithm 1) 은 160비트의축약본
44 메시지축약본디지털서명동작과정 평문 (Plaintext) 평문 (Plaintext) m 해시함수 Error 비교 m = H(m) H(m) RSA + K A K A 암호화 RSA 복호화 해시함수 K A ( H( m)) K A ( H( m)) K A ( H( m)) m 인터넷 K A ( H( m)) m m (A) (B)
45 사용자인증 (User Authentication) 사용자인증 사용자의식별자 (User Identifier) 를통신하고자하는상대방사용자에게입증하는작업 IP 주소에의한인증 다른사용자의 IP 주소를사용하여자신의주소로속이는 IP 스푸핑 (IP Spoofing) 의문제점
46 사용자인증 (User Authentication) 대칭열쇠로암호화된비밀번호 (Password) 에의한인증 중간에서가로챈정보를사용하는재현공격 (Replay Attack) 가능 (A) (B) K AB ( A, Password ) K AB 사용자 (A)- 사용자 (B) 간의통신 K AB : 대칭열쇠
47 사용자인증 (User Authentication) 대칭열쇠로암호화된임시번호 (Nonce) 에의한인증 대칭열쇠를획득하고유지하는데에많은노력을요하는어려움 (A) (B) 사용자 (A) 의임시번호요청 R B K AB ( R B ) 사용자 (A)- 사용자 (B) 간의통신 R B : 임시번호 (Nonce) K AB : 대칭열쇠
48 사용자인증 (User Authentication) 공개열쇠로암호화된임시번호 (Nonce) 에의한인증 (A) (B) 사용자 (A) 로부터임시번호요청 R B K A ( R ) B 사용자 (A) 의공개열쇠요청 + K A + K ( K ( R )) = R A ( A B B 사용자 (A) 인증
49 사용자인증 (User Authentication) 공개열쇠로암호화된임시번호에의한인증오류 ( 예 ) 공개열쇠를신뢰할수있게관리할수있는시스템필요 제 3 자 (C) (B) 사용자 (A) 로부터임시번호요청 R B K C ( R B ) C 사용자 (A) 의공개열쇠요청 + K C + K C ( KC ( RB )) = RB 제3자 (C) 를사용자 (A) 잘못인증
50 중간자공격 (Man-in-the-middle Attack) 의예 (A) 제 3 자 (C) (B) 사용자 (A) 로부터임시번호요청 사용자 (A) 로부터임시번호요청 R B K C ( R ) B 사용자 (A) 의공개열쇠요청 + K C R B K A ( RB ) 사용자 (A) 의공개열쇠요청 + K A K A + (data) data = K C + ( K ( data)) C K C + (data) data = K A + ( K ( data )) A
51 대칭열쇠 (Symmetric Key) 분배 대칭열쇠암호화의선결과제 대칭열쇠유지및관리부하부담축소 세션열쇠 (Session Key) 도입 세션열쇠 통신세션이개시될때할당, 세션이종료되면폐기 사용자가다음에사용하기위해유지할필요가없음
52 대칭열쇠 (Symmetric Key) 분배 Diffie-Hellman 기법 열쇠분배센터 (KDC-Key Distribution Center)
53 Diffie-Hellman 기법 보안이유지되지않는환경에서비밀세션열쇠교환알고리즘 DH 알고리즘의대략적인동작절차 사용자 (A) 와사용자 (B) 는두개의임의의큰소수 (Prime Nu mber) p와 g를공유한다. p와 g는외부에공개되어도상관없는수이다. A 사용자 (A) 는임의의큰수 x A 를선택하고 R x A = g mod p 를계산한다음 R A 를사용자 (B) 에게전송한다. 사용자 (B) 는임의의큰수 x B를선택하고 R g x B B = mod p를계산한다음 R A 를사용자 (A) 에게전송한다. xa 사용자 (A) 의세션열쇠 : K A = RB mod p xb 사용자 (B) 의세션열쇠 : K = R mod p B A
54 Diffie-Hellman 기법 K A x A xa xb x B B mod p = g mod p = RA d p = = R mod K B
55 열쇠분배센터 (Key Distribution Center) DH 알고리즘의문제점 R R A 와 B를중간에서가로채는중간자 (Man-in-the-middl e) 에노출 누구나믿을수있는열쇠분배센터 (KDC) 필요 대표적인 KDC 솔루션 :MIT에서개발한커베로스 (Kerb eros)
56 열쇠분배센터 (Key Distribution Center) 기본개념 모든사용자는자신의대칭열쇠를 KDC 에등록 KDC와통신할때자신의대칭열쇠사용 사용자간에통신에는 KDC 가분배하는세션열쇠사용
57 KDC 에의한세션열쇠분배절차 (A) KDC (B) 사용자 (A) 와사용자 (B) 의식별자 K A ( S AB, K B ( A, B, S AB )) K B ( A, B, S AB ) S AB (data)
58 공개열쇠 (Public Key) 인증 목적 악의적인제 3 자가다른사용자의공개열쇠를자신의공개열쇠인것처럼사용하는것방지 인증기관 (CA-Certification Certification Authority) 정부기관또는정부에서위임한기관으로써모든사용자에게잘알려진믿을수있는기관 각사용자는다른사용자와구별할수있는자신의신원정보와공개열쇠를인증기관에제시 인증기관은인증기관의이름정보를포함하는인증서 (Certificate) 을생성 생성된인증서에자신의디지털서명을추가
59 인증기관을통한공개열쇠획득 1. 특정사용자 (A) 의공개열쇠가필요한임의의사용자 (B) 는인증기관 (CA) 에요청하여사용자 (A) 의인증서를내려받는다. 2. 인증서를수신한사용자 (B) 는인증기관의공개열쇠 () 로인증서의서명을확인한다. 인증기관의공개열쇠는충분히잘알려져있어서잘못사용될소지는없다. 3. 인증서의서명확인결과인증서의무결성이확인되면 ( 위조되지않았으면 ) 인증서상의사용자 (A) 의공개열쇠를믿고사용한다. 그렇지않으면인증서에문제가있으므로사용자 (A) 의공개열쇠를사용할수없다.
60 공개열쇠 (Public Key) 인증 X.509 ITU(International Telecommunication Unoin) 에서개발한인증서에대한국제표준 필드버전 (Version) 순서번호 (Serial Number) 서명 (Signature) 발행기관 (Issuer) 유효기관 (Validity Period) 주체이름 (Subject Name) 공개열쇠 (Public Key) 설명 X.509의버전 CA에의해인증서에부여되는유일한순서번호 CA 의디지털서명 CA의이름인증서의유효기간공개열쇠가인증되는주체의이름공개열쇠와관련암호화기법
61 공개열쇠 (Public Key) 인증 PKI(Public Key Infrastructure) 계층구조로분산된인증기관, 원하는인증기관의탐색, 인증기관에대한인증방법등을정의
62 네트워크계층보안프로토콜 IPsec IPsec 개요 IPsec 모드 보안연계 (Security Association) AH(Authentication Header) 프로토콜 ESP(Encapsulating Security Payload) 프로토콜
63 IPsec 개요 IPsec IP에대한보안서비스를제공하기위해표준화된프로토콜집합 IPsec 의구성 IKE(Internet Key Exchange) - 통신당사자간의열쇠관리프로토콜 (Key Management Protocol) AH(Authentication Header) ESP(Encapsulating Security Payload)
64 IPsec 개요 IPsec 이제공하는보안서비스 보안서비스 AH 프로토콜 ESP 프로토콜 기밀성 (Confidentiality) X O 출발지인증 (Source Authentication) O O 데이터무결성 (Data Integrity) O O 재현공격방지 (Protection from Replay Attack) O O
65 IPsec 모드 트랜스포트모드 (Transport Mode) 터널모드 (Tunnel Mode)
66 IPsec 모드 트랜스포트모드 (Transport Mode) 호스트간의종단간통신을보호하기위해사용 IP 상위의프로토콜정보 ( 주로트랜스포트프로토콜정보 ) 를인터넷을통해안전하게전달 지역망내의다른호스트를완전히신뢰할수없을때특정호스트간의통신을보호하기위해사용 Local Network Internet Local Network Secure Communication
67 IPsec 모드 트랜스포트모드 (Transport Mode) IP 헤더다음에 IPsec 헤더정보추가 필요하면끝에 IPsec 트래일러 (Trailer) 정보추가 IP Header Transport Data IP IPsec IPsec Transport Data Header Header Trailer
68 IPsec 모드 IP 터널 IP 계층의가상연결 (Virtual Connection) 원래의 IP 데이터그램을터널의시작점에서새로운 IP 데이터그램의데이터로캡슐화하여전송 터널의종점에서원래의 IP 데이터그램을복원 여러개의호스트로부터생성되는서로다른출발지주소를가지는 IP 데이터그램들전달 여러개의목적지로전달되는서로다른목적지주소를가진 IP 데이터그램들전달
69 IPsec 모드 터널모드 지역망과지역망 ( 또는호스트 ) 간의통신을보호 지역망과지역망을연결하는터널의시작점과종점에 I Psec 서비스를수행하는 IPsec 게이트웨이설치 지역망내의모든호스트들의통신을보호 기존호스트의변경없이투명하게 (Transparent) 보안서비스제공
70 IPsec 모드 터널모드 Local Network IPSec Gateway Internet IPSec Gateway Local Network Secure Communication
71 IPsec 모드 터널모드 터널서비스를위해추가되는새로운 IP 헤더다음에 IP sec 헤더추가 필요하면끝에 IPsec 테일러정보추가 IP Header Transport Data New IP Header IPsec Header IP Header Transport Data IPsec Trailer
72 보안연계 (Security Association) 두사용자간에보안서비스를수행하기위한논리적연결 보안서비스를위한매개변수들 ( 예, 보안프로토콜종류, 인증알고리즘, 인증열쇠, 암호화알고리즘, 암호화열쇠, 순서번호등 ) 의동기화 SA는단방향연결 (Simplex Connection) 양방향통신을보호하기위해서는두개의 SA 설정
73 보안연계 (Security Association) SA 를구별하기위한 3 가지정보 사용할보안프로토콜 (AH 또는 ESP) 식별자 관련 SA의출발지주소 SA 에서사용할보안매개변수들의집합에대한인덱스 (SPI Security Parameter Index)
74 보안연계 (Security Association) 수작업구현 (Manual Keying) 관리자가 IPsec 서비스가필요한두지점 ( 호스트또는게이트웨이 ) 의관련매개변수들을수작업으로설정 간단한반면망의크기가커지면관리자의부담이커짐 보안서비스를변경하고자할때적시적용이어려움 IKE(Internet Key Exchange) 을통한구현 IKE 프로토콜을사용하여두사용자간협상을통해동적으로 SA 설정 IKE를구현해야하는추가적인부담이존재 보안서비스의동적변경을적시에수용 망의크기확장에따른보안서비스의확장성 (Scalability) 을적절하게지원
75 AH(Authentication Header) 프로토콜 AH 프로토콜의서비스 데이터의무결성 (Integrity) 보장 MD5 와 SHA-1 와같은해시함수사용 발신지호스트를인증 (Authentication) 해시함수에의해계산된메시지축약본을대칭열쇠를사용하여암호화 IP 데이터그램의재현공격 (Replay Attack) 방지 순서번호 (Sequence Number) 를추가함으로써재현공격에의한 IP 데이터그램항상구분
76 AH(Authentication ti ti Header) 프로토콜 IP Header Transport Data 프로토콜필드 = 51 IP Header AH Transport Data PAD 8비트 8비트 16비트 Next Payload Reserved Header Length Security Parameter Index IP Header Transport Data Sequence Number 프로토콜필드 = 51 HMAC (Hash Message Authentication Code) New IP IP Transport AH Header Header Data PAD (a) 트랜스포트모드 (b) 터널모드
77 AH(Authentication Header) 프로토콜 다음헤더 (Next Header) 트랜스포트모드의경우원래의 IP 데이터그램의프로 토콜필드가가지고있는값 ( 예,TCP의경우6) 터널모드일경우는 IP 를표시하는 4 로설정 페이로드길이 (Payload Length) AH 의전체길이를 4 바이트단위 ( 워드 ) 로표시 SPI(Security Parameter Index) SA 연결에대한식별자
78 AH(Authentication Header) 프로토콜 순서번호 (Sequence Number) SA 연결을통해전달되는모든데이터그램의순서정보표시어떤경우에도동일한순서번호가사용되지않음최대값 (2 32 1) 을초과하면새로운 SA 연결설정재현공격 (Replay Attack) 을방지하는데사용 HMAC(Hash Message Authentication Code) AH를포함하는전체 IP 데이터그램에대한메시지축약본을생성생성된메시지축약본에대해디지털서명을수행함으로써 HMAC 생성전송중에변경될수있는 IP 헤더의필드들예, TTL, 첵섬, ToS, 단편화옵셋등 ) 은해시함수의적용대상이되지않음 ( 디지털서명을위한알고리즘과열쇠는 SA 설정과정에서협상에의해결정 패드 (PAD) 32 비트고정길이단위로적용되는디지털서명알고리즘에맞추기위해임의로추가되는의미없는정보
79 ESP 프로토콜 ESP 프로토콜의서비스 무결성서비스 출발지인증서비스 재현공격방지서비스 IP 데이터그램에대한기밀성 (Confidentiality) 서비스 기밀성보장을위한암호화는 SA 설정과정에서협상된 DES, 3 DES, AES 등에의해수행
80 ESP 프로토콜 Authenticated 프로토콜필드 = 50 Encrypted IP ESP ESP Transport Data Header Header Trailer HMAC 32 비트 32 비트 Security Parameter Index Sequence Number PAD PAD Length Next Header (a) 트랜스포트모드 New IP ESP IP ESP Transport Data Header Header Header Trailer (b) 터널모드 HMAC
81 ESP 프로토콜 IP 헤더의프로토콜필드 : 50 패드길이와다음헤더필드암호화 몇바이트가패드로추가되고트랜스포트데이터에어떤프로토콜정보가포함되어있는지제 3 자해석불가 HMAC 디지털서명을통해출발지인증을충분히수행 IP 헤더는 HMAC 계산범위에포함시키지않음 암호화 ESP 헤더정보는암호화의범위에포함되지않음 데이터그램이어떤 SA에소속된데이터그램인지파악 순서번호확인
82 트랜스포트계층보안프로토콜 SSL/TLS SSL/TLS 개요 SSL/TLS 프로토콜구조 SSL/TLS 프로토콜동작절차
83 SSL/TLS 개요 Netscape 에서개발 웹기반의전자상거래 (Electronic Commerce) 서비스 를안전하게보호하기위해 1994 년 Netscape 에서처음개발 1999 년 TLS(Transport Layer Security) 로표준화 소켓통신보호 트랜스포트프로토콜 (TCP) 상에서생성되는소켓을통 한통신을보호하도록설계 일반소켓통신과구분 SSL 을사용하는웹서버 - 포트번호 443 사용 웹브라우저 - HTTPS:// 표시로시작함
84 SSL/TLS 개요 SSL 에의해제공되는보안서비스 클라이언트에의한서버인증 인증서확인 서버에의한클라이언트인증 ( 선택 ) 암호화된세션서비스 협상과정을통해생성된세션열쇠를사용하여암호화 메시지인증서비스 메시지에디지털서명추가
85 SSL/TLS 프로토콜구조 Handshake Protocol Change Cipher Alert Application Spec Protocol (e.g., HTTP) Protocol SSL Record Protocol TCP IP
86 SSL/TLS 프로토콜구조 핸드세이크프로토콜 클라이언트와서버에대한인증, 메시지인증알고리즘 협상및열쇠교환, 암호알고리즘협상및열쇠교환등을수행 암호사양변경프로토콜 핸드세이크과정을통해협상된암호사양을실제통신에적용하도록암호사양을변경 경고프로토콜 보안통신과정에서발생하는오류 ( 잠재적오류 ) 를상대방에게통보
87 SSL/TLS 프로토콜구조 레코드프로토콜 상위계층정보를단편화 (Fragmentation) 상위계층정보를압축 (Compression) 세션열쇠를사용하여암호화 (Encryption) 메시지를인증 (Message Authentication) TCP 사용
88 Client Server SSL 동작절차 Handshake:ClientHello Handshake:ServerHello Handshake:Certificate Handshake:ServerHelloDone Handshake:KeyExchange ChangeCipherSpec Handshake:Finished ChangeCipherSpec Handshake:Finished Application Data Application Data Aert:CloseNotify Aert:CloseNotify
89 SSL 레코드포맷 Type Major Version Minor Version Length data HMAC(SHA-1) PAD PAD Length 레코드유형 값 설명 CHANGE_CIPHER_SPEC 20 협상된암호사양으로변경메시지 ALERT 21 오류또는폐쇄통지메시지 HANDSHAKE 22 클라이언트와서버간의협상메시지 APPLICATION_DATA 23 데이터메시지
90 이메일보안프로토콜 PGP 이메일보안요구사항과 PGP PGP 의디지털서명 PGP 의메시지암호화 PGP 와신뢰웹 (Web of Trust)
91 이메일보안요구사항과 PGP 보안요구사항 기밀성 (Confidentiality) 송신자인증 (Sender Authentication) 메시지무결성 (Message Integrity) 수신자인증 (Receiver Authentication) PGP(Pretty Good Privacy) 1991년 Phil Zimmerman에의해개발 사실상의표준 (De-facto Standard) 해시함수와공개열쇠암호화기반의디지털서명 대칭열쇠암호화와공개열쇠암호화
92 PGP 의디지털서명 MD5 또는 SHA-1와 RSA 알고리즘이결합된메시지축약본 (Message Digest) 디지털서명서비스를제공 PGP가설치되면공개열쇠와개인열쇠가생성 개인열쇠는비밀번호 (Password) 에의해보호 공개열쇠는이메일, 개인웹사이트, 공개열쇠서버등을통해공개
93 PGP 의디지털서명 메일메시지 메일수신 m 해시함수 메일폐기 비교 m = H(m) H(m) m 공개열쇠암호화 K A ( H( m)) K A (A 의개인열쇠 ) + K A (A 의공개열쇠 ) 공개열쇠복호화 K A ( H( m)) 해시함수 디지털서명 KA( H( m)) 메일메시지 m (A) 인터넷 디지털서명 KA( H( m)) 메일메시지 m (B) m
94 PGP 의메시지암호화 이중적인암호화기법을채택 대칭열쇠에의한메시지암호화 공개열쇠에의한대칭열쇠암호화
95 디지털서명 디지털서명확인 대칭열쇠 K AB 메시지 + 디지털서명 메시지 + 디지털서명 K AB K AB m+ K ( H( m)) A m+ K ( H( m)) A + KB 공개열쇠암호화 대칭열쇠암호화 K B B의개인열쇠 공개열쇠복호화 K AB 대칭열쇠복호화 K + B KAB ( AB ) K AB ( m+ K ( H( m))) A K + B (K K AB ) K AB ( m+ K ( H( m))) A 암호화된대칭열쇠 암호화된메시지 인터넷 암호화된대칭열쇠 암호화된메시지 (A) (B)
96 PGP 와신뢰웹 (Web of Trust) 신뢰웹 특정사용자 (A) 의공개열쇠를신뢰하는사용자들이자 신의개인열쇠로사용자 (A) 의공개열쇠에디지털서명함으로써거미줄과같은신뢰의망을구축 사용자 (A) 의공개열쇠를입수한사용자 (B) 는공개열쇠에첨부된다른사용자의서명중에자신이신뢰할수있는사용자의서명을발견하면사용자 (A) 의공개열쇠를신뢰
97 무선 LAN 보안프로토콜 WEP(Wired Equivalent Privacy) 초기무선 LAN 의보안프로토콜 약한암호화능력, 암호열쇠관리부담, 단순한사용자인증기능으로인하여여러가지문제점노출 IEEE 802.11i 2004 년 IEEE 802.11i 로표준개선
98 WEP(Wired Equivalent Privacy) WEP 서비스 무선스테이션 (Wireless Station) 과 AP(Access Point) 간 에대칭열쇠기반의인증서비스와암호화서비스 무선스테이션과 AP 는설치시에수작업에의해대칭열쇠설정
99 WEP(Wired Equivalent Privacy) 무선 LAN 의 WEP 인증과정 무선스테이션은 AP 에게인증요청 AP는넌스 (Nonce) 라불리는 128 바이트 1회용임시번호를무선스테이션에게응답 무선스테이션은 AP와공유하고있는대칭열쇠를사용하여할당된임시번호를암호화하여 AP 에게전송 AP는자신이보유하고있는대칭열쇠를사용하여임시번호를복호화한후자신이할당한임시번호와비교함으로써해당무선스테이션인증
100 WEP(Wired Equivalent Privacy) 암호화 64비트대칭열쇠를사용하는 RC4 암호화기법사용 무선스테이션과 AP가공유하고있는 40비트대칭열쇠에 24비트 IV(Initialization Vector) 를추가하여세션열쇠생성기를통해세션열쇠생성 IV 는매프레임마다다르게설정되므로 WEP 는각프레임마다서로다른열쇠사용 프레임의송신자는프레임헤더다음 (RC4 암호화된데이터앞부분 ) 에 IV 를평문 (Plaintext) 형태로추가하여수신자에게전달 수신자는송신자와동일한방법으로자신이보유하고있는 40비트대칭열쇠와 IV를조합하여세션열쇠를생성한다음암호화된데이터복호화 평문데이터와세션열쇠를XOR 연산함으로써암호데이터를생성하고, 수신측에서는반대로암호데이터와세션열쇠를 XOR 연산함으로써평문데이터복원
101 WEP(Wired Equivalent Privacy) 암호화 WEP 에서 24 비트 IV 를매프레임마다적용하므로많 은수의프레임을보내는데이터전송에서는동일한 IV 를사용하는프레임들이발생할확률이높아짐 세션열쇠노출위험증가
102 IEEE 802.11i IEEE 802.11i 표준 WEP 의다소약한암호화능력과수작업에의한열쇠 관리의문제점을개선 보다효과적인인증서비스지원 AP의인증기능을대신할수있는인증서버 (Authentic ation Server) 개념도입 802.11i는 AES를포함하는보다강력한암호화기법을제공 현재사용되고있는대부분의무선 AP들을 IEEE 802.1 1i 기반의보안서비스제공
103 IEEE 802.11i 동작절차 발견 (Discovery) AP 는자신이제공할수있는인증기법과암호화기법을무선스테이션들에게광고 각무선스테이션은자신이원하는인증기법과암호화기법을 AP 에 게요청 상호인증및마스터열쇠생성 (Mutual Authentication and Mas ter Key Generation) IEEE 802.11i에서인증은무선스테이션과인증서버 (AS) 간에수행되고이과정에서 AP 는단지인증관련메시지의중계역할만수행 무선스테이션과 AS간에교환되는인증메시지들은 EAP(Extensible Authentication Protocol) 표준에서정의 EAP상에서 AS는다수의인증기법중에하나선택 현재 EAP TLS(Transport Layer Security) 인증기법을많이사용 EAP TLS는 TLS와같이무선스테이션과 AP를상호인증하고마스터 열쇠 (Master Key) 를동적으로공유하기위해공개열쇠암호화기법사용
104 IEEE 802.11i 동작절차 PMK(Pairwise Master Key) 생성 마스터열쇠 - 클라이언트와 AS 가대칭열쇠를만들기 위해인증과정에서동적으로공유하는공유비밀 (Shar ed Secret) 무선스테이션과 AS는마스터열쇠를사용하여 2차열쇠인 PMK(Pairwise Master Key) 를생성 AS는생성된 PMK를 AP에게전달 임시열쇠 (TK-Temporal Temporal Key) 생성 PMK 를사용하여무선스테이션과 AP 는통신에사용할일련의열쇠를추가적으로생성
105 IEEE 802.11i 의프로토콜구조 무선스테이션 AP 인증서버 (AS) LAN EAP TLS EAP EAP over LAN(802.11x) RADIUS IEEE 802.11 UDP/IP
106 접근제어시스템 방화벽 (Firewall) 응용게이트웨이
107 방화벽 (Firewall) 방화벽의정의 내. 외부의불법적인사용자들이사무실망의정보에침입하는것을방지하기위한네트워크계층의침입차단시스템 방화벽의역할 주로사무실망과외부인터넷의연결장치인라우터에설치되어사무실망전체에대한보안정책을실현 사무실망에연결된호스트중에이메일서버, 웹서버등일부에대해서만외부사용자가접근이가능하도록제어 특정호스트및서비스에대한접근허용사용자목록지정 내부사용자에대해서도외부인터넷접근제어
108 방화벽 (Firewall) 방화벽의호스트및서비스접근제어 통과시킬패킷과통과시키지않을패킷을구분하여처리하는패킷필터링 (packet filtering) 을통해수행 패킷필터링정보 출발지 IP 주소또는목적지 IP 주소 트랜스포트프로토콜 출발지포트번호또는목적지포트번호 ICMP 메시지유형 TCP의 SYN 또는 ACK 비트
109 방화벽 (Firewall) 의필터링규칙예 규칙 방향 출발지 I 목적지 I 프로토 출발지 목적지 동작 P 주소 P 주소 콜 포트 포트 1 내부향 외부 IP 내부 IP TCP 1023 이 23 허용 1 2 상 2 외부향 내부 IP 외부 IP TCP 23 1023 이 허용 2 1 상 3 외부향 내부 IP 외부 IP TCP 1023 이 25 허용 3 4 상 4 내부향 외부 IP 내부 IP TCP 25 1023 이 허용 4 3 상 5 양방향 any any any any any 거부
110 응용게이트웨이 방화벽 망계층에서동작 IP, TCP, UDP 등망계층과트랜스포트계층의프로토콜제어정보에근거하여보안정책을수행 응용서비스수준에서정교한보안서비스제공불가 제목또는내용의일부단어에근거한이메일필터링불가 응용게이트웨이 응용서버를접근하고자하는모든사용자의메시지가경유하는장치 응용프로토콜의메시지를분석하여메시지의통과여부결정 응용서비스수준에서보다정교한보안서비스제공가능
111 응용게이트웨이 응용서버 사무실망 응용게이트웨이 방화벽 인터넷인터넷