ระบบการเย็บกระดาษ OCSP มีประสิทธิภาพมากขึ้น SSL /TLS การตรวจสอบใบรับรอง โดยจัดการกับความท้าทายด้านประสิทธิภาพ ความเป็นส่วนตัว และความน่าเชื่อถือของวิธีการแบบเดิม โดยการแคชสถานะใบรับรองบนเซิร์ฟเวอร์และแบ่งปันระหว่าง TLS การจับมือกันการสเตเปิล OCSP ช่วยให้การเชื่อมต่อรวดเร็วและปลอดภัยยิ่งขึ้น
OCSP คืออะไร?
บริษัท โปรโตคอลสถานะใบรับรองออนไลน์ (OCSP) เป็นวิธีการแบบเรียลไทม์สำหรับการตรวจสอบความถูกต้องของ SSL/TLS ใบรับรอง. จัดการโดย ผู้ออกใบรับรอง (CA)OCSP อนุญาตให้เบราว์เซอร์ยืนยันได้ว่าใบรับรองนั้น:
- ถูกต้อง
- ยกเลิก
- ไม่ทราบ
กระบวนการนี้ป้องกันไม่ให้ผู้ใช้เชื่อถือใบรับรองที่ถูกเพิกถอน ทำให้ยังคงความสมบูรณ์ของการสื่อสารที่เข้ารหัสไว้
คุณสามารถทดสอบเวลาตอบสนอง OCSP ได้ด้วย:
OpenSSL s_client -เชื่อมต่อ ตัวอย่าง.com:443 -สถานะ
OpenSSL อสป -ผู้ออกบัตร chain.pem -ใบรับรอง ใบรับรอง.pem - ข้อความ \
-URL http://ocsp.your-ca.com
ความท้าทายของ OCSP แบบดั้งเดิม
แม้ว่า OCSP จะเข้ามาแทนที่ CRL ขนาดใหญ่ แต่ก็ยังมีปัญหาอื่นๆ ตามมา:
ปัญหาด้านประสิทธิภาพ
การค้นหาเบราว์เซอร์แต่ละครั้งไปยังผู้ตอบสนอง OCSP ของ CA จะเพิ่มเวลาแฝงให้กับ SSL/TLS การจับมือ การทำให้หน้าโหลดช้าลง และทำให้ผู้ใช้หงุดหงิด
ข้อกังวลเกี่ยวกับข้อมูลส่วนบุคคล
แบบสอบถาม OCSP เปิดเผยข้อมูลการเรียกดูของผู้ใช้ให้กับ CA เนื่องจากโดเมนที่กำลังตรวจสอบเป็นส่วนหนึ่งของแบบสอบถาม
จุดอ่อนของการล้มเหลวแบบอ่อน
เบราว์เซอร์ส่วนใหญ่ใช้โหมด soft-fail ซึ่งหมายความว่า:
-
หากผู้ตอบสนอง OCSP ไม่พร้อมใช้งาน เบราว์เซอร์จะดำเนินการเชื่อมต่อต่อไปโดยถือว่าใบรับรองนั้นถูกต้อง
ผู้โจมตีสามารถใช้ประโยชน์จากสิ่งนี้ได้โดยการบล็อกคำขอ OCSP โดยหลีกเลี่ยงการตรวจสอบการเพิกถอน
OCSP Stapling คืออะไร?
การสเตเปิล OCSP จะเปลี่ยนการตรวจสอบใบรับรองจากเบราว์เซอร์ไปยังเซิร์ฟเวอร์ แทนที่เบราว์เซอร์จะสอบถาม CA เซิร์ฟเวอร์จะรับและแคชการตอบสนองของ OCSP ซึ่งจะส่งไปยังเบราว์เซอร์ในระหว่าง SSL/TLS จับมือ
การเย็บกระดาษ OCSP ทำงานอย่างไร
- สถานะใบรับรองคำขอเซิร์ฟเวอร์: เซิร์ฟเวอร์จะสอบถามผู้ตอบสนอง OCSP ของ CA เป็นระยะๆ
- CA ให้การตอบรับแบบลงนาม: ผู้ตอบสนองจะส่งกลับการตอบกลับ OCSP ที่มีการเซ็นชื่อดิจิทัลและประทับเวลา
- เซิร์ฟเวอร์แคชการตอบสนอง: คำตอบจะถูกเก็บไว้เป็นเวลา 24–48 ชั่วโมง ขึ้นอยู่กับ
nextUpdate
สนาม - การเย็บกระดาษระหว่างการจับมือ: เซิร์ฟเวอร์รวมการตอบสนอง OCSP ที่แคชไว้ใน TLS การจับมือช่วยให้เบราว์เซอร์สามารถตรวจสอบใบรับรองได้โดยไม่ต้องสอบถาม CA
ข้อดีของการเย็บกระดาษ OCSP
- SSL เร็วขึ้น/TLS จับมือทักทาย: ขจัดความจำเป็นที่เบราว์เซอร์จะต้องค้นหา CA จึงลดความล่าช้าในการเชื่อมต่อ
- ความเป็นส่วนตัวขั้นสูง: กิจกรรมการเรียกดูของผู้ใช้ยังคงเป็นส่วนตัว เนื่องจากแบบสอบถาม OCSP จะไม่ถูกส่งไปยัง CA อีกต่อไป
- ปรับปรุงความน่าเชื่อถือ: เบราว์เซอร์จะพึ่งพาการตอบสนอง OCSP ที่เซิร์ฟเวอร์จัดเตรียมไว้ ซึ่งช่วยลดการพึ่งพาความพร้อมใช้งานของ CA
- ลดการใช้แบนด์วิดท์: เซิร์ฟเวอร์จัดการคำขอ OCSP เป็นชุด ซึ่งจะช่วยลดปริมาณการรับส่งข้อมูลบนเครือข่ายให้เหลือน้อยที่สุด
- ประสบการณ์ผู้ใช้ที่ดีขึ้น: การจับมือที่รวดเร็วยิ่งขึ้นและลดเวลาแฝงจะช่วยเพิ่มความน่าเชื่อถือและความพึงพอใจ
ข้อเสียของการเย็บกระดาษ OCSP
- การใช้ทรัพยากรเซิร์ฟเวอร์: การดึงและแคชการตอบสนอง OCSP จะเพิ่มการประมวลผลและหน่วยความจำให้กับเซิร์ฟเวอร์
- การสนับสนุนลูกค้าที่จำกัด: เบราว์เซอร์รุ่นเก่าหรือไคลเอนต์ที่ไม่เป็นไปตามมาตรฐานอาจไม่รองรับการสเตเปิล OCSP และย้อนกลับไปใช้แบบสอบถาม OCSP ดั้งเดิม
- ลดความเสี่ยงในการโจมตีโดยไม่ต้องให้ความสำคัญเป็นพิเศษ: ผู้โจมตีสามารถหลีกเลี่ยงการเย็บกระดาษได้โดยการส่งใบรับรองโดยไม่ต้องมีการตอบกลับแบบเย็บกระดาษ เว้นแต่ใบรับรองนั้นจะมีนามสกุล Must-Staple
การปรับปรุงการเย็บ OCSP ด้วย Must-Staple
บริษัท ต้อง Staple ส่วนขยายนี้จะช่วยให้มั่นใจว่าใบรับรองจะมาพร้อมกับการตอบสนอง OCSP แบบเย็บกระดาษเสมอ หากไม่มีการตอบสนอง เบราว์เซอร์จะปฏิเสธการเชื่อมต่อ
ประโยชน์ของ Must-Staple
- บรรเทาการโจมตีแบบลดระดับโดยการบังคับใช้การตอบสนองแบบคงที่
- ลดการสัญจร OCSP ที่ไม่จำเป็นไปยัง CA
- เสริมสร้างความปลอดภัยให้กับใบรับรองที่มีมูลค่าสูง
เพื่อเปิดใช้งาน Must-Staple ติดต่อ CA ของคุณเพื่อรับการสนับสนุน.
การนำ OCSP Stapling มาใช้
อาปาเช่
เพิ่มคำสั่งเหล่านี้ลงในไฟล์กำหนดค่า SSL ของคุณ:
SSLใช้การเย็บกระดาษ on
แคชสเตปลิง SSL shmcb:/var/รัน/ocsp(128000)
SSLStaplingResponderหมดเวลา 5
รีสตาร์ท Apache:
sudo systemctl การเริ่มต้นใหม่ apache2
Nginx
เพิ่มการกำหนดค่าต่อไปนี้ลงในบล็อกเซิร์ฟเวอร์ของคุณ:
ssl_stapling เปิดอยู่;
ssl_stapling_verify เปิดอยู่;
Resolver 8.8.8.8;
ใบรับรอง SSL ที่เชื่อถือได้ /เส้นทาง/ไป/chain.pem;
รีสตาร์ท Nginx:
sudo systemctl การเริ่มต้นใหม่ Nginx
การทดสอบและการตรวจสอบการเย็บ OCSP
การทดสอบเบราว์เซอร์
เปิดเครื่องมือสำหรับนักพัฒนาเบราว์เซอร์ (เช่น แท็บความปลอดภัยของ Chrome) และตรวจสอบสถานะใบรับรองสำหรับการเย็บเล่ม
การทดสอบบรรทัดคำสั่ง
ใช้ OpenSSL เพื่อตรวจสอบการตอบสนองแบบสเตเปิล:
OpenSSL s_client -เชื่อมต่อ โดเมนของคุณ.com:443 -สถานะ
ยืนยันไฟล์ การตอบสนอง OCSP ส่วนนี้มีอยู่ในผลลัพธ์
การแก้ไขปัญหาการเย็บ OCSP
ไม่มีการตอบกลับแบบเย็บเล่ม
- ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ของคุณสามารถเข้าถึงผู้ตอบสนอง OCSP ของ CA ได้
- ตรวจสอบว่าใบรับรองกลางทั้งหมดรวมอยู่ในห่วงโซ่ใบรับรอง
คำตอบที่ไม่ถูกต้อง
-
ซิงโครไนซ์นาฬิกาเซิร์ฟเวอร์ของคุณกับเซิร์ฟเวอร์ NTP เพื่อหลีกเลี่ยงปัญหาการประทับเวลา
โอเวอร์เฮดหน่วยความจำ
-
เพิ่มประสิทธิภาพการกำหนดค่าแคช OCSP สำหรับสภาพแวดล้อมที่มีปริมาณการรับส่งข้อมูลสูง
สรุป
การสเตเปิลของ OCSP ช่วยแก้ปัญหาด้านประสิทธิภาพ ความเป็นส่วนตัว และความน่าเชื่อถือของการตรวจสอบการเพิกถอนแบบเดิมได้ เมื่อใช้ร่วมกับ Must-Staple คุณจะสามารถปกป้องเว็บไซต์ของคุณจากภัยคุกคามด้านความปลอดภัย เช่น การโจมตีแบบดาวน์เกรดได้มากขึ้น
นำ OCSP Stapling มาใช้กับเซิร์ฟเวอร์ของคุณวันนี้เพื่อปรับปรุงประสิทธิภาพและความน่าเชื่อถือของผู้ใช้ สำหรับคำแนะนำเพิ่มเติม เอกสารของผู้มีอำนาจออกใบรับรองและทีมสนับสนุนด้านเทคนิคสามารถให้บริบทและความช่วยเหลือเพิ่มเติมได้