0Pricing
Cryptology Academy · บทเรียน

การโจมตี TLS: BEAST, POODLE และการลดระดับ

ศึกษาการโจมตี TLS ในอดีตและมาตรการป้องกันใน TLS 1.3

การโจมตี TLS: BEAST, POODLE และการลดระดับ เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

การจำแนกประเภทการโจมตี

การโจมตี TLS แบ่งได้เป็นการโจมตีระดับโพรโทคอล (BEAST, POODLE, DROWN) การโจมตีด้านการเข้ารหัส (อคติของ RC4, Lucky13) และการโจมตีจากการนำไปใช้งาน (Heartbleed, BERserk) TLS 1.3 กำจัดการโจมตีระดับโพรโทคอลเหล่านี้ด้วยการนำอัลกอริทึมที่มีช่องโหว่ออก

BEAST (2011)

การโจมตีเบราว์เซอร์ผ่าน SSL/TLS: ใช้ประโยชน์จากโหมด CBC ใน TLS 1.0 ซึ่ง IV ของแต่ละระเบียนคือบล็อกไซเฟอร์เท็กซ์สุดท้ายของระเบียนก่อนหน้า ทำให้ IV สามารถคาดเดาได้ ผู้โจมตีแทรกบล็อกข้อความธรรมดาที่เลือกเองเพื่อกู้คืนคุกกี้เซสชันผ่านการโจมตีที่เลือกขอบเขตได้

การลดผลกระทบจาก BEAST

วิธีแก้ไขคือใช้ TLS 1.1 ขึ้นไป ซึ่งใช้ IV แบบสุ่มต่อระเบียน หรือใช้ RC4 แทน CBC ซึ่งเป็นการแลกเปลี่ยนที่ไม่ดี วิธีแก้ไขสมัยใหม่คือ TLS 1.3 ใช้เฉพาะ AEAD และไม่มี CBC เบราว์เซอร์ลดผลกระทบจาก BEAST ด้วยการแบ่งระเบียนแบบ 1/n-1 ก่อนที่ TLS 1.1 จะใช้งานอย่างแพร่หลาย

POODLE (2014)

ออราเคิลแพดดิ้งจากการเข้ารหัสแบบเก่าหลังการลดระดับ: โจมตีโหมด CBC ของ SSL 3.0 แพดดิ้งของ SSL 3.0 ไม่มีการป้องกันความถูกต้องครบถ้วน จึงเปิดให้ใช้ออราเคิลแพดดิ้งได้ ผู้โจมตีบังคับให้ลดระดับไปใช้ SSL 3.0 ผ่านความล้มเหลวของการเชื่อมต่อ จากนั้นถอดรหัสได้ 1 ไบต์ต่อคำขอประมาณ 256 ครั้ง

การลดผลกระทบจาก POODLE

ปิดใช้งาน SSL 3.0 ทั้งหมด ส่วนขยาย TLS_FALLBACK_SCSV จะส่งสัญญาณว่าการลดระดับเป็นไปโดยตั้งใจ เพื่อป้องกันการลดระดับโดยผู้โจมตี POODLE ยังเกิดขึ้นได้กับการนำ TLS ไปใช้งานที่ละเลยโครงสร้างแพดดิ้งของ CBC อย่างไม่ถูกต้อง

DROWN (2016)

การถอดรหัส RSA ด้วยการเข้ารหัส eNcryption ที่ล้าสมัยและอ่อนแอ: หากเซิร์ฟเวอร์ใช้คีย์ RSA ร่วมกับเซิร์ฟเวอร์ใดก็ตามที่ยอมรับ SSLv2 การโจมตีออราเคิลแพดดิ้งรูปแบบ Bleichenbacher ต่อ SSLv2 สามารถถอดรหัสเซสชัน TLS 1.2 ได้ เซิร์ฟเวอร์ HTTPS จำนวน 33% ได้รับผลกระทบ

การโจมตีแบบลดระดับ

ผู้โจมตีที่อยู่ระหว่างการสื่อสารสามารถทิ้งหรือทำให้แพ็กเก็ตเสียหาย เพื่อบังคับให้จุดปลายทางทั้งสองเจรจาใช้โพรโทคอลหรือชุดการเข้ารหัสที่อ่อนแอกว่า TLS_FALLBACK_SCSV (RFC 7507) ส่งสัญญาณเวอร์ชันโพรโทคอลสูงสุดที่ไคลเอ็นต์รองรับ จึงป้องกันการลดระดับโดยผู้โจมตี

Lucky13 (2013)

ช่องทางข้างเคียงจากเวลาใน TLS โหมด CBC: เวลาตรวจสอบ MAC เปลี่ยนแปลงตามความยาวของแพดดิ้ง ผู้โจมตีวัดเวลาตอบกลับเพื่อแยกแพดดิ้งที่ถูกต้องออกจากแพดดิ้งที่ไม่ถูกต้อง ทำให้สร้างออราเคิลแพดดิ้งผ่านเครือข่ายได้ การโจมตีต้องสอบถามออราเคิลประมาณ 2^23 ครั้งต่อไบต์

อคติของ RC4

RC4 สร้างไบต์ที่มีอคติ โดยไบต์ที่ 2 มีแนวโน้มเป็น 0 สำหรับเซสชัน TLS ที่ส่วนหัวปรากฏซ้ำในออฟเซ็ตคงที่ เช่น คุกกี้ สามารถกู้คืนข้อความธรรมดาทางสถิติได้จากตัวอย่างประมาณ 2^24 ชุด RC4 ถูกห้ามใช้ใน TLS ตั้งแต่ RFC 7465 (2015)

Heartbleed (CVE-2014-0160)

ไม่ใช่ข้อบกพร่องของโพรโทคอล TLS แต่เป็นข้อบกพร่องในการนำ OpenSSL ไปใช้งาน: ส่วนขยายสัญญาณชีพอ่านข้อมูลเกินบัฟเฟอร์ที่ต้องการได้ถึง 64 KB ทำให้คีย์ส่วนตัว โทเค็นเซสชัน และรหัสผ่านจากหน่วยความจำของเซิร์ฟเวอร์รั่วไหล เซิร์ฟเวอร์เว็บที่ปลอดภัย 17% มีช่องโหว่นี้

การป้องกันใน TLS 1.3

TLS 1.3 นำชุดการเข้ารหัส CBC, RC4, SSL 2.0/3.0, การแลกเปลี่ยนคีย์ RSA แบบคงที่ และการบีบอัดออกไป ECDHE ที่บังคับใช้ช่วยให้มีความลับส่งต่อ รายการชุดการเข้ารหัสที่มีขนาดเล็กลงช่วยกำจัดพื้นที่โจมตีสำหรับการโจมตีระดับโพรโทคอลที่รู้จักทั้งหมด

ตรวจสอบความเข้าใจ

การโจมตีใดใช้ประโยชน์จาก IV ที่คาดเดาได้ในโหมด CBC ของ TLS 1.0

สรุป

คุณได้ศึกษา BEAST, POODLE, DROWN, Lucky13 และการโจมตีจากอคติของ RC4 แล้ว TLS 1.3 กำจัดเงื่อนไขที่ทำให้การโจมตีเหล่านี้เกิดขึ้นได้ ขั้นต่อไป: โครงสร้าง การลงลายเซ็น และช่องโหว่ของ JWT

คำถามที่พบบ่อย

บทเรียน “การโจมตี TLS: BEAST, POODLE และการลดระดับ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การโจมตี TLS: BEAST, POODLE และการลดระดับ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การโจมตี TLS: BEAST, POODLE และการลดระดับ”

ศึกษาการโจมตี TLS ในอดีตและมาตรการป้องกันใน TLS 1.3 คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “การโจมตี TLS: BEAST, POODLE และการลดระดับ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม

ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. แฮนด์เชก TLS 1.3 ทีละขั้นตอน
  2. ชั้นระเบียน TLS และชุดรหัสเข้ารหัส
  3. การตรวจสอบใบรับรองใน TLS
  4. การโจมตี TLS: BEAST, POODLE และการลดระดับ
← กลับไปที่ Cryptology Academy