- หาก BitLocker ที่ไม่มีรหัสผ่านพึ่งพา TPM แบบแยกชิป (discrete TPM) ก็สามารถดักจับคีย์ VMK แบบข้อความล้วนได้จากบัส SPI ในจังหวะที่ VMK ถูกส่งจาก TPM ไปยัง CPU ระหว่างบูต
- การทดลองบน Lenovo L13 ใช้ DSLogic Plus ที่ราคาไม่ถึง 100 ดอลลาร์ แต่มีข้อจำกัดด้านการสุ่มสัญญาณมากสำหรับการอ่านบัส SPI 33MHz ได้อย่างเสถียร
- ข้อมูลที่ดักจับมา ต้องตีความตามลำดับ SPI → TIS → TPM 2.0 และพบคีย์ขนาด 32 ไบต์ที่ขึ้นต้นด้วย
5761ในบัฟเฟอร์ตอบกลับของTPM2_Unseal - เมื่อนำคีย์ที่ดึงออกมาไปใช้กับ
dislocker-fuseก็สามารถเมานต์พาร์ทิชัน BitLocker ได้ และเปลี่ยนsethc.exeเป็นcmd.exeเพื่อให้กด Shift 5 ครั้งแล้วได้ SYSTEM shell - การใช้ discrete TPM เพียงอย่างเดียวให้การป้องกันได้ไม่เพียงพอ และแนวทางป้องกันที่ได้ผลจริงคือ ใช้ fTPM หรือกำหนด PIN/วลีรหัสผ่านให้กับ BitLocker
จุดอ่อนของ BitLocker แบบไม่มีรหัสผ่านและ discrete TPM
- พาร์ทิชัน BitLocker ถูกเข้ารหัสด้วย FVEK (Full Volume Encryption Key)
- FVEK จะถูกเข้ารหัสซ้ำด้วย VMK (Volume Master Key) แล้วเก็บไว้บนดิสก์พร้อมข้อมูลที่เข้ารหัส
- โครงสร้างนี้ทำให้สามารถหมุนเวียนคีย์ได้โดยไม่ต้องเข้ารหัสทั้งดิสก์ใหม่
- VMK ถูกเก็บไว้ใน TPM
- ดังนั้นดิสก์จึงถอดรหัสได้เฉพาะตอนบูตบนเครื่องคอมพิวเตอร์เครื่องนั้นเท่านั้น
- ใน Active Directory มีกลไกการกู้คืนอยู่
- จุดที่เปราะบางคือช่วงที่ CPU ขอให้ TPM ส่ง VMK เพื่อใช้ถอดรหัสดิสก์
- VMK จะวิ่งผ่าน บัส SPI ระหว่าง TPM กับ CPU ในรูปข้อความล้วน
- หากดักจับค่านี้ได้ ก็สามารถนำไปใช้ถอดรหัสดิสก์ BitLocker ได้
อุปกรณ์ที่ใช้ดักจับการสื่อสารของ TPM
- อุปกรณ์ทดลองคือ DSLogic Plus ลอจิกอะนาไลเซอร์
- ซื้อมาในปี 2021 ในราคาต่ำกว่า 100 ดอลลาร์รวมภาษีและค่าส่ง
- เพื่อให้ได้สัญญาณที่เสถียร โดยทั่วไปต้องใช้ความถี่สุ่มสัญญาณราว 3–4 เท่า ของความถี่บัส
- บัส SPI เป้าหมายทำงานที่ 33MHz จึงต้องการการสุ่มสัญญาณอย่างน้อย 100MHz
- สเปกของ DSLogic Plus ระบุว่าสูงสุด 400MHz ที่ 16 แชนเนล แต่การใช้งานจริงมีข้อจำกัด
- DSLogic Plus มีข้อจำกัดชัดเจนตามวิธีการจับข้อมูลและจำนวนแชนเนล
- หากเพิ่มจำนวนแชนเนลที่จับพร้อมกัน ความถี่สุ่มสัญญาณจะลดลง
- โหมดสตรีมสามารถจับข้อมูลขนาดใหญ่ได้นานราว 1 นาที แต่ถูกจำกัดที่ 100MHz เมื่อใช้ 3 แชนเนล
- โหมดบัฟเฟอร์แม้จะสุ่มสัญญาณได้ที่ 400MHz แต่ทำงานได้เพียงไม่กี่มิลลิวินาที จึงไม่เหมาะกับงานนี้
- ตัวเลือกที่เป็นมืออาชีพกว่าคือ Saleae ซึ่งมีราคาสูงกว่าราว 10 เท่า และสามารถดูอุปกรณ์อื่นได้จาก รายการฮาร์ดแวร์ที่ sigrok รองรับ
การต่อเข้ากับบอร์ดและจังหวะการจับข้อมูล
- SPI เป็น บัสที่ใช้ร่วมกัน จึงไม่จำเป็นต้องต่อเข้ากับขาเล็ก ๆ ของ TPM โดยตรง
- หากมีชิ้นส่วนที่ใหญ่กว่าซึ่งต่ออยู่บนบัส SPI เดียวกัน ก็สามารถไปเกี่ยวสัญญาณจากจุดนั้นได้
- ในการทดลองนี้ระบุชิป SPI flash ที่อยู่ใกล้เคียงแล้วใช้งานจากจุดนั้น
- ตัวชิ้นส่วนมีสกรีนระบุไว้ ทำให้ค้นหา datasheet และตรวจสอบหน้าที่ได้ง่าย
- เนื่องจากความถี่สุ่มสัญญาณจะตกลงเมื่อใช้ DSLogic จึงจับเพียง 3 เส้นจากบรรดาเส้น SPI
- เส้นสำคัญคือ CLK, MOSI และ MISO
- ค่าแรงดัน threshold ควรตั้งไว้ประมาณครึ่งหนึ่งของแรงดันสัญญาณ
- แรงดันสัญญาณที่วัดได้คือ 3.3V และค่า threshold ที่เหมาะสมคือราว 1.6V
- VMK ที่ต้องการจะถูกใช้งานในช่วงท้ายของขั้นตอน POST
- บน Lenovo L13 ช่วงนั้นอยู่หลังหน้าจอสแปลชทันที หรือประมาณวินาทีที่ 14 ของการบูตทั้งหมดราว 25 วินาที
- ก่อนหน้านั้นก็มีการทำงานของ SPI เช่นกัน แต่ส่วนใหญ่เป็นการอ่านและตรวจสอบในขั้นตอนบูตระยะแรก ไม่ใช่การสื่อสารกับ TPM
- สามารถเริ่มจับข้อมูลได้ทันทีหลังเปิดเครื่อง หรือหากต้องการลดข้อมูลที่ไม่จำเป็นก็เริ่มหลังจากนั้นราว 7 วินาทีได้
การตีความ SPI, TIS และ TPM 2.0
- สัญญาณที่จับได้ต้องแยกตีความเป็น 3 ชั้นคือ SPI, TIS และ TPM 2.0
- SPI เป็นโปรโตคอลที่เรียบง่าย จึงตีความได้ด้วยลอจิกอะนาไลเซอร์ทั่วไป
- เมื่อสัญญาณนาฬิกาเปลี่ยนจาก 0 เป็น 1 สถานะของเส้นข้อมูลในขณะนั้นจะเป็นค่าบิต
- ในตัวอย่าง MOSI เป็น 0 ตลอด 8 จังหวะนาฬิกาจึงตีความเป็น
0x00ส่วน MISO มีบิตแรกเป็น 1 เพียงบิตเดียวจึงตีความเป็น0x80
- ส่วนที่ยากที่สุดคือ TIS (TPM Interface Specification)
- ไม่พบดีโค้ดเดอร์ที่ใช้งานได้จริง จึงต้องจัดการแบบแมนนวล
- libsigrok decoders แม้จะตีความข้อมูลได้ไม่ถูกต้องนัก แต่ช่วยหาช่วงคร่าว ๆ ที่มีการแลกเปลี่ยนกับ TPM ได้
- สาเหตุที่ล้มเหลวอาจเป็นเพราะการจับข้อมูลไม่มี Chip Select, สัญญาณนาฬิกาไม่แม่นยำ, มีบางไบต์ตกหล่น หรือเหตุผลอื่น
- คำขอที่ส่งจากมาสเตอร์ไปยังสเลฟมีรูปแบบซ้ำ ๆ
- สเลฟส่ง
80เพื่อบอกว่าพร้อมแล้ว - มาสเตอร์ส่งเฮดเดอร์
D4 00 24พร้อมไบต์ของ TPM - สเลฟยืนยันการอ่านด้วย
01 FF
- สเลฟส่ง
- การตอบกลับจากสเลฟไปยังมาสเตอร์ขึ้นกับการตั้งค่าและการอ่านรีจิสเตอร์
- เฟรมตัวอย่างเป็นผลลัพธ์ของการอ่าน 1 ไบต์จากแอดเดรส
D4 00 24 - สเลฟเริ่มทรานแซกชันด้วย
80แล้วจากนั้นค่าที่สนใจคือ0x80จึงปรากฏขึ้น
- เฟรมตัวอย่างเป็นผลลัพธ์ของการอ่าน 1 ไบต์จากแอดเดรส
การหาคีย์จากการตอบกลับของ TPM2_Unseal
- คำสั่ง TPM ที่ใช้ขอคืนคีย์คือ TPM2_Unseal
- คำสั่งนี้นิยามไว้ใน TPM 2.0 specification part 3
- การแยกทรานแซกชันของ TPM ทำโดยโฟกัสที่การตอบกลับบนเส้น MISO มากกว่าที่เฟรมคำขอ
- กรองข้อมูล SPI ดิบด้วยมาสก์
80 00 00 00 01 ..แล้วเก็บไว้เฉพาะไบต์ wildcard ตัวสุดท้าย - จุดเริ่มต้นของทรานแซกชัน TPM ระบุได้จากเฮดเดอร์
80 01หรือ80 02 - การตอบกลับที่มีคีย์จะเป็นการตอบกลับการยืนยันตัวตนที่ยาวกว่า และขึ้นต้นด้วย
80 02
- กรองข้อมูล SPI ดิบด้วยมาสก์
- ระหว่างคำสั่ง Unseal กับการตอบกลับมีความหน่วงประมาณ 10ms
- เฮดเดอร์
80 02หมายถึง password session ซึ่งต่างจากเฮดเดอร์80 01แบบข้อความล้วนที่คำขอส่วนใหญ่ใช้ - คาดว่าความหน่วงนี้เกิดจากการประมวลผล authentication ของคำขอและ HMAC ของคำตอบ
- เฮดเดอร์
- คำสั่งและคำตอบของ TPM ถูกประกอบกลับขึ้นมาทีละไบต์
- ใช้เครื่องมือ tpmstream-web ในการดีโค้ด
- คีย์ในบัฟเฟอร์ตอบกลับขึ้นต้นด้วย
5761และมีความยาว 32 ไบต์
การเมานต์ดิสก์และการทำแบ็กดอร์
- หลังบันทึกคีย์ที่ดึงออกมาไว้ในไฟล์ ก็ส่งต่อให้
dislocker-fuseเพื่อเมานต์พาร์ทิชัน BitLocker - ตัวอย่างคำสั่งจะสร้างไฟล์คีย์ เชื่อม
/dev/sdd3เข้ากับ./mnt/แล้วเมานต์dislocker-fileซ้ำไปยัง./mnt2/ - แบ็กดอร์ที่ง่ายที่สุดคือการเขียนทับโปรแกรม sticky keys ของ Windows ด้วย
cmd.exe- คัดลอก
Windows/System32/cmd.exeไปเป็นWindows/System32/sethc.exe - เมื่อนำดิสก์กลับไปใส่ในโน้ตบุ๊กแล้วบูต จากนั้นกด Shift 5 ครั้ง ก็จะได้ SYSTEM shell
- คัดลอก
ข้อจำกัดของอุปกรณ์และแนวทางป้องกัน
- ไม่ค่อยแนะนำ DSLogic สำหรับงานนี้
- มีการจับข้อมูลล้มเหลวจำนวนมากจนต้องทิ้งไป
- การสุ่มสัญญาณที่ 3 เท่าของความเร็วบัสนั้นเพียงพอแบบเฉียด ๆ สำหรับการได้สัญญาณนาฬิกาที่สม่ำเสมอ และยังมีบางไบต์ตกหล่น
- เพราะข้อจำกัดของอุปกรณ์ จึงต้องใช้เวลามากในการทำความเข้าใจโปรโตคอลเชิงลึกและตีความข้อมูลที่จับมาแบบแมนนวล
- หากเป็นกรณีที่นายจ้างเป็นผู้จัดซื้ออุปกรณ์ ก็น่าจะคุ้มกว่าหากซื้อลอจิกอะนาไลเซอร์ระดับมืออาชีพไปเลย
- การใช้ discrete TPM ไม่ได้เพิ่มความปลอดภัยของระบบอย่างที่คาด และอาจสร้าง ภาพลวงตาว่าปลอดภัย
- แนวทางป้องกันมี 2 แบบ
- ใช้ fTPM
- หากจำเป็นต้องใช้ discrete TPM ก็ควรกำหนด PIN หรือวลีรหัสผ่านให้กับ BitLocker
- Microsoft เองก็ แนะนำ ให้ตั้งค่า PIN หรือวลีรหัสผ่านของ BitLocker สำหรับพื้นที่ในองค์กรที่ต้องการการปกป้องข้อมูลในระดับสูงกว่า
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
TPM ทุกตัวรองรับ เซสชันที่เข้ารหัส เพื่อป้องกันการโจมตีแบบคนกลางลักษณะนี้ แค่ใช้
TPM2_StartAuthSessionแล้วระบุให้เข้ารหัสในคำสั่งของแต่ละเซสชันก็พอ แต่ BitLocker ไม่ได้ใช้สิ่งนี้ จึงเป็นความล้มเหลวร้ายแรง Microsoft ควรแก้ไขหากเทียบกัน systemd ใช้เซสชันที่เข้ารหัสเมื่อใช้การเข้ารหัสดิสก์ LUKS ร่วมกับ TPM: https://github.com/systemd/systemd/commit/acbb504eaf1be51572...
ขอถามเพราะไม่ค่อยรู้เรื่อง TPM ว่าเซสชันที่ผ่านการยืนยันตัวตนทำงานอย่างไร ระบบปฏิบัติการพิสูจน์ตัวตนของตัวเองต่อ TPM ด้วยวิธีที่ผู้โจมตีปลอมแปลงไม่ได้ในการโจมตีแบบคนกลางจริง ๆ ได้อย่างไร? ความลับหรือคีย์ที่เก็บไว้ฝั่งระบบปฏิบัติการก็ดูเหมือนจะต้องอยู่บนดิสก์เป็นข้อความธรรมดา เพราะยังไม่มีคีย์เข้ารหัส
ต่อให้ระบบปฏิบัติการตรวจสอบตัวตนของ TPM ได้ด้วยวิธีใดวิธีหนึ่ง และทำให้ไม่สามารถเลี่ยงได้ด้วยการแก้ไขไฟล์บางไฟล์บนดิสก์ ผมก็ยังไม่เห็นว่าอะไรจะหยุดผู้โจมตีไม่ให้รันรูทีนเดียวกันในอีมูเลเตอร์ได้ หากไม่ผสานกับ สภาพแวดล้อมการประมวลผลที่ปลอดภัย ฝั่ง CPU อย่าง Intel ME หรือ SGX ก็ดูยากที่จะได้ความปลอดภัยจริงจากแนวทางนี้ และถ้าเป็นแบบนั้นก็เหมือนจะไม่ต้องมี TPM ตั้งแต่แรก
มีบทความอื่นจากปี 2021 ด้วย
https://arstechnica.com/gadgets/2021/08/how-to-go-from-stole...
ผู้ผลิตโน้ตบุ๊กบางรายมีการตั้งค่าที่จะล้าง TPM เมื่อเปิดเครื่องโน้ตบุ๊ก หากคุณเปิดโน้ตบุ๊กเพื่อดูว่าสามารถเพิ่ม RAM ได้ไหม ก็ต้องหวังว่าจะเข้าถึง คีย์กู้คืน BitLocker ได้หรือมีสำรองไว้
ผมคิดว่าอาจเข้าถึงด้วยการตัดพลาสติกออกได้เหมือนกัน แบบฉากดึงปรสิตออกใน Matrix
ไม่มีอะไรใหม่ ค่าเริ่มต้นไม่บังคับใช้ PIN แต่เอกสารของ Microsoft อธิบายการโจมตีหลายแบบและแนะนำให้ตั้งค่า BitLocker PIN เพื่อป้องกันได้อย่างสมบูรณ์ เพราะ TPM ป้องกันการลองเดาสุ่มแบบ brute force อยู่แล้ว PIN จึงค่อนข้างอ่อนได้
ตัวอย่าง: https://learn.microsoft.com/en-us/windows/security/operating...
Behavior:Win32/AccessibilityEscalationสำหรับ BitLocker และการเข้ารหัสประเภทนี้ ผมไม่เคยเข้าใจโครงสร้างที่ระบบให้คีย์ถอดรหัสโดยอัตโนมัติเลย หากโน้ตบุ๊กทั้งเครื่องถูกขโมย BitLocker ให้ความปลอดภัยอะไร? จากมุมมองผู้โจมตี ระบบก็แค่บูตขึ้นมาแล้วขอรหัสผ่านบัญชีผู้ใช้เท่านั้น
เท่าที่ผมเข้าใจ มันน่าจะปกป้องข้อมูลของผมตอนถอดฮาร์ดดิสก์ออกจากโน้ตบุ๊กแล้วพยายามรันบนระบบอื่น เพราะความเข้าใจที่อาจโง่เขลานี้ ผมจึงตั้งรหัสผ่านที่ต้องป้อนเองกับ BitLocker เสมอ และกับ LUKS ก็ทำแบบนั้นมาตลอด ผมเข้าใจผิดทั้งหมดหรือเปล่า?
โดยปกติน่าจะล้างไดรฟ์แล้วขายมากกว่า และคงไม่พยายามทำการโจมตี cold boot จริง ๆ แต่ทั้งหมดขึ้นอยู่กับโมเดลภัยคุกคาม ส่วนตัวแล้วเหตุผลหลักที่ใช้การเข้ารหัสดิสก์ทั้งลูกบนอุปกรณ์ส่วนตัวคือเพื่อลดความจำเป็นในการทำลายสื่อจัดเก็บข้อมูลทางกายภาพเมื่อจะทิ้ง
แม้ฮาร์ดดิสก์เสีย ผมก็ไม่จำเป็นต้องถอดมันออกมาจริง ๆ เพื่อให้แน่ใจว่าข้อมูลหายไปแล้ว อุปกรณ์ของผมมักอยู่ในโหมด sleep เวลาอยู่นอกบ้าน ดังนั้นถ้ามีใครจะทำการโจมตี cold boot ก็ทำได้อยู่ดี
อย่างที่กล่าวไว้ หากคีย์ถอดรหัสถูกส่งให้ระบบโดยอัตโนมัติ คีย์นั้นก็อยู่ใน RAM และพร้อมให้ผู้โจมตีส่งออกแล้วนำกลับมาใช้กับดิสก์ที่เข้ารหัสได้ การโจมตี cold boot[1] เป็นเวกเตอร์การโจมตีที่ควรอ่านเพิ่มเติมเพื่อประเมินว่าเข้ากับโมเดลภัยคุกคามของคุณหรือไม่
[1] https://en.wikipedia.org/wiki/Cold_boot_attack
หากคีย์วิ่งผ่านบัสที่ใช้ร่วมกัน ก็แปลว่าส่วนประกอบทุกอย่างในระบบสามารถดักคีย์ได้ง่าย ๆ เหมือน logic analyzer ตัวนี้ใช่ไหม? ฟังดูเหมือนฝันร้ายด้านความปลอดภัยของซัพพลายเชน
ถ้าใครก็ตามสามารถบูตแล็ปท็อปแล้วเข้าถึงฮาร์ดไดรฟ์ที่ถูกถอดรหัสแล้วได้ การ sniff คีย์ก่อนมันต่างกันตรงไหน? ถ้าบูตแล็ปท็อปได้ ยังไงก็เข้าถึงผลลัพธ์สุดท้ายได้อยู่แล้ว
ถ้าต้องการให้ BitLocker ปกป้องในกรณีที่มีคนขโมยแล็ปท็อปไป ยังไงก็ต้องใช้ รหัสผ่าน และต้องปิด sleep mode ที่ไม่ใช่ hibernate
แล้วฮาร์ดแวร์ “ที่เชื่อถือได้” ของ TPM กำลังทำอะไรอยู่จริง ๆ กันแน่? boot measurement ก็ปลอมได้ด้วยหรือเปล่า? แถมเรื่องนี้ยังโง่อย่างน่าขัน ทำไม key material ถึงวิ่งเป็น plaintext อยู่บนบัส? ไม่มีแม้แต่โปรโตคอลแลกเปลี่ยนคีย์อะไรเลย
[1] ตรงนี้มีเรื่อง secure delete ด้วย ซึ่งเป็นกรณีที่อ่อนแอกว่านั้นอีก แต่ถ้า full-disk encryption มี EEPROM ที่ถอดออกจากซ็อกเก็ตแล้วทำลายทางกายภาพได้ ส่วนนั้นก็แก้ได้ผลพอ ๆ กัน
สงสัยว่าใช้ซอฟต์แวร์อะไรในการแปลงสัญญาณดิบให้เป็น 0 กับ 1 เมื่อก่อนมีโปรเจกต์คล้าย ๆ กัน คือการอ่านข้อมูลดิจิทัลจากเทปคาสเซ็ตยุค 80 ได้ไฟล์
.wavของเทปมาในสภาพค่อนข้างดี แต่ยังหาเครื่องมือหรือไลบรารีที่เหมาะสมสำหรับแปลงมันเป็น 0 กับ 1 ไม่ได้แน่นอนว่าความสนุกจริง ๆ น่าจะเริ่มหลังจากเริ่มถอดรหัส 0 กับ 1 แล้ว รู้แล้วว่าบิตถูกเข้ารหัสอย่างไร และมันคือ frequency-shift keying[0] สิ่งที่ไม่รู้คือควรใช้อะไรถอดรหัสสิ่งนี้ให้เป็นบิตสตรีมที่ผมเอาไปประมวลผลต่อได้
[0] https://en.wikipedia.org/wiki/Frequency-shift_keying
สามารถเปรียบเทียบเอาต์พุตของฟิลเตอร์คู่นี้เพื่อสร้างเอาต์พุตดิจิทัลได้ จะใช้ sparse sliding discrete Fourier transform ก็ได้ แต่การ interpolate ระหว่าง frequency bin จะยุ่งยากกว่า ขณะที่ Goertzel filter จัดการเรื่องนั้นให้แทน
ไม่รู้จักอัลกอริทึมหรือซอฟต์แวร์ตัวเดียวที่แปลงสัญญาณดิบอะไรก็ได้ให้เป็นไบต์ ต้องหาก่อนว่าสัญญาณใช้ modulation แบบไหน แล้วหา decoder ที่ตรงกันหรือเขียนเอง โดยทั่วไปจะมีการกรองและอัลกอริทึมคณิตศาสตร์หลายอย่าง แต่โปรแกรมสำหรับ decoding ขั้นพื้นฐานมักค่อนข้างสั้นและเรียบง่าย
เป็นทักษะที่เรียนไว้แล้วเจ๋งทีเดียว เพราะเทคนิคเดียวกันใช้ได้สารพัดที่ เช่น พอได้เรียน DSP นิดหน่อย ก็ทำอะไรได้มากขึ้นในงานสื่อสารไร้สาย ดนตรีและ sound design ภาพ และการประมวลผลวิดีโอ
หรือผู้เขียนพูดถึง DSlogic ก็อาจมี fork ของโปรแกรมเหล่านั้นที่ผู้ผลิต logic analyzer ตัวนั้นทำไว้
สัญญาณดิบมักถูกป้อนเข้า Schmitt trigger เพื่อทำ hysteresis สำหรับ edge ที่เสถียร วิธีนี้จะชดเชย polarity ของสัญญาณเทปและความคลาดเคลื่อนของมอเตอร์
ตรงที่ว่า “ถ้าใช้ TPM แยกทางกายภาพ ความปลอดภัยจะลดลงจริง ๆ” นี่ช่างย้อนแย้ง
แล็ปท็อปของผมในปี 2015 ไม่มี TPM แบบกายภาพ พอจะเปิดใช้ก็ขึ้นว่า “อนุญาต BitLocker โดยไม่มี TPM ที่เข้ากันได้ (ต้องใช้รหัสผ่านหรือ startup key บน USB flash drive)” เลยคิดว่ามันปลอดภัยน้อยกว่า โชคดีที่ยังไงก็ไม่ได้ใช้ BitLocker
ตลกมากที่ ทริกแบบเด็กประถม อย่างการเปลี่ยนชื่อ Command Prompt ให้เป็น accessibility handler แบบสมัย Windows Vista ยังใช้ได้เหมือนเดิม
ถ้าอะไรสักอย่างรันด้วยสิทธิ์ผู้ดูแลระบบโดยไม่ต้องล็อกอิน ก็ทำให้นึกว่า Windows จะยืนยันตัวตนเสียก่อน แต่ Windows ดูเหมือนเป็นละครด้านความปลอดภัย 75% และอีก 25% ที่เหลือก็เป็นละครอีกแบบหนึ่ง
มีการอธิบายเทคนิคเดียวกันไว้ในปี 2021:
https://dolosgroup.io/blog/2021/7/9/from-stolen-laptop-to-in...