프로토콜- 9장. 단순 인증 프로토콜 ㅎㅎ 정보보안의 개념을 실질적으로 구현하는 기법인 트로토콜을 다룬다. 암호 기법을 사용해 다양한 목적의 프로토콜을 구성하는 방법을 제시하며, 각종 프로토콜을 공격하는 구체적인 사례를 소개한다. 특히 실제로 적용되고 있는 현대 프로토콜.

Slides:



Advertisements
Similar presentations
1)RACK 2)UPS 3)P D U 장치 4)Server Group 5)KVM Switch 7)UPS 를 위한 HUB 6) RACK Monitor.
Advertisements

HTTPS Packet Capture Tutorial
KPC 자격 강원지역센터 사업계획서 OO. OO. 제안사 명칭.
컴퓨터와 인터넷.
Secure Coding 이학성.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
정보 보안 개론과 실습 네트워크 해킹과 보안 3부 해킹 전 정보 획득 Chapter 10. 목록화.
Part TCP / IP(계속) 3. IP 주소 4. IP 라우팅 5. 응용 프로토콜.
표준 SSL Server Identification
파워포인트 2007.
제 8장 메시지 인증 코드 메시지가 보낸 그대로 왔는가?.
Android Wi-Fi Manual (Guest용)
암호-4장. 공개키 암호 ㅎㅎ 정보보호 기능의 가장 핵심적 기술인 암호를 다룬다. 흥미로운 암호의 역사를 소개하고, 고전적인 암호체계로부터 현대적인 디지털 암호체계에 이르는 기술의 발전을 살펴보고 현대의 고급 암호분석 기법을 소개한다. 한빛미디어(주)
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
Windows Server 장. 사고를 대비한 데이터 백업.
VoIP (Voice Over Internet Protocol)
5장 Mysql 데이터베이스 한빛미디어(주).
교과목 소개 정보보호.
I부 암호.
Chapter 02 순환 (Recursion).
SSL (Secure Sockets Layers Protocol)
30장 메시지 보안, 사용자 인증과 키 관리 30.1 메시지 보안 30.2 전자서명 30.3 사용자 인증 30.4 키 관리
File Depender 중간 발표.
공개키 암호화 프로그래밍 전자상거래보안.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
정보화 사회와 컴퓨터 보안.
10 장 데이터 링크 제어(Data Link Control)
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
5장 Mysql 데이터베이스 한빛미디어(주).
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
정보보안 이론과 실제 암호, 접근제어, 프로토콜, 소프트웨어.
프로그래밍 개요
27장. 모듈화 프로그래밍.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
뇌를 자극하는 Windows Server 2012 R2
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
강릉원주대학교 전임교원대상 온라인 교수법 특강
8장 쿠키와 세션 한빛미디어(주).
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
KERBEROS.
-네트워크 관리 개요 및 SNMP 프로토콜 동작과정
제 13장 PGP 암호 기술을 조합하는 기술.
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
Java , 안드로이드를 이용한 ‘사천성’ Game
SSL, Secure Socket Layer
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
약식 진리표를 이용한 타당성 증명 진리표 그리기 방법의 한계
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
쉽게 배우는 알고리즘 2장. 점화식과 점근적 복잡도 분석
공인인증로그인 매뉴얼.
업체등록신청절차 목차 메인화면 메세지별 유형 2-1. 이미 가입된 공급업체
학습내용 프로토콜 계층화 OSI 모델의 용어 및 기능 개체 서비스 접근점 (N) 프로토콜과 (N) 서비스 서비스 프리미티브
1. 인터넷 보안 옵션 레지스트리 등록 Config Setup 클릭.
7장 원운동과 중력의 법칙.
상관계수.
공인인증로그인 매뉴얼.
소리가 작으면 이어폰 사용 권장!.
암호 시스템 (Crypto system) 신효철
CCIT 네트워크 발표 정보보호학과 평문 사이트와 SSL 사이트, SSL strip과 데이터 변조를 이용한 로그인 취약점
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
암호-3장. 대칭키 암호 ㅎㅎ 정보보호 기능의 가장 핵심적 기술인 암호를 다룬다. 흥미로운 암호의 역사를 소개하고, 고전적인 암호체계로부터 현대적인 디지털 암호체계에 이르는 기술의 발전을 살펴보고 현대의 고급 암호분석 기법을 소개한다. 한빛미디어(주)
플래시MX2004 디자인스쿨 Chapter 11. 플래시와 사운드.
6 객체.
공인인증로그인 매뉴얼.
소리가 작으면 이어폰 사용 권장!.
Presentation transcript:

프로토콜- 9장. 단순 인증 프로토콜 ㅎㅎ 정보보안의 개념을 실질적으로 구현하는 기법인 트로토콜을 다룬다. 암호 기법을 사용해 다양한 목적의 프로토콜을 구성하는 방법을 제시하며, 각종 프로토콜을 공격하는 구체적인 사례를 소개한다. 특히 실제로 적용되고 있는 현대 프로토콜 4가지를 깊이있게 설명한다. 한빛미디어(주)

9장. 단순 인증 프로토콜 학습목표 인증 및 세션키를 구현하기 위한 다양한 프로토콜을 대칭키, 공개키, 해시함수 등을 사용해 구현한다. PFS를 구현하는 방법과 타임스탬프 사용의 장점을 알아보고 보안 프로토콜과 관련해 발생할 수 있는 민감한 문제도 다룬다.

프로토콜 Section 01 개요 인간 프로토콜  인간 상호간에 적용되는 규칙 예: 강의 시간에 질문하는 방법 네트워킹 프로토콜  네트워크 연결된 통신체계에 적용되는 규칙 예: HTTP, FTP, 등 보안 프로토콜  보안 응용에 적용되는 (통신)규칙 예: SSL, IPSec, 커베로스 등 프로토콜 결함은 매우 민감할 수 있음. 알려진 보안 프로토콜에도 결함이 있음. IPSec, GSM, WEP을 포함 구현과정에 오류는 일반적 현상임. SSL에 구현된 IE가 하나의 예 제대로 된 프로토콜을 설계하기는 어려움.

이성적인 보안 프로토콜 Section 01 개요 보안 측면 요구사항 충족 효율성 견고성 사용 및 구현 용이성, 융통성 등 새부적 요구사항이 제시되어야 함 효율성 계산 요구 최소화  특히 비용이 비싼 공개키 연산 시간 지연 및 대역폭 최소화 견고성 공격자의 손상 시도에 저항력이 있어야 함 변화된 환경에서도 작동 사용 및 구현 용이성, 융통성 등 모든 요구를 충족시키기 매우 어려움.

Section 02 단순 보안 프로토콜-NSA 보안 입장 절차 출입증을 판독기에 넣는다. PIN을 입력한다. PIN이 유효한가? 예? 유유히 입장 아니오? 경비원의 총에 맞아 사망

현금카드를 판독기에 넣는다. PIN을 입력한다. PIN이 유효한가? 현금인출기 프로토콜 예? 현금 인출 아니오? 현금인출기가 카드 압수

피아식별(IFF) 러시아 미그기 앙골라 2. E(N,K) 남아프리카 공화국 임팔라기 1. N

앙골라 나미비아 중간 미그기 3. N 4. E(N,K) 2. N 5. E(N,K) 6. E(N,K) 1. N 남아프리카 공화국 임팔라기 4. E(N,K) 앙골라 2. N 5. E(N,K) 6. E(N,K) 러시아 미그기 1. N 나미비아

앨리스는 밥에게 자신을 인증할 필요성 밥 역시 자신을 인증할 필요성(상호인증) 세션키가 필요할 수도 있음. Section 03 인증 프로토콜-인증 앨리스는 밥에게 자신을 인증할 필요성 앨리스와 밥은 인간 또는 컴퓨터일 수 있음. 밥 역시 자신을 인증할 필요성(상호인증) 세션키가 필요할 수도 있음. 아래 요구사항이 있을 수도 있음. 공개키를 사용하라. 대칭키를 사용하라. 해시함수를 사용하라. 익명성, 그럴듯한 부인권 등을 제공하라.

독립 컴퓨터에서 인증은 상대적으로 용이 네트워크상 인증은 훨씬 복잡 인증 “안전한 경로”가 주요 관건 인증 소프트웨어에 대한 공격이 주요 관심 (소트트웨어 공격은 추후 논의) 네트워크상 인증은 훨씬 복잡 공격자는 메시지를 수동적으로 관찰 가능 공격자는 메시지 재연(재연) 가능 능동적인 공격도 가능할 수 있음. (삽입, 삭제, 내용 변경 등)

“나는 앨리스입니다” 증명하시오 단순하며 독립 컴퓨터에는 사용 가능 네트워크 시스템에는 안전하지 않음. 단순 인증 단순하며 독립 컴퓨터에는 사용 가능 네트워크 시스템에는 안전하지 않음. 재연공격에 취약 (다음 2 슬라이드 참조) 밥이 앨리스의 패스워드를 반드시 알아야 함. “나는 앨리스입니다” 증명하시오 내 패스워드는 “frank”입니다 앨리스 밥

인증 공격 “나는 앨리스입니다” 증명하시오 내 패스워드는 “frank”입니다 앨리스 밥 트루디

재연을 방지하기 위하여 질문-응답 사용 밥이 앨리스를 인증하려 한다고 가정할 때, 위를 구현하는 방법은? 질문-응답 밥은 앨리스에게 질문을 전송한다. 오직 앨리스만이 정확한 응답을 제공 가능하다. 질문은 재연이 곤란해야 한다. 위를 구현하는 방법은? 패스워드는 앨리스만 알 수 있어야 한다. 신선도를 위하여, 난스(일회 사용 숫자, number used once)를 사용

암호를 해시하는 방법이 사용 가능하며, 암호화를 사용하는 것이 보다 나은 방법 “나는 앨리스입니다” 질문-응답 이를 구현하는 방법은? 암호를 해시하는 방법이 사용 가능하며, 암호화를 사용하는 것이 보다 나은 방법 “나는 앨리스입니다” 난스 앨리스만 보낼 수 있는 그 무엇 앨리스 (또한, 밥이 확인 가능) 밥

여기서, 암호에 대한 공격이 아니라 프로토콜에 대한 공격이 주요 관심 암호화 알고리즘은 안전하다고 가정 대칭키 표현 방법 평문 P를 키 K로 암호화 C = E(P,K) 또는 C = EK(P) 암호문 C를 키 K로 복호화 P = D(C,K) 또는 P = DK(C) 여기서, 암호에 대한 공격이 아니라 프로토콜에 대한 공격이 주요 관심 암호화 알고리즘은 안전하다고 가정

공유하고 있는 키를 알고 있는가를 확인하여 인증 가능 이를 구현하는 방법은? 대칭키 인증 앨리스와 밥은 대칭키 KAB를 공유 키 KAB는 앨리스와 밥만이 알고 있음. 공유하고 있는 키를 알고 있는가를 확인하여 인증 가능 이를 구현하는 방법은? 키를 노출시키지 않음.

“나는 앨리스입니다” R 밥이 앨리스를 인증하는 안전한 방법 앨리스는 밥을 인증하지 않음. E(R,KAB) 대칭키를 이용한 인증 밥이 앨리스를 인증하는 안전한 방법 앨리스는 밥을 인증하지 않음. 상호인증을 구현하는 방법은? “나는 앨리스입니다” R E(R,KAB) 밥, KAB 앨리스, KAB

“앨리스”는 트루디(또는 아무나)일 수도 있음! “나는 앨리스입니다”, R 상호인증? 위 그림에서 잘못된 점은? “앨리스”는 트루디(또는 아무나)일 수도 있음! “나는 앨리스입니다”, R E(R,KAB) E(R,KAB) 앨리스 밥

“나는 앨리스입니다”, RA RB, E(RA,KAB) 상호인증을 제공하는 것은 확실함. 안전성은? (다음 슬라이드를 보라) E(RB,KAB) 앨리스 밥

1. “나는 앨리스입니다”, RA 2. RB, E(RA,KAB) 5. E(RB,KAB) 밥 트루디 상호인증 공격 1. “나는 앨리스입니다”, RA 2. RB, E(RA,KAB) 5. E(RB,KAB) 트루디 밥 3. “나는 앨리스입니다”, RB 4. RC, E(RB,KAB) 트루디 밥

단방향 인증 프로토콜은 상호인증에서는 안정성이 보장되지 않음. 비로 이점이 프로토콜의 미묘한 특성! 명백한 것과 안정성은 다른 문제 또한, 가정이나 환경이 바뀌면 프로토콜이 작동하지 않는 경우가 많음. 비로 이점이 보안상 결함을 만들어내는 일반적인 이유가 됨. 예를들어, IP가 이에 해당

위 그림에서 보는 “아주 작은 변화”가 도움이 될까? 그렇다! “나는 앨리스입니다”, RA 대칭키 상호인증 위 그림에서 보는 “아주 작은 변화”가 도움이 될까? 그렇다! “나는 앨리스입니다”, RA RB, E(“밥”,RA,KAB) E(“앨리스”,RB,KAB) 앨리스 밥

앨리스의 공개키로 M을 암호화: {M}앨리스 앨리스의 개인키로 M을 서명: [M]앨리스 그렇다면, 다음이 성립함. 공개키 표현 방법 앨리스의 공개키로 M을 암호화: {M}앨리스 앨리스의 개인키로 M을 서명: [M]앨리스 그렇다면, 다음이 성립함. [{M}앨리스 ]앨리스 = M {[M]앨리스 }앨리스 = M 공개키 연산은 아무나, 오직 앨리스만이 자신의 개인키를 사용할 수 있음(서명).

트루디는 앨리스의 공개키로 아무거나 복호화할 수 있음! “나는 앨리스입니다” 공개키 인증 위 그림은 안전한가? 트루디는 앨리스의 공개키로 아무거나 복호화할 수 있음! 반드시 두 개의 키쌍을 가져야 함. “나는 앨리스입니다” {R}앨리스 R 앨리스 밥

트루디는 앨리스 공개키로 아무거나 서명할 수 있음! “나는 앨리스입니다” 대칭키 인증 위 그림은 안전한가? 트루디는 앨리스 공개키로 아무거나 서명할 수 있음! 반드시 두 개의 키쌍을 가져야 함. “나는 앨리스입니다” R [R]앨리스 앨리스 밥

공개키 암호화 및 서명에 같은 키 쌍을 사용해서는 안됨. 암호화/복호화를 위한 키쌍 서명 및 확인을 위한 다른 키쌍

어떤 경우에는, 완전순방향비밀성(PFS)이 요구됨. 세션키 통상, 세션키가 요구됨. 특정 세션을 위한 대칭키 인증하고 나서 공유 대칭키를 실현할 수 있는가? 비밀성을 위해 사용될 수 있는 키 무결성을 위해 사용될 수 있는 키 어떤 경우에는, 완전순방향비밀성(PFS)이 요구됨. 추후 논의…

키에 대하여는 안전하나, 상호인증에 대해서는 아님 K가 밥의 난스 역할을 하고 있음에 주목 앨리스 밥 인증 & 세션키 위 그림은 안전한가? 키에 대하여는 안전하나, 상호인증에 대해서는 아님 K가 밥의 난스 역할을 하고 있음에 주목 앨리스 밥 “나는 앨리스입니다”, R {R,K}앨리스 {R +1,K}밥

상호인증에 대해서는 안전하나 키는 비밀이 아님! 공개키 인증 및 세션키 위 그림은 안전한가? 상호인증에 대해서는 안전하나 키는 비밀이 아님! 앨리스 밥 “나는 앨리스입니다”, R [R,K]밥 [R +1,K]앨리스

“나는 앨리스입니다”, R {[R,K]밥}앨리스 위 그림은 안전한가? 안전한 것으로 판단됨. {[R +1,K]앨리스}밥 공개키 인증 및 세션키 위 그림은 안전한가? 안전한 것으로 판단됨. 상호인증 및 세션키 구현! 앨리스 밥 “나는 앨리스입니다”, R {[R,K]밥}앨리스 {[R +1,K]앨리스}밥

“나는 앨리스입니다”, R [{R,K}앨리스]밥 위 그림은 안전한가? 안전한 것으로 판단됨. [{R +1,K}밥]앨리스 앨리스 공개키 인증 및 세션키 위 그림은 안전한가? 안전한 것으로 판단됨. 단, 누구든지 {R,K}앨리스 {R +1,K}밥을 관찰할 수 있음. 앨리스 밥 “나는 앨리스입니다”, R [{R,K}앨리스]밥 [{R +1,K}밥]앨리스

트루디가 KAB를 확보할 수 있다면, 마찬가지로 KS도 확보할 수 있음. 앨리스, KAB 밥, KAB E(KS, KAB) 간단한 세션키 프로토콜 트루디는 E(,)를 기록해둘 수 있음. 트루디가 KAB를 확보할 수 있다면, 마찬가지로 KS도 확보할 수 있음. 앨리스, KAB 밥, KAB E(KS, KAB) E(메시지, KS)

타임스탬프는 많은 보안 프로토콜에서 사용되고 있음. (예: 커베로스) 타임스탬프는 메시지 갯수를 줄여주는 효과 타임스탬프 T는 현재 시간을 의미 타임스탬프는 많은 보안 프로토콜에서 사용되고 있음. (예: 커베로스) 타임스탬프는 메시지 갯수를 줄여주는 효과 난스의 경우에는 양쪽 모두 사전에 알고 있어야 함. 그러나, 타임스탬프 사용은 “시간”이 보안의 주요 요소가 된다는 것을 의미 모든 시계가 똑같지 않으므로 시간오차(clock skew) 허용 불가피 – 재연공격 가능성 제공 어느정도의 시간오차가 적절한가?

“나는 앨리스입니다”, {[T,K]앨리스}밥 타임스탬프로 공개키 인증 위 그림은 안전한가? 안전한 것으로 판단됨. 밥 “나는 앨리스입니다”, {[T,K]앨리스}밥 {[T +1,K]밥}앨리스 앨리스

트루디는 {T,K}밥을 찾아내기 위하여 앨리스의 공개키를 이용할 수 있음. 그 이후에는? 밥 타임스탬프로 공개키 인증 위 그림은 안전한가? 트루디는 {T,K}밥을 찾아내기 위하여 앨리스의 공개키를 이용할 수 있음. 그 이후에는? 밥 “나는 앨리스입니다”, [{T,K}밥]앨리스 [{T +1,K}앨리스]밥 앨리스

트루디는 허용된 시간오차이내에 작업을 수행해야 함. 밥 “나는 트루디입니다”, [{T,K}밥]트루디 타임스탬프로 공개키 인증 트루디는 앨리스-밥 세션키 K를 획득 트루디는 허용된 시간오차이내에 작업을 수행해야 함. 밥 “나는 트루디입니다”, [{T,K}밥]트루디 [{T +1,K}트루디]밥 트루디

선서명 이후 난스로 암호화 선암호화 이후 난스로 서명 선서명 이후 타임스탬프로 암호화 선암호화 이후 타임스탬프로 서명 공개키 인증 선서명 이후 난스로 암호화 안전함. 선암호화 이후 난스로 서명 선서명 이후 타임스탬프로 암호화 선암호화 이후 타임스탬프로 서명 안전하지 않음! 바로 이점이 프로토콜의 미묘한 특성!

“나는 앨리스입니다”, [{T,K}밥]앨리스 타임스탬프로 공개키 인증 “선암호화 후서명”은 안전한가? 그렇다, 안전한 것으로 판단됨. “선서명 후암호화” 역시 안전한가? 밥 “나는 앨리스입니다”, [{T,K}밥]앨리스 [{T +1}앨리스]밥 앨리스

최초 SEQ 번호가 난수가 아니라면… …최초 SEQ 번호를 추측해낼 가능… …그러면, 앞의 공격이 성공할 수 있음 TCP 인증 공격 최초 SEQ 번호가 난수가 아니라면… …최초 SEQ 번호를 추측해낼 가능… …그러면, 앞의 공격이 성공할 수 있음 Random SEQ 번호 맥 OS X에서 최초 SEQ 번호