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

ระบุว่าจัดเก็บวัตถุใด

เริ่มจากรูปแบบการจัดเก็บที่ผู้ผลิตเอกสารไว้ ไคลเอนต์อาจเก็บพาสเวิร์ดที่กู้คืนได้ โทเคน หรือการอ้างอิงถึงที่เก็บข้อมูลรับรอง และแต่ละแบบมีความเสี่ยงเปิดเผยต่างกัน ชื่อองค์ประกอบ XML ไม่ใช่การออกแบบ และสตริงที่ดูเหมือน base64 ก็ไม่ใช่หลักฐานของการเข้ารหัส

ถามผู้จำหน่ายหรือผู้ดูแลระบบว่าองค์ประกอบใดอ่านค่าขณะเชื่อมต่อ

จากนั้นระบุ API การป้องกันหากมีเอกสารระบุ ใน Windows CryptProtectData ป้องกันข้อมูลด้วยคีย์ที่ได้มาจากข้อมูลรับรองการเข้าสู่ระบบของผู้ใช้ที่เข้ารหัส และตัวเลือกในระดับเครื่องเปลี่ยนว่าใครถอดรหัสได้ นั่นคือตัวอย่างที่เป็นรูปธรรมว่าทำไมขอบเขตจึงสำคัญ ไม่ใช่หลักฐานว่าไคลเอนต์ VPN รายใดใช้ API นั้น

แยกสำเนาที่ถูกขโมยออกจากการใช้งานขณะรัน

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

ความต่างนี้คือสิ่งที่ข้ออ้างเรื่องไฟล์ออฟไลน์มักเข้าใจผิด การเข้ารหัสขณะพักอาจหยุดคนที่คัดลอกไฟล์เดียวโดยไม่มีบัญชี แต่ไม่หยุดโค้ดที่ทำงานในฐานะบัญชีนั้น

ข้อความทั้งสองเป็นจริงพร้อมกันได้ และข้อที่สองคือข้อที่สำคัญระหว่างการตอบสนองเหตุการณ์

อ่านการควบคุมการเข้าถึงที่บังคับใช้จริง

ตรวจสอบ ACL ของไฟล์และไดเรกทอรีเหนือขึ้นไป ไม่ใช่แค่โหมดไฟล์ ใน Windows ให้เปรียบเทียบสิทธิ์ที่มีผลของโปรไฟล์ผู้ใช้กับสิทธิ์ของบริการหรืองานที่ตั้งเวลาไว้ของไคลเอนต์ ความลับที่ป้องกันไว้สำหรับผู้ใช้คนหนึ่งไม่ได้ป้องกันจากผู้ดูแลระบบโดยอัตโนมัติ และก็ไม่ได้เปิดเผยต่อผู้ดูแลระบบโดยอัตโนมัติเช่นกัน

icacls "%APPDATA%\Vendor\Client\profiles.xml"
whoami /priv

บันทึกว่าใครเป็นผู้เรียกใช้ไคลเอนต์ เพราะตัวตนนั้นคือผู้ถูกถอดรหัส

สำหรับกลุ่มเครื่องที่จัดการส่วนกลาง การควบคุมที่เกี่ยวข้องอาจเป็นการจัดการอุปกรณ์มากกว่าไฟล์ ถามว่าข้อมูลรับรองถูกฝากไว้หรือไม่ เพิกถอนจากระยะไกลได้หรือไม่ และกระบวนการเป็นอย่างไรเมื่ออุปกรณ์สูญหาย

วางแผนรับมือการเปิดเผยแทนการทดสอบการถอดรหัส

อย่ารันเครื่องมือสกัดที่ไม่รู้จักกับไฟล์เพื่อพิสูจน์ประเด็นใด ๆ มันอาจได้ผล อาจทำให้โปรไฟล์เสียหาย และไม่ว่าอย่างไรก็เปลี่ยนหลักฐาน ใช้การออกแบบที่มีเอกสารและการประเมินที่ได้รับอนุญาตหากจำเป็นต้องตรวจสอบจริง ๆ

หากยืนยันการเปิดเผยได้ ให้หมุนเวียนข้อมูลรับรองที่เจ้าของตัวตน

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

คำถามสำหรับการทบทวนผู้จำหน่าย

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

เก็บคำตอบไว้กับบันทึกการติดตั้ง เพื่อให้ผู้ทบทวนคนถัดไปไม่ต้องทำซ้ำ

ข้อมูลรับรองที่บันทึกไว้คือการแลกเปลี่ยนระหว่างความสะดวกกับการเปิดเผย จงแลกเปลี่ยนอย่างตั้งใจ และเขียนไว้ว่าใครยอมรับ

บทความที่เกี่ยวข้อง