เปลี่ยนรหัสผ่าน VPN โดยไม่ล็อกอุปกรณ์ทั้งหมด
การเปลี่ยนรหัสผ่านไม่ได้อัปเดตสำเนาที่บันทึกไว้ จัดทำบัญชีไคลเอนต์ทุกตัว แทนที่ค่าที่บันทึกไว้ที่เจ้าของ และหยุดวงจรการลองซ้ำ
โทรศัพท์สามเครื่อง เราเตอร์หนึ่งเครื่อง และการตรวจสอบการเฝ้าระวังหนึ่งรายการยังคงถือรหัสผ่านเก่า และหนึ่งในนั้นเชื่อมต่อใหม่ทุกเก้าสิบวินาที รหัสผ่านของบัญชีเปลี่ยนไปเมื่อสิบนาทีก่อน ดังนั้นไคลเอนต์แต่ละตัวกำลังส่งค่าที่เซิร์ฟเวอร์ปฏิเสธ นั่นคือช่วงเวลาที่ตำนานแตกสลาย การเปลี่ยนรหัสผ่านแตะบัญชี ไม่ใช่สำเนาของค่าเก่าที่อยู่ในแต่ละอุปกรณ์ สิ่งที่ตามมาคืองานที่การเปลี่ยนแปลงนั้นไม่ได้ทำ
ตำนาน: การเปลี่ยนแปลงครั้งเดียว ทุกที่พร้อมกัน
ความเชื่อคือการเปลี่ยนรหัสผ่านจะออกจากระบบทุกอย่างและบังคับให้เข้าสู่ระบบใหม่ที่สะอาด สิ่งนี้ไม่เกิดขึ้น เพราะเซิร์ฟเวอร์ติดตามเพียงข้อมูลรับรองล่าสุดที่ยอมรับ ขณะที่ไคลเอนต์เก็บสิ่งที่บันทึกไว้ อุปกรณ์ที่มีรหัสผ่านบันทึกไว้จะลองใหม่ตามกำหนดการของตัวเองและล้มเหลวอย่างเงียบ ๆ จนกว่าจะมีคนสังเกตว่าบัญชีถูกล็อก เมื่อยอมรับว่าสำเนาอยู่นอกบัญชี การหมุนเวียนก็ไม่ดูเหมือนการกระทำเดียวอีกต่อไป
ไม่มีข้อใดขัดกับการหมุนเวียน แต่สนับสนุนให้ถือว่าสำเนาที่บันทึกไว้เป็นส่วนหนึ่งของการเปลี่ยนแปลง ไม่ใช่ความคิดภายหลัง การล็อกมักมาจากการลองซ้ำแบบขนาน อุปกรณ์แต่ละเครื่องยังคงส่งค่าเก่าตามกำหนดการของตัวเองจนกว่าตัวนับจะทำงาน บัญชีจึงดูเหมือนถูกโจมตีในขณะที่เพียงได้รับข้อมูลรับรองที่ไม่มีใครแทนที่ ความแตกต่างนี้สำคัญ เพราะทางแก้คือรายการอุปกรณ์ ไม่ใช่นโยบายการล็อกที่เข้มงวดกว่า
จัดทำบัญชีสำเนาก่อนการหมุนเวียน
เขียนบัญชีก่อนเปิดแบบฟอร์มรหัสผ่าน ระบุไคลเอนต์ สคริปต์ ระบบอัตโนมัติ และโปรไฟล์ที่จัดการทุกรายการที่พิสูจน์ตัวตนเป็นบัญชีนี้ โทรศัพท์ที่เชื่อมต่อเอง เราเตอร์ที่กำหนดค่าเมื่อสองปีก่อน แล็ปท็อปที่ตื่นเฉพาะวันจันทร์ และ การตรวจสอบการเฝ้าระวังที่ลองทุกนาที สำหรับแต่ละรายการ บันทึกว่าข้อมูลรับรองเก็บไว้ที่ใด อุปกรณ์เข้าถึงได้ระหว่างการเปลี่ยนแปลงหรือไม่ และมีเส้นทางการกู้คืนใดหากเชื่อมต่อใหม่ไม่ได้ รายการนี้เองที่เปลี่ยนการเปลี่ยนแปลงที่มีความเสี่ยงให้เป็นที่วางแผนไว้ และต้องมีอยู่ก่อนรหัสผ่านเก่าหยุดทำงาน
อุปกรณ์ออฟไลน์คือการมองข้ามแบบคลาสสิก แล็ปท็อปในลิ้นชักกลับมาสามสัปดาห์ต่อมาและนำเสนอค่าเก่าในจังหวะที่แย่ที่สุด บันทึกตำแหน่งและกำหนดการด้วย เพราะคุณจะต้องตามมันแทนที่จะรอ
ในฟลีต Linux การค้นหาเป็นเชิงกลไกไม่ใช่ฉลาด ค้นหาโปรไฟล์ที่อ้างอิงไฟล์ข้อมูลรับรอง แล้วค้นหาไฟล์ข้อมูลรับรองเอง เพราะรายการที่สองคือรายการที่ต้องเขียนใหม่ ทำซ้ำกับไคลเอนต์เดสก์ท็อปและโทรศัพท์ ซึ่งที่เก็บเป็นโปรไฟล์หรือรายการคีย์เชนไม่ใช่เส้นทาง เป้าหมายคือรายการที่คุณทำงานด้วยได้ ไม่ใช่การสแกนที่อ้างว่าพบทุกสำเนา
grep -rl auth-user-pass /etc/openvpn /etc/NetworkManager
grep -rl auth-user-pass ~/.config 2>/dev/null
ชั่งน้ำหนักสำเนากับผู้ที่เป็นเจ้าของ อุปกรณ์ที่ไม่มีใครอ้างสิทธิ์คืออุปกรณ์ที่ไม่มีใครอัปเดต และเป็นเครื่องที่มีแนวโน้มที่สุดที่จะลองซ้ำต่อไป
คุณกำลังหมุนเวียนความลับใดกันแน่
รหัสผ่านบัญชีเป็นเพียงข้อมูลรับรองเดียวในการติดตั้ง VPN วลีรหัสผ่านของคีย์ ตัวตนของใบรับรอง และความลับของคู่หูแบบเลือกได้ แต่ละอย่างมีเส้นทางการแทนที่และเจ้าของของตัวเอง การเปลี่ยนรหัสผ่านบัญชีไม่ทำอะไรกับอุปกรณ์ที่พิสูจน์ตัวตนด้วยใบรับรอง และการออกใบรับรองใหม่ก็ไม่ทำอะไรกับไคลเอนต์ที่ถือรหัสผ่านบันทึกไว้ ตั้งชื่อความลับก่อนตั้งชื่อทางแก้
หากการหมุนเวียนขับเคลื่อนด้วยความสงสัยไม่ใช่นโยบาย กระบวนการเหตุการณ์สำคัญกว่าการวางแผนเพื่อความสะดวก เพิกถอนสิ่งที่หลักฐานกำหนดและยอมรับงานเพิ่มเติมในรายการอุปกรณ์ การตัดสินใจนั้นเป็นของเจ้าของเหตุการณ์ ไม่ใช่ของผู้ที่บังเอิญถือแบบฟอร์มรีเซ็ตรหัสผ่าน
แทนที่ค่าที่บันทึกไว้ในที่ที่มันอยู่
เปลี่ยนข้อมูลรับรองผ่านกลไกที่บริการจัดทำเอกสาร จากนั้นอัปเดตสำเนาที่บันทึกไว้หรือเรียกใช้ขั้นตอนการเข้าสู่ระบบบนทุกอุปกรณ์ที่คุณตั้งใจจะเก็บไว้ อย่าแก้ไขการกำหนดค่าที่สร้างขึ้นเบื้องหลังตัวจัดการที่เขียนใหม่ เพราะตัวจัดการจะคืนค่าเก่าในการทำงานครั้งถัดไปและการแก้ไขจะกลายเป็นความล้มเหลวที่ล่าช้า อัปเดตแหล่งที่ตัวจัดการอ่าน หรือใช้ที่เก็บข้อมูลรับรองของไคลเอนต์เอง ไม่ว่าจะทางใด อุปกรณ์ต้องจบด้วยค่าใหม่ในที่ที่ไคลเอนต์อ่านจริง
ไคลเอนต์ที่เก็บไฟล์รหัสผ่านต้องให้ไฟล์ถูกเขียนใหม่ ขณะที่ไคลเอนต์ที่ถามต้องมีการเข้าสู่ระบบที่เสร็จสมบูรณ์ NetworkManager เก็บความลับไว้ในโปรไฟล์การเชื่อมต่อ ดังนั้นการเปลี่ยนแปลงจึงผ่าน nmcli ไม่ใช่โปรแกรมแก้ไขข้อความ:
nmcli connection modify work vpn.secrets "password=NEW"
nmcli connection up work
โปรไฟล์ที่อ่านไฟล์ข้อมูลรับรองเป็นกรณีที่สาม แทนที่เนื้อหาของไฟล์นั้น ปิดการอนุญาตไว้ และโหลดไคลเอนต์ใหม่แทนการแก้ไขโปรไฟล์ที่ชี้ไปยังไฟล์นั้น โปรไฟล์ไม่ได้เปลี่ยน มีเพียงความลับที่มันอ่านเท่านั้นที่เปลี่ยน
เชื่อมต่ออุปกรณ์ที่ตั้งใจไว้แต่ละเครื่องใหม่หนึ่งครั้งอย่างตั้งใจ และดูว่าเครื่องใดล้มเหลว หากอุปกรณ์ยังคงล้มเหลว ให้ดูบัญชีที่มันชี้ไปและที่เก็บที่มันอ่านก่อนเปลี่ยนรหัสผ่านอีกครั้ง เพราะการเปลี่ยนแปลงครั้งที่สองจะทวีคูณสำเนาที่ต้องอัปเดต อุปกรณ์ที่ล้มเหลวสองครั้ง มักชี้ไปยังบัญชีผิดหรืออ่านที่เก็บที่คุณยังไม่พบ แก้ไขสิ่งนั้นแล้วเชื่อมต่อใหม่
เซสชันและโทเคนมีอายุยืนกว่ารหัสผ่าน
การเปลี่ยนรหัสผ่านไม่ได้พิสูจน์ว่าเซสชันที่มีอยู่หรือใบรับรองแยกถูกเพิกถอนแล้ว บริการบางแห่งเก็บเซสชันไว้จนกว่าจะหมดอายุหรือถูกยุติอย่างชัดเจน และโทเคนที่ออกมามีอายุของตัวเอง ตรวจสอบว่าบริการทำอะไรจริงแทนการสรุปว่าการเปลี่ยนแปลงเป็นระดับโลก หากการเปลี่ยนแปลงเกิดจากความสงสัย ให้ยุติเซสชันอย่างชัดเจนและยืนยันผลลัพธ์
คำแนะนำวงจรชีวิตข้อมูลรับรองใน NIST SP 800-63B เก็บตัวพิสูจน์ตัวตนและเซสชันไว้ในหมวดแยกกัน จึงเป็นเหตุให้การเปลี่ยนรหัสผ่านและการออกจากระบบทั้งหมดเป็นสองการดำเนินการที่ต่างกัน ปฏิบัติต่อทั้งสองเป็นสองงานที่มีสองเกณฑ์การเสร็จสิ้น งานแรกเสร็จเมื่อค่าใหม่ทำงาน และงานที่สองเสร็จเมื่อเซสชันเก่าหายไป
บันทึกการเสร็จสิ้นโดยไม่เขียนรหัสผ่านใหม่ลงในบันทึก บันทึกการหมุนเวียนที่มีข้อมูลรับรองเป็นเหตุการณ์ใหม่ที่รออยู่บนดิสก์ที่ใช้ร่วมกัน บันทึกวันที่ อุปกรณ์ที่อัปเดตแล้ว และอุปกรณ์ที่ยังค้างอยู่