Score:0

การใช้ AES-CBC ใน TLS1.2

ธง us

AES-CBC ยังคงมีช่องโหว่ใน TLS1.2 หรือไม่ หรือช่องโหว่นี้ใช้ได้กับ TLS เวอร์ชันต่ำกว่าเท่านั้น ถ้าไม่ เหตุใดจึงถูกลบใน TLS 1.3

kelalaka avatar
in flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [เหตุใด AES CBC จึงถูกลบใน TLS 1.3](https://crypto.stackexchange.com/questions/52566/why-was-aes-cbc-removed-in-tls-1-3)
Maarten Bodewes avatar
in flag
กล่าวโดยย่อ: มันไม่ปลอดภัยหากคุณใช้การติดตั้ง AES-CBC ที่เป็นค่าเริ่มต้น ซึ่งไม่ดีพอที่จะแยกออก
us flag
@MaartenBodewes มีการระบุการใช้งานที่ไม่ใช่ค่าเริ่มต้นไว้ที่ใดที่หนึ่งหรือไม่ ส่วนใดของการใช้งานเริ่มต้นที่จะมีความเสี่ยง?
Maarten Bodewes avatar
in flag
ผู้ที่รายงานข้อยกเว้นการเติม PKCS#7 TLS ใช้การเข้ารหัส MAC จากนั้นจึงมีความเสี่ยงต่อการโจมตีของ Oracle
us flag
@MaartenBodewes โดยทั่วไปแล้ว TLS 1.2 ยังคงอนุญาตให้ใช้ค่าเริ่มต้นของ AES-CBC ซึ่งไม่ปลอดภัย
Maarten Bodewes avatar
in flag
$$ ใช่ ถูกต้อง
dave_thompson_085 avatar
cn flag
(@MaartenBodewes) สำหรับ oracle เสริม 'lucky13' มีตัวเลือกสำหรับเข้ารหัสแล้ว-MAC, rfc7366 ในปี 2014 แต่ฉันไม่ทราบการใช้งานใด ๆ ที่เพิ่ม EtM โดยไม่เพิ่ม 1.3 ซึ่งแน่นอนว่าเป็นที่นิยมมากกว่า . ช่องโหว่ _other_ ของ CBC ใน 1.0 และ SSL3, เปิดเผย-IV, ถูกโจมตีโดย BEAST (ส่งผลให้ผู้คนเปลี่ยนไปใช้!! RC4 ชั่วขณะ) ได้รับการแก้ไขแล้วใน 1.1 (และ 1.2)
Maarten Bodewes avatar
in flag
@ dave_thompson_085 ฉันกำลังพูดถึงการโจมตีทั่วไปกับ CBC ด้วยการเติมในโปรโตคอลนั้น การโจมตีเฉพาะจังหวะเวลาจะมีประโยชน์ก็ต่อเมื่อการเติม oracle ไม่พร้อมใช้งานโดยตรงตามเงื่อนไขข้อผิดพลาดและอื่นๆ และใช่ ฉันจำไม่ได้ว่าเคยดู EtM ที่ไหน...
Gilles 'SO- stop being evil' avatar
@dave_thompson_085 OpenSSL เริ่มเพิ่มการรองรับ encrypt-then-MAC [ในปี 2013](https://github.com/openssl/openssl/commit/5e3ff62c345c976cd1ffbcc5e6042f55264977f5), GnuTLS [ในปี 2014](https://gitlab.com/gnutls /gnutls/-/tree/e93cef18471962b001dac0f792cb569f1a4cde58), Mbed TLS [ในปี 2014](https://github.com/ARMmbed/mbedtls/commit/699cafaea27c72ea68aa85bd8a4e18afb879e272) ไม่รองรับในระดับสากล แต่เก่ากว่า TLS 1.3 มาก อย่างไรก็ตาม เป็นเวอร์ชันล่าสุดกว่า TLS 1.2 ซึ่งเป็นเวอร์ชันแรกที่มีทางเลือกที่ดีกว่า CBC (GCM)
Score:2

ฉันนึกถึงจุดอ่อนของ AES-CBC ใน TLS 1.1 ขึ้นไปได้เพียงข้อเดียวคือ ลัคกี้สิบสามโจมตี. นี่เป็นการโจมตีวิธีแพดข้อความที่ออกแบบมาไม่ดี อ่อนแอเป็นพิเศษ ถึง ก การขยายการโจมตีของออราเคิล เนื่องจากใช้ MAC-แล้วเข้ารหัส (ด้วยรูปแบบการขยายที่ทำให้การโจมตีค่อนข้างง่าย)

การโจมตีเดิมขึ้นอยู่กับการได้รับ การถอดรหัส_ล้มเหลว แจ้งเตือนเมื่อการเติมผิด ซึ่งก็คือ แก้ไขใน TLS 1.1 โดยดำเนินการต่อด้วยคีย์เซสชันแบบสุ่มในข้อผิดพลาดการเติม (และการใช้งาน TLS 1.0 ก็ใช้มาตรการรับมือนี้เช่นกัน) อย่างไรก็ตาม การใช้งาน TLS 1.2 แบบไร้เดียงสายังคงเสี่ยงต่อการถูกโจมตีในช่วงเวลา: สิ่งที่ผู้โจมตีจำเป็นต้องทราบคือ จำนวนไบต์ของการเติมที่ถูกต้อง และเวลาที่ใช้ในการประมวลผลข้อความจะทำให้ข้อมูลนี้รั่วไหล เว้นแต่ผู้ดำเนินการจะระมัดระวังเป็นอย่างมาก .

การใช้งาน TLS หลักเวอร์ชันปัจจุบันป้องกัน Lucky Thirteen ดังนั้นโดยทั่วไปคุณจึงสามารถใช้ชุดเข้ารหัส CBC ได้อย่างปลอดภัย มาตรการตอบโต้นี้มีค่าใช้จ่ายด้านประสิทธิภาพ อย่างไรก็ตาม การนำไปปฏิบัติโดยทั่วไปต้องดำเนินการ ทั้งหมด ความยาวช่องว่างภายในที่เป็นไปได้ซึ่งมีมากถึง 256 แล้วรวมผลลัพธ์ ระวังว่าการใช้งานรุ่นเก่าหรือการใช้งานที่ไม่ได้ออกแบบมาเพื่อความปลอดภัยสูงอาจยังมีช่องโหว่อยู่

การใช้งาน TLS บางอย่าง (อย่างน้อย OpenSSL, GnuTLS และ Mbed TLS) รองรับ นามสกุลเข้ารหัสแล้ว MAC ซึ่งป้องกันช่องโหว่นี้อย่างสมบูรณ์

ไม่ว่าในกรณีใดเหตุผลเดียวที่จะ ใช้ ชุดรหัส CBC คือการพูดคุยกับระบบเก่าที่ไม่รองรับชุดรหัส AEAD (โดยใช้ GCM, CCM หรือ Chacha-Poly) ชุดรหัส AEAD นั้นเร็วกว่าและมีแนวโน้มที่จะเกิดอุบัติเหตุด้านความปลอดภัยน้อยลง โดยทั่วไปแล้ว เหตุผลที่ชุดการเข้ารหัส CBC ยังคงมีอยู่ก็เพื่อระบบที่มีเอ็นจิ้นการเข้ารหัสซึ่งไม่สามารถอัปเกรดได้อย่างมีประสิทธิภาพ (เช่น เนื่องจากได้รับการรับรองแล้ว และไม่มีใครต้องการจ่ายเงินเพื่อรับรองการใช้งาน GCM หรือ CCM) หากเหตุผลที่ควรหลีกเลี่ยง GCM และ Chacha-poly ก็คือการมีอยู่ของการเร่งความเร็ว AES CCM จะใช้ประโยชน์จากสิ่งนั้นและโดยทั่วไปจะเร็วกว่าชุดรหัส CBC (ซึ่งต้องมีการคำนวณ HMAC)

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

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา