TLS 공격: BEAST, POODLE 및 다운그레이드
TLS의 역사적 공격과 TLS 1.3의 완화책을 학습합니다.
TLS 공격: BEAST, POODLE 및 다운그레이드은(는) CoddyKit의 무료 Cryptology Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cryptology Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
공격 분류
TLS 공격은 프로토콜 수준(BEAST, POODLE, DROWN), 암호학적 수준(RC4 편향, Lucky13), 구현 수준(Heartbleed, BERserk)으로 나뉩니다. TLS 1.3은 취약한 알고리즘을 제거해 프로토콜 수준의 공격을 없앱니다.
BEAST(2011)
Browser Exploit Against SSL/TLS는 TLS 1.0의 CBC 모드를 악용합니다. TLS 1.0에서는 각 레코드의 IV가 이전 레코드의 마지막 암호문 블록이므로 IV를 예측할 수 있습니다. 공격자는 선택한 평문 블록을 주입해 선택 경계 공격으로 세션 쿠키를 복구합니다.
BEAST 완화
해결 방법은 TLS 1.1 이상을 사용해 레코드마다 무작위 IV를 사용하는 것입니다. 또는 CBC 대신 RC4를 사용할 수도 있지만 바람직한 선택은 아닙니다. 현대적인 해결 방법인 TLS 1.3은 AEAD만 사용하므로 CBC가 없습니다. TLS 1.1이 널리 사용되기 전에는 브라우저가 1/n-1 레코드 분할을 사용해 BEAST를 완화했습니다.
POODLE(2014)
Padding Oracle On Downgraded Legacy Encryption은 SSL 3.0의 CBC 모드를 공격합니다. SSL 3.0의 패딩은 무결성으로 보호되지 않아 패딩 오라클이 가능해집니다. 공격자는 연결 실패를 유도해 SSL 3.0으로 다운그레이드한 다음, 약 256번의 요청마다 1바이트를 복호화합니다.
POODLE 완화
SSL 3.0을 완전히 비활성화하십시오. TLS_FALLBACK_SCSV 확장은 의도적인 다운그레이드를 알림으로써 악의적인 다운그레이드를 방지합니다. POODLE은 CBC 패딩 구조를 잘못 무시하는 TLS 구현에도 적용됩니다.
DROWN(2016)
Decrypting RSA with Obsolete and Weakened eNcryption은 서버가 SSLv2를 허용하는 다른 서버와 RSA 키를 공유할 때 발생합니다. SSLv2에 대한 Bleichenbacher 방식의 패딩 오라클 공격으로 TLS 1.2 세션을 복호화할 수 있습니다. HTTPS 서버의 33%가 영향을 받았습니다.
다운그레이드 공격
능동적인 공격자는 패킷을 삭제하거나 손상시켜 양쪽 엔드포인트가 더 약한 프로토콜이나 암호를 협상하도록 강제할 수 있습니다. TLS_FALLBACK_SCSV(RFC 7507)는 클라이언트가 지원하는 최대 프로토콜 버전을 알림으로써 악의적인 다운그레이드를 방지합니다.
Lucky13(2013)
CBC 모드 TLS에서 발생하는 타이밍 부채널 공격입니다. 패딩 길이에 따라 MAC 검증 시간이 달라집니다. 공격자는 응답 시간을 측정해 유효한 패딩과 유효하지 않은 패딩을 구별하고, 네트워크를 통한 패딩 오라클을 구현합니다. 바이트 하나를 알아내려면 약 2^23번의 오라클 질의가 필요합니다.
RC4 편향
RC4는 편향된 바이트를 생성하며, 2번째 바이트는 0 쪽으로 편향됩니다. 헤더가 고정된 오프셋에서 반복되는 TLS 세션에서는 쿠키 등을 대상으로 약 2^24개의 샘플을 사용해 평문을 통계적으로 복구할 수 있습니다. RC4는 RFC 7465(2015)부터 TLS에서 금지되었습니다.
Heartbleed(CVE-2014-0160)
TLS 프로토콜의 결함이 아니라 OpenSSL 구현의 버그입니다. Heartbeat 확장이 의도한 버퍼 범위를 넘어 최대 64KB를 읽어 서버 메모리에서 개인 키, 세션 토큰 및 비밀번호를 유출했습니다. 보안 웹 서버의 17%가 취약했습니다.
TLS 1.3의 예방 효과
TLS 1.3은 CBC 암호, RC4, SSL 2.0/3.0, 정적 RSA 키 교환 및 압축을 제거합니다. ECDHE를 의무적으로 사용해 순방향 비밀성을 보장합니다. 축소된 암호 목록은 알려진 모든 프로토콜 수준 공격이 발생할 수 있는 공격 표면을 제거합니다.
빠른 확인
TLS 1.0의 CBC 모드에서 예측 가능한 IV를 악용한 공격은 무엇입니까?
복습
BEAST, POODLE, DROWN, Lucky13 및 RC4 편향 공격을 학습하셨습니다. TLS 1.3은 이러한 공격을 가능하게 했던 조건을 제거합니다. 다음으로는 JWT의 구조, 서명 및 취약점을 살펴봅니다.
자주 묻는 질문
“TLS 공격: BEAST, POODLE 및 다운그레이드” 강의는 무료인가요?
네 — “TLS 공격: BEAST, POODLE 및 다운그레이드” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cryptology Academy 강의 전체를 잠금 해제할 수 있습니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“TLS 공격: BEAST, POODLE 및 다운그레이드”에서 뭘 배우나요?
TLS의 역사적 공격과 TLS 1.3의 완화책을 학습합니다. 브라우저에서 직접 실행하는 실습 코드로 Cryptology Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Cryptology Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Cryptology Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.
“TLS 공격: BEAST, POODLE 및 다운그레이드” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Cryptology Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Cryptology Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- TLS 1.3 핸드셰이크 단계별 학습
- TLS 레코드 계층과 암호 스위트
- TLS에서의 인증서 검증
- TLS 공격: BEAST, POODLE 및 다운그레이드