ในชีวิตประจำวันของเราเวลาจะเข้าสู่ระบบอะไรก็ตามจะมีการยืนยันตัวตนที่เราเจอกันบ่อย ๆ คือการใช้ Username และ Password เพื่อการเข้าถึงในการใช้งาน เช่นการเข้าใช้ระบบ Windows หรือการเข้าถึงแอปพลิเคชันต่าง ๆ บนมือถือ ซึ่งเป็นการป้องกันการปลอมแปลงบุคคลที่จะแอบอ้างเข้ามาใช้งานรูปแบบหนึ่ง แต่ในปัจจุบันการเข้าถึงไม่ใช่แค่การเข้าถึงแค่ระบบหรืออุปกรณ์เท่านั้น แต่ยังรวมไปถึง Machine หรือสิ่งที่อยู่นอกเหนือจากตัวบุคคล ที่ต้องยืนยันว่าตัวเองเป็น Machine หรือเครื่องนั้นจริง ๆ
ถ้ามองว่า Username และ Password เป็นการยืนยันว่าใครเป็นคนเข้าถึงระบบแล้วนั้น ตัวเครื่องหรืออุปกรณ์เองก็มีการยืนยันตัวตนเช่นเดียวกันเพื่อความปลอดภัย โดยเราสามารถเจอกันได้บ่อย ๆ อย่างเช่น การเข้าถึงเว็บไซต์ เป็นต้น ฉะนั้นเราจะรู้ได้อย่างไรว่าเว็บไซต์นั้น ๆ เป็นเว็บไซต์ที่เราต้องการเข้าถึงจริง ๆ ไม่ใช่โดนปลอมแปลงระหว่างทาง ซึ่งหลาย ๆ คนก็น่าจะเคยเจอกันอยู่แล้ว การปลอมแปลง URL นั้นก็เพื่อที่จะหลอกล่อเหยื่อให้เข้ามาเพื่อล้วงข้อมูลต่าง ๆ เช่น ชื่อผู้ใช้ รหัสผ่าน หรือข้อมูลส่วนบุคคลอื่น ๆ หรือที่เรียกกันว่าฟิชชิง (Phishing)
ในปัจจุบันการยืนยันตัวตนของเครื่องหรืออุปกรณ์ต่าง ๆ สามารถทำได้หลายวิธีการ SSL/TLS, SSH Keys, API Keys และ Code Signing ซึ่งส่วนนี้เราจะพูดถึง SSL/TLS เป็นหลัก
จากรูปด้านบนจะเห็นว่า การเชื่อมต่อจาก Client ไปยัง Server ที่ทำการติดตั้ง SSL Certificate แล้วนั้นจะมีการตรวจสอบ Certificate ที่ส่งจาก Server มาก่อน หากถูกต้องที่เบราว์เซอร์จะขึ้นรูปกุญแจเพื่อยืนยันว่าเว็บไซต์ (Machine) ที่เข้าถึงนั้นปลอดภัยที่จะเชื่อมต่อ
เช่นเดียวกันกับ Password โดยปกติแล้วรหัสผ่านที่เราใช้งานนั้นโดยปกติแล้วจะมีนโยบาย เพื่อให้ทำการเปลี่ยน Password ใหม่ เช่นทุก ๆ 3,6,9, เดือนเป็นต้น แต่สำหรับตัว Certificate นั้น ในปัจจุบัน จะถูกกำหนดให้มีอายุ 1 ปี และต้องทำการต่ออายุใหม่ ซึ่งเปรียบเหมือนการเปลี่ยน Password ใหม่ให้กับ Machine เพื่อป้องกันผู้ไม่หวังดีถอดรหัสและนำไปใช้ได้ง่าย ๆ
ซึ่งปัญหาที่เกิดขึ้นบ่อย ๆ มักจะเกิดจากการที่ไม่ได้ทำการเปลี่ยนใบรับรองใหม่ให้กับเครื่องนั้น ๆ ทำให้เมื่อเข้าถึง เว็บไซต์ตัวเบราว์เซอร์เองจะแสดงให้เห็นว่า User เองกำลังเชื่อมต่อไปยังเว็บไซต์ที่ไม่น่าเชื่อถือ หากเป็นการดูแลเว็บไซต์เพียง 1-2 เว็บไซต์อาจจะไม่เกิดปัญหานี้แต่กรณีที่เป็นองค์กรใหญ่ หรือมีเว็บไซต์มากมาย และบางองค์กรเองก็มีหลายทีมงาน ที่ดูแลอีก จึงมักจะเป็นปัญหาหรือจุดอ่อนของธุรกิจ (Pain Point) ที่เกิดขึ้นอยู่บ่อย ๆ ในหลายองค์กร เมื่อเรามองเห็นถึงปัญหาที่จะเกิดขึ้นได้แล้วนั้น เราก็ต้องหาวิธีในการแก้ปัญหาเบื้องต้นให้กับเหล่าเครื่อง อุปกรณ์ ระบบ เว็บไซต์ เพื่อให้มีความปลอดภัย
ในฐานะ ANET เป็นผู้ให้บริการด้านอินเทอร์เน็ต เบื้องต้นเราอยากแนะนำและอยากให้รู้จักกับวงจรชีวิตของใบรับรองอิเล็กทรอนิกส์ Certificate Lifecycle เพื่อให้แก้ปัญหาที่เกิดขึ้นได้
THE CERTIFICATE LIFECYCLE?
โดยปกติ Certificate lifecycle เองแยกเป็น 5 ส่วนด้วยกันคือ
- Certificate Request
- ทำการสร้างคำขอเพื่อใช้ออก Certificate
- Certificate Issuance
- ทำการส่งใบคำขอนั้น ไปยัง CA เพื่อขอ Certificate
- Certificate Provisioning
- เมื่อได้ Certificate แล้วนำไปติดตั้งลงบน Machine
- Certificate Monitoring
- ทำการตรวจสอบว่า Certificate ที่ติดตั้งนั้นถูกต้อง
- Certificate Revocation/Renewal
- ในส่วนนี้แยกเป็นสองกรณี
- ในกรณีที่มีแนวโน้มว่าจะถูกบุกรุก หรือมีปัญหาอื่น ๆ ให้ทำการ Revoke และ Certificate นั้นจะถูกยกเลิกโดยทันที
- หากใกล้หมดอายุให้ทำการ Renew Certificate ใหม่
- ในส่วนนี้แยกเป็นสองกรณี
ซึ่งเมื่อถึงถึงขั้นตอนนี้ไม่ว่าจะ Revocation/Renewal เราจะกลับไปที่ข้อ 1 ใหม่อีกครั้ง