Score:2

ใน TLS ไคลเอนต์ทราบรหัสสาธารณะของเซิร์ฟเวอร์ก่อนเริ่มการแลกเปลี่ยนข้อมูลหรือไม่

ธง cn

ฉันกำลังอ่านเกี่ยวกับการโจมตีล็อกแจม ฉันถูกถามว่าสามารถป้องกันการโจมตีด้วยการตรวจสอบความสมบูรณ์ของ เซิร์ฟเวอร์ สวัสดี ข้อความ.

คำตอบคือไม่ เพราะคนกลางยังส่งต้นฉบับไม่ได้ เซิร์ฟเวอร์ สวัสดี ข้อความและส่งของตัวเอง

จากการวิจัยของฉัน ดูเหมือนว่าไคลเอนต์จะได้รับรหัสสาธารณะของเซิร์ฟเวอร์เท่านั้นในช่วง เซิร์ฟเวอร์ สวัสดี ข้อความที่มีรหัสสาธารณะของเซิร์ฟเวอร์

ถ้าเป็นเช่นนั้น คำตอบของฉันควรจะถูกต้อง

มีวิธีใดบ้างที่ไคลเอนต์จะทราบรหัสสาธารณะของเซิร์ฟเวอร์ก่อน เซิร์ฟเวอร์ สวัสดี ข้อความ?

dave_thompson_085 avatar
cn flag
คีย์สาธารณะของเซิร์ฟเวอร์ใด อันที่ใช้สำหรับการรับรองความถูกต้องหรืออันที่ใช้สำหรับการแลกเปลี่ยนคีย์ซึ่งแตกต่างเสมอใน 1.3 และมักจะไม่แตกต่างในโปรโตคอลก่อนหน้านี้เสมอไป? _Only_ คีย์ kx ชั่วคราวใน 1.3 อยู่ใน ServerHello และไม่สามารถใช้เพื่อตรวจสอบความสมบูรณ์ของสิ่งใดๆ ได้ แต่ Logjam จะไม่นำไปใช้กับ 1.3 เนื่องจากไม่อนุญาตให้ใช้กลุ่ม FFDH ที่มีขนาดเล็กเกินไปหรือไม่ถูกต้องและอาจมีข้อบกพร่องอีกต่อไปสำหรับ kx
Jack avatar
cn flag
@dave_thompson_085 ตามที่เห็นที่นี่: https://cryptologie.net/upload/logjam.png ข้อความ ServerHello ส่ง certS, sign(skS,[p512, g, g^b]) ฉันกำลังพยายามค้นหาว่าในระหว่างนี้ไคลเอนต์สามารถตรวจสอบตัวตนของเซิร์ฟเวอร์ได้หรือไม่ สามารถป้องกันการโจมตี logjam ได้หรือไม่
dave_thompson_085 avatar
cn flag
แผนภาพนั้นแสดงเฉพาะรายการข้อมูลเฉพาะที่เกี่ยวข้องกับการโจมตี ไม่ใช่ที่ใดใกล้กับโปรโตคอลทั้งหมด และไม่ใช่ข้อความที่มีสิ่งเหล่านี้ ดู RFC 2246 และ seq. แม้ว่าอย่างที่ Maarten พูดไว้ รายการที่สำคัญสำหรับ _verify_ คือชุดการเข้ารหัสที่เลือก และ _that_ นั้นอยู่ใน ServerHello
Score:1
ธง in

การโจมตีที่เราเรียกว่า Logjam แสดงอยู่ในรูปที่ 2 และอาศัยข้อบกพร่องในวิธีที่ TLS เขียน DHE และ DHE_EXPORT. เมื่อเซิร์ฟเวอร์เลือก DHE_EXPORT สำหรับ การจับมือกันจะดำเนินการโดยการลงนาม การแลกเปลี่ยนคีย์เซิร์ฟเวอร์ ข้อความที่มี 512 บิต $p_{512}$แต่โครงสร้างของสิ่งนี้ ข้อความจะเหมือนกับข้อความที่ส่งระหว่างมาตรฐาน DHE ciphersuites ส่วนที่ลงนามของเซิร์ฟเวอร์ที่สำคัญอย่างยิ่ง ข้อความไม่สามารถรวมการบ่งชี้ใดๆ ของ ciphersuite เฉพาะได้ ที่เซิร์ฟเวอร์ได้เลือกไว้ โดยมีเงื่อนไขว่าลูกค้าเสนอ DHE ผู้โจมตีที่ใช้งานอยู่สามารถเขียนไคลเอ็นต์ใหม่ได้ ลูกค้าสวัสดี ถึง นำเสนอที่สอดคล้องกัน DHE_EXPORT ciphersuite ยอมรับโดย เซิร์ฟเวอร์และลบ ciphersuites อื่น ๆ ที่สามารถเลือกได้ แทน. ผู้โจมตีเขียนใหม่ เซิร์ฟเวอร์สวัสดี ตอบสนองต่อ แทนที่ผู้ที่ได้รับเลือก DHE_EXPORT ciphersuite กับการจับคู่ ciphersuite ที่ไม่ส่งออกและส่งต่อ การแลกเปลี่ยนคีย์เซิร์ฟเวอร์ ข้อความถึงลูกค้าตามที่เป็นอยู่ ลูกค้าจะตีความว่า ทูเพิลเกรดส่งออก $(p_{512}, g, g^b)$ ตามที่เลือกพารามิเตอร์ DHE ที่ถูกต้อง โดยเซิร์ฟเวอร์และดำเนินการจับมือกัน เดอะ ไคลเอนต์และเซิร์ฟเวอร์มีการถอดเสียงการจับมือกันที่ต่างกัน เวที แต่เป็นผู้โจมตีที่สามารถคำนวณได้ $ข$ ใกล้เคียงของจริง เวลาสามารถได้รับความลับหลักและคีย์การเชื่อมต่อ เพื่อจับมือกับลูกค้าให้เสร็จสิ้นจากนั้นจึงเป็นอิสระ อ่านและเขียนข้อมูลแอปพลิเคชันโดยอ้างว่าเป็นเซิร์ฟเวอร์

และคำถามของคุณอ่าน:

ฉันกำลังอ่านเกี่ยวกับการโจมตีล็อกแจม ฉันถูกถามว่าสามารถป้องกันการโจมตีด้วยการตรวจสอบความสมบูรณ์ของข้อความ Hello ของเซิร์ฟเวอร์ได้หรือไม่

และฉันเดาว่าคำตอบคือ ใช่แต่ถ้าจะลงนาม / ตรวจสอบชุดของชุดการเข้ารหัสที่มีให้ภายใน เซิร์ฟเวอร์สวัสดีและดูเหมือนว่าอย่างน้อย TLS ถึง 1.2 ล้มเหลวในการทำเช่นนั้น กล่าวอีกนัยหนึ่ง คุณต้องเปลี่ยนโปรโตคอล TLS เพื่อรวมชุดการเข้ารหัสที่มีให้ในการสร้างลายเซ็น/การยืนยัน ซึ่งทำให้เข้ากันไม่ได้กับซอฟต์แวร์ TLS อื่นๆ

ดังนั้นในขณะนี้ดูเหมือนว่าการไม่อนุญาตของคุณ การนำไปใช้งาน เพื่อดำเนินการ DHE_EXPORT (หรือ DH ชั่วคราว 1024 บิต) เป็นหนทางข้างหน้าสำหรับ TLS สูงสุด 1.2

Jack avatar
cn flag
สวัสดี ขออภัย แต่ทำไมคุณถึงบอกว่าใช่ นอกจากนี้ คำถามจะอยู่ที่ขั้นตอนของ ServerHello เท่านั้น (ยืนยันตัวตนที่นั่น)
Maarten Bodewes avatar
in flag
ฉันหมายความว่า **ในทางทฤษฎี** คุณยังสามารถลงนามชุดรหัสใน `ServerHello` แต่นั่นหมายถึงการเปลี่ยนแปลงของโปรโตคอลโดยรวม หากคุณเพียงแค่ **ใช้** โปรโตคอล แสดงว่าเป็น **ไม่** ที่แข็งแกร่ง
dave_thompson_085 avatar
cn flag
ในทางเทคนิคแล้ว มาตรฐานสำหรับ 1.1 และ 1.2 (RFC 4346 และ 5246) ได้ห้ามชุดการส่งออกทั้งหมดแล้ว (DHE, staticDH, DHanon, plainRSA และ (!) Kerberos จำได้ไหม?) ดังนั้น _sould_ นี้จึงเป็นปัญหาได้ถึง 1.0 เท่านั้น แต่ใน ปฏิบัติก็...

โพสต์คำตอบ

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