หัวข้อ
- #TLS
สร้าง: 2024-10-27
สร้าง: 2024-10-27 21:31
ประมาณปี 2020 เป็นต้นมา เนื่องจาก TLS1.1 หยุดให้การสนับสนุนแล้ว
จึงจำเป็นต้องตรวจสอบเซิร์ฟเวอร์รุ่นเก่า
หากยังคงใช้ TLS1.1 การสื่อสารระหว่างบริการคลาวด์ เช่น AWS, Azure อาจเกิดข้อผิดพลาด หรือ
อาจเกิดข้อผิดพลาดในการสื่อสาร API ภายนอก เช่น การชำระเงิน หรืออาจมีปัญหาขึ้นอยู่กับเวอร์ชันของเบราว์เซอร์
- ดูเหมือนว่าเวอร์ชันก่อน 6.x จะไม่รองรับ TLS1.2 จำเป็นต้องเปลี่ยนเป็น TLS1.2 ผ่าน JRE เวอร์ชัน 7 ขึ้นไปของ Java
- ดูเหมือนว่าเวอร์ชัน 1.1.13 จะรองรับ TLS1.2
Client Hello : ไคลเอนต์ส่งคำขอเชื่อมต่อไปยังเซิร์ฟเวอร์ (รวมถึงเวอร์ชัน TLS และชุดรหัสลับที่รองรับ)
Server Hello : เซิร์ฟเวอร์ส่งเวอร์ชัน TLS ชุดรหัสลับ และใบรับรอง SSL เพื่อยืนยันความน่าเชื่อถือ
การแลกเปลี่ยนคีย์และการสร้างคีย์เซสชัน : ไคลเอนต์และเซิร์ฟเวอร์สร้างคีย์เซสชันที่ใช้ร่วมกันผ่านอัลกอริธึมการแลกเปลี่ยนคีย์
ข้อความเสร็จสิ้น : ไคลเอนต์และเซิร์ฟเวอร์ส่งข้อความเสร็จสิ้นที่เข้ารหัสด้วยคีย์ของตนเอง
การส่งข้อมูล : ใช้คีย์เซสชันในการเข้ารหัสและส่งข้อมูล
การปิดการเชื่อมต่อ : เมื่อการส่งข้อมูลเสร็จสิ้น จะส่งข้อความปิดการเชื่อมต่อและลบคีย์เซสชัน
TLS เป็นโปรโตคอลความปลอดภัยในขั้นตอนการส่งข้อมูลและเป็นพื้นฐานของ HTTPS ให้การรับรองความถูกต้อง ความสมบูรณ์ และการเข้ารหัส
1.2 มีความปลอดภัยและประสิทธิภาพเหนือกว่า 1.1
- 1.1 ใช้ md5 และ sha-1 อัลกอริธึมแฮช
- 1.1 อาจมีความเสี่ยงต่อการโจมตี BEAST, Man-in-the-middle และ Cipher Suite
* BEAST : ผู้โจมตีดักจับการเชื่อมต่อ HTTPS และแทรกเนื้อหาที่เป็นอันตราย
* Man-in-the-middle : ผู้โจมตีดักจับการสื่อสารและขโมยข้อมูล
- 1.2 ใช้ SHA-256 อัลกอริธึม (อัลกอริธึมความปลอดภัยที่แข็งแกร่งกว่า)
- 1.2 รองรับ GCM (Galois / Counter Mode) ชุดรหัสลับ และดำเนินการเข้ารหัสและการตรวจสอบความถูกต้องพร้อมกัน จึงเร็วขึ้น
กลไกการเข้ารหัสทั้งหมดที่จำเป็นสำหรับไคลเอนต์และเซิร์ฟเวอร์ในการแลกเปลี่ยนข้อมูล ประกอบด้วย 4 ส่วน
1. อัลกอริธึมการแลกเปลี่ยนคีย์
- วิธีการแลกเปลี่ยนคีย์ลับร่วมกันอย่างปลอดภัย เช่น RSA, Diffie-Hellman
2. อัลกอริธึมการตรวจสอบความถูกต้อง
- การตรวจสอบว่าเซิร์ฟเวอร์เชื่อถือได้หรือไม่ผ่านใบรับรอง เช่น RSA เป็นต้น
3. อัลกอริธึมการเข้ารหัสแบบสมมาตร
- วิธีการเข้ารหัสข้อมูลระหว่างเซสชัน และไคลเอนต์และเซิร์ฟเวอร์ถอดรหัสด้วยคีย์เซสชันเดียวกัน เช่น AES
4. รหัสตรวจสอบข้อความ
- การตรวจสอบความสมบูรณ์ของข้อมูล เช่น HMAC-SHA256
ชุดรหัสลับจะแสดงองค์ประกอบทั้งสี่นี้รวมกัน
ความคิดเห็น0