🚨 컴퓨터 네트워크 보안 8 문제
- DNS-기반 네임 개체 인증
- 도메인 키 확인 메일
- 도메인 - 기반 메시지 인증 보고, 및 준수
- DNS
- IMAP
- MSA
- MHS
- MS
- MTA
- MUA
- MIME(Multipurpose Internet Mail Extensions)
- POP3
- Pretty Good Privacy
- SPF
- STARTTLS
- SUBMISSIONP
- Base64
- Secure MIME
복습 문제
2. SMTP와 MIME 표준은 무엇인가
- SMTP는 구현의 표준이 없다. 하지만, MIME은 RFC2045-2049이다
3. MIME 컨텐츠와 MIME 전송 인코딩의 차이점은?
MIME Content-Type:
텍스트, 이미지, 오디오, 비디오 또는 애플리케이션별 데이터 등 콘텐츠의 미디어 유형을 지정하는 데 사용됩니다.
수신 시스템이 수신된 콘텐츠를 해석하고 표시하는 방법을 이해하는 데 도움이 됩니다.
예를 들어 HTML 파일의 경우 ‘text/html’, JPEG 이미지의 경우 ‘image/jpeg’, PDF 파일의 경우 ‘application/pdf’ 등입니다.
MIME 전송 인코딩
콘텐츠가 손상 없이 인터넷을 통해 전달되도록 하는 데 사용됩니다.
MIME이 처음 사용된 이메일은 텍스트 콘텐츠만 처리하도록 설계되었으며 특정 문자는 허용되지 않거나 메시지를 잘못 읽을 수 있습니다.
따라서 이러한 문자를 포함하는 바이너리 데이터 또는 텍스트 데이터는 이메일을 통해 안전하게 전송할 수 있는 형식으로 인코딩되어야 합니다.
MIME은 이 목적을 위해 여러 전송 인코딩을 정의합니다.
예를 들어==‘Base64’ 및 'Quoted-printable’은 일반적으로 사용되는 전송 인코딩==입니다.
base64를 간단히 설명하라
바이너리 데이터를 ASCII 문자열로 별환하는 인코딩 방식이다.
이 방식은 바이너리 데이터를 텍스트 형식으로 안전하게 전송하거나 저장할 수 있게 해준다.
base64가 왜 이메일 응용에 유용한지 말해보라
Base64는 주로 이메일 메시지의 첨부파일, 웹에서 이미지 데이터를 전송하거나, 복잡한 정보를 URL 안에 인코딩하는 데 사용됩니다.
전자 메일 프로토콜은 원래 문자 메시지를 처리하도록 설계되었다
특정 이진 데이터는 전자 메일 서버에서 잘못 해석되는 특수 문자, null 문자 또는 인쇄할 수 없는 문자로 인해 전자 메일을 통해 전송될 때 문제를 일으킬 수 있습니다.
S/MIME은 무엇인가?
S/MIME은 RSA는 무엇인가? Data Security사에서 제공하는 기술을 토대로 MIME(Multipurpose Internet Mail Extensions) 인터넷 이메일 형식 표준에 보안을 강화한 프로토콜입니다.
- S/MIME은 이메일의 기밀성, 무결성, 인증을 보호하기 위해 사용되며, 전자 서명과 암호화를 지원합니다.
- S/MIME은 공개 키 암호화 기술인 RSA는 무엇인가? 알고리즘을 사용하여 안전한 이메일 통신을 제공합니다.
S/MIME에서 제공하는 주요 4가지 서비스
- 디지털 서명
- 메시지 암호화
- 압축
- 이메일 호환성
도메인 키 확인 메일은 무엇인가? : 이메일 인증에 사용 되는 메커니즘이다
도메인키 확인 메일은 암호학적 서명 전자우편 메시지를 위한 명세입니다.
이 명세는 서명 도메인(signing domain)이 메일 스트림에서 메시지에 대한 책임을 주장할 수 있게 합니다.
메시지 수신자는 적절한 공개키 검색을 위해 서명자 도메인에 직접 질의하여 서명을 검증할 수 있습니다.
이 방법을 통해, 서명 도메인에 대한 개인키를 소유한 개체에 의해서 메시지가 인증되었다는 것을 확인할 수 있습니다.
즉 메일의 내용이 중간에 변조되지 않았는지 확인하는 기능입니다.
연습 문제
문자열 <CR><RF><CR><RF>
가 메일 데이터 자체에 포함되어 있다면 무슨 일이 생기나
<CR><LF><CR><LF>
문자열이 메일 데이터(본문) 자체에 포함되어 있으면 이메일 시스템에서 헤더의 끝과 본문의 시작으로 해석할 수 있습니다.
이메일 구조를 잘못 해석합니다.
하지만 이메일은 이러한 일을 막기 위해 이스케이프 바이트나 .
으로 본문을 분리해 제어 바이트와 혼동 될 수 있는 데이터를 근절한다
POP와 IMAP은 무엇인가
- POP3 : 이메일 수신을 위한 표준 프로토콜
- 서버에서 모든 메세지를 다운로드 한 다음 서버에서 삭제 되도록 설계 되었음
- IMAP : 이메일 수신을 위한 표준 프로토콜
- 메시지를 서버에 보관해서, 여러 장치에서 전자 메일을 동기화하도록 설계 되었음
만약 Secure MIME에서 ZIP 같은 무손실 압축 알고리즘을 사용 할 경우 왜 압축을 하기 전에 서명을 먼저 작성하는가? 이유를 말하라
- 인증
- 디지털 서명은 발신자의 신원을 확인합니다.
- 받는 사람이 S/MIME 메시지를 받으면 디지털 서명을 통해 보낸 사람이 보낸 메시지인지 확인할 수 있습니다.
- 무결성
- 디지털 서명은 메시지 내용이 전송 중에 변조되지 않았음을 보장합니다.
- 수신자가 디지털 서명을 확인하면 받은 내용이 보낸 내용과 정확히 일치하는지 확인할 수 있습니다.
- 메시지 내용을 변경하면 서명 확인이 실패합니다.
재래식으로 중앙에서 관리하던 HOSTS.TXT 시스템보다 DNS의 장점이 무엇인가
- DNS는 분산 되어 있어서 훨씬 더 많은 항목과 초당 더 많은 쿼리 처리 가능
- 분산 되어 있어서 장애로부터 더 탄력적이다
- DNS는 계층적 시스템을 사용해서 DNS 쿼리가 더 효율적이다
- DNS는 ==DNSSEC(보안용 확장)==을 이용해서 데이터 무결성과 인증을 제공 받는다
즉, 이 소유자를 신뢰하고 이것이 소유자의 공개키라고 가정한다면, 왜 이 신뢰가 PGP가 공개키를 사용하는데 충분하지 않을까요?
- 공개키 링에서 각 엔티티는 이 공개키의 소유자와 연관된 신뢰도를 나타내는 소유자 신뢰 필드를 유지합니다. 왜 이것만으로는 충분하지 않을까요?
공개 키 소유자를 신뢰 할 수 있지만, 공개 키 자체의 정확성과 유효성을 보장하지 않기 대문입니다.
단순히 사용자를 신뢰한다해서 사용 중인 공개 키가 실제 해당 유저의 키인지는 알 수 없다
PGP는 소유자 신뢰필드는 공개 키 소유자에 대한 신뢰 수준을 드러낸다.
하지만 이 또한, 공개 키 자체의 신뢰성 보장 X
키 계층 구조와 신뢰 관점에서 보았을 때 X.509 인증서와 Pretty Good Privacy의 기본적인 차이점은 무엇인가
Solution 답
X.509에서는 인증 기관(Certificate Authorities)의 계층 구조가 있습니다.
또 다른 차이점은 X.509에서 사용자들은 인증 기관만을 신뢰하지만, PGP에서는 사용자들이 다른 사용자들을 신뢰할 수 있다는 점입니다.
- X.509 인증서
- CA가 디지털 인증서를 발급하여 신원 확인
- 계층적 신뢰 모델 사용
- Pretty Good Privacy
- 분산형 신뢰 웹 모델
- 개인은 자신의 키를 발행하고, 서명하여 그들이 알고 신뢰하는 사람들의 키에 서명
- 신뢰는 키에 서명한 다른 사람과 수신자가 해당 서명자를 신뢰하는지 여부에 따라 결정 된다
PGP 이전에 생성 된 키가 만들어지기 전에 생성될거라 기대되는 세션 키는 몇개인가?
이전에 생성된 키가 반복되기 전에 생성할 수 있는 세션 키의 총 수는 방대합니다. 세션 키의 길이에 따라 다릅니다.
예를 들어 세션 키의 길이가 128비트(일반적인 길이)인 경우 가능한 키는 2^128개입니다
N개의 공개키를 가진 사용자가 적어도 하나의 중복된 키 ID를 갖게 될 확률은?
- PGP 사용자는 복수개의 공개 키를 가질 수 있다.
- 그래서, 수신자는 송신자가 어느 공개 키를 사용했는지 알아야만한다. 최소 유효 64비트로 구성되는 키 ID를 메시지로 판단 할 수 있다
두 개의 서로 다른 공개 키가 동일한 키 ID를 생성할 가능성은 확률 이론에서 Birthday Paradox로 알려진 것에 의해 결정됩니다.
따라서 PGP의 64비트 키 ID를 사용하면 possible_keys의 수는 2^64입니다.
따라서 사용자가 N개의 공개 키를 가지고 있는 경우 적어도 하나의 중복 키 ID를 가질 확률은 대략 다음과 같습니다.
- P ≈ N^2 / (2 * 2^64)
8.9
PGP 서명에서 메시지 다이제스트의 처음 16비트는 평문으로 변환된다.
이렇게 하면 수신자는 첫 번째 두 옥텟과 복호화한 다이제스트의 처음 두 옥텟을 비교하여
이 평문이 올바른 공개 키를 사용해서 메시지 다이제스트를 복화했는지 아닌지를 결정 할 수 있다.
1. 어느 정도로 이것이 해시 알고리즘의 보안성을 침해하는가
메시지 다이제스트의 처음 16비트를 일반 텍스트로 노출해도 해시 알고리즘의 보안이 크게 손상되지 않습니다.
그 이유는 해시 함수의 보안이 주로 사전 이미지 및 충돌 공격에 저항하는 능력에 있기 때문입니다.
해시 값의 처음 16비트를 아는 경우에도 공격자가 사전 이미지를 찾는 데 유용한 이점을 제공하지 않습니다.
해시의 나머지 비트는 알 수 없으며 이러한 공격을 계산적으로 비실용적으로 만들기에 충분한 검색 공간을 여전히 제공하기 때문입니다.
충돌 공격에는 동일한 값으로 해시되는 두 개의 서로 다른 메시지를 찾으려는 시도가 포함됩니다.
PGP와 같은 암호화 응용 프로그램에서 사용되는 해시 함수는 충돌 공격에 저항하도록 설계되었기 때문에 처음 16비트를 공개하는 것은 충돌 공격을 시도하는 공격자에게 큰 이점을 제공하지 않습니다
2. 어느 정도로 이것이 실제 의도한 기능을 수행하는가? 예를들어 올바른 RSA 키를 사용해서 다이제스트를 복호화했는지 아닌지를 결정하는데 도움이 되나
메시지 다이제스트의 처음 16비트를 공개하는 것은 PGP 서명에서 유용한 목적을 제공합니다.
이를 통해 수신자는 계산 집약적인 RSA 복호화를 수행하기 전에도 올바른 공개 키를 사용하여 서명이 생성되었는지 신속하게 확인할 수 있습니다.
DNS-기반 네임 개체 인증의 네가지 인증서 활용 모델을 분류하라
- DANE은 X.509 인증서를 DNSSEC을 사용하는 DNS 레코드를 통해 도메인 이름과 연결한다
물론, 다음은 DANE(명명된 엔터티의 DNS 기반 인증)에서 4가지 인증서 사용 모델을 분류하는 2x2 매트릭스입니다.
CA Constraint (PKIX) | Domain-issued (DANE) | |
---|---|---|
TA | PKIX-TA | DANE-TA |
EE | PKIX-EE | DANE-EE |
- TA(Trust Anchors)
- 이는 일반적으로 해당 CA가 서명한 인증서를 확인하는 데 사용되는 CA의 공개 키입니다.
- EE(End-entity certificates)
- CA가 서명한 최종 서비스(예: 웹 서버)용 인증서입니다.
- CA 제약 조건(PKIX): 신뢰는 기존 CA에 고정되어 있습니다.
- 도메인 발급(DANE): 신뢰는 DNS의 도메인 자체에서 게시한 인증서 또는 키에 고정됩니다.
부족한 점이나 잘못 된 점을 알려주시면 시정하겠습니다 :>
'Computer Science > Security' 카테고리의 다른 글
DTO 유효성 검사 (0) | 2023.07.18 |
---|---|
Network Security Essentials 9 단원 문제 (0) | 2023.06.20 |
Network Security Essentials 7 단원 문제 (0) | 2023.06.20 |
Network Security Essentials 6 단원 문제 (0) | 2023.06.20 |
TKIP (0) | 2023.06.19 |