ปัญหาของระบบควบคุมการเข้าออกอัตโนมัติ - ในกรณีที่ไม่คาดคิด

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

ทุกอย่างเริ่มต้นขึ้นในขณะที่ทำความสะอาดโต๊ะ ฉันเผลอวางกุญแจเข้า RFID บนเครื่องอ่าน ACR122 NFC ลองจินตนาการถึงความประหลาดใจของฉันเมื่อ Windows เล่นเสียงการตรวจจับอุปกรณ์ใหม่และไฟ LED เปลี่ยนเป็นสีเขียว จนถึงขณะนี้ ฉันเชื่อว่าคีย์เหล่านี้ใช้งานได้เฉพาะในมาตรฐานความใกล้เคียงเท่านั้น
ปัญหาของระบบควบคุมการเข้าออกอัตโนมัติ - ในกรณีที่ไม่คาดคิด
แต่เนื่องจากผู้อ่านเห็น นั่นหมายความว่าคีย์นั้นตรงตามหนึ่งในโปรโตคอลที่อยู่ด้านบนของมาตรฐาน ISO 14443 (หรือที่รู้จักในชื่อ Near Field Communication, 13,56 MHz) การทำความสะอาดถูกลืมทันที เนื่องจากฉันเห็นโอกาสที่จะกำจัดชุดกุญแจทั้งหมดและเก็บกุญแจทางเข้าไว้ในโทรศัพท์ของฉัน (อพาร์ทเมนท์มีระบบล็อคแบบอิเล็กทรอนิกส์มานานแล้ว) เมื่อเริ่มศึกษา ฉันพบว่าแท็ก Mifare 1k NFC ที่ซ่อนอยู่ใต้พลาสติกนั้นเป็นรุ่นเดียวกับป้ายองค์กร บัตรขนส่ง ฯลฯ ความพยายามที่จะเข้าไปในเนื้อหาของเซกเตอร์นั้นไม่ได้นำมาซึ่งความสำเร็จในตอนแรกและเมื่อกุญแจถูกถอดรหัสในที่สุดปรากฎว่ามีการใช้เพียงเซกเตอร์ที่ 3 เท่านั้นและ UID ของชิปเองก็ถูกทำซ้ำในนั้น มันดูเรียบง่ายเกินไป แต่กลับกลายเป็นว่าเป็นเช่นนั้น และจะไม่มีบทความใดๆ เลยหากทุกอย่างเป็นไปตามแผนที่วางไว้ ดังนั้นฉันจึงได้รับเครื่องในของกุญแจ และก็ไม่มีปัญหาหากคุณต้องการคัดลอกกุญแจไปยังอีกอันที่เป็นประเภทเดียวกัน แต่งานคือโอนกุญแจไปยังอุปกรณ์เคลื่อนที่ ซึ่งเป็นสิ่งที่ฉันทำ นี่คือจุดเริ่มต้นของความสนุก - เรามีโทรศัพท์ - iPhone SE พร้อมติดตั้ง iOS 13.4.5 เบต้ารุ่น 17F5044d และส่วนประกอบที่กำหนดเองบางอย่างสำหรับการใช้งาน NFC ฟรี - ฉันจะไม่เน้นรายละเอียดนี้เนื่องจากเหตุผลบางประการ หากต้องการ ทุกอย่างที่กล่าวด้านล่างนี้ยังใช้กับระบบ Android อีกด้วย แต่มีความเรียบง่ายบางประการ

รายการงานที่ต้องแก้ไข:

  • เข้าถึงเนื้อหาของคีย์
  • ใช้ความสามารถในการจำลองคีย์โดยอุปกรณ์

หากทุกอย่างค่อนข้างง่ายในครั้งแรก แต่ประการที่สองก็มีปัญหา โปรแกรมจำลองเวอร์ชันแรกใช้งานไม่ได้ ปัญหาถูกค้นพบค่อนข้างเร็ว - บนอุปกรณ์มือถือ (ทั้ง iOS หรือ Android) ในโหมดจำลอง UID จะเป็นไดนามิก และไม่ว่าจะเดินสายอะไรเข้าไปในรูปภาพ UID ก็จะลอยอยู่ เวอร์ชันที่สอง (รันด้วยสิทธิ์ superuser) แก้ไขหมายเลขซีเรียลในเวอร์ชันที่เลือกอย่างเข้มงวด - ประตูเปิดออก อย่างไรก็ตาม ฉันต้องการทำทุกอย่างให้สมบูรณ์แบบ และท้ายที่สุดก็รวบรวมเวอร์ชันสมบูรณ์ของโปรแกรมจำลองที่สามารถเปิด Mifare dumps และจำลองพวกมันได้ ด้วยแรงกระตุ้นอย่างกะทันหัน ฉันจึงเปลี่ยนคีย์เซกเตอร์เป็นคีย์ที่กำหนดเองและพยายามเปิดประตู และเธอ… เปิดแล้ว! สักพักฉันก็รู้ว่าพวกเขากำลังเปิดอยู่ ใด ประตูที่มีล็อคนี้ แม้แต่ประตูที่ใส่กุญแจเดิมไม่ได้ก็ตาม ในเรื่องนี้ ฉันได้สร้างรายการงานใหม่ที่ต้องทำ:

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

หลังจากพูดคุยกับวิศวกรที่บริษัทจัดการ ฉันได้เรียนรู้ว่าตัวควบคุม Iron Logic z5r แบบธรรมดานั้นใช้งานโดยไม่ต้องเชื่อมต่อกับเครือข่ายภายนอก

เครื่องอ่าน CP-Z2 MF และคอนโทรลเลอร์ IronLogic z5r
ฉันได้รับชุดอุปกรณ์สำหรับการทดลอง:

ปัญหาของระบบควบคุมการเข้าออกอัตโนมัติ - ในกรณีที่ไม่คาดคิด

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

ภาพหน้าจอของกระบวนการจำลองบนอุปกรณ์
ปัญหาของระบบควบคุมการเข้าออกอัตโนมัติ - ในกรณีที่ไม่คาดคิด
... และผู้ควบคุมส่งสัญญาณว่าได้รับสิทธิ์การเข้าถึงแล้ว

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

หลังจากนั้นบอร์ดจะเชื่อมต่อผ่าน RS232
ปัญหาของระบบควบคุมการเข้าออกอัตโนมัติ - ในกรณีที่ไม่คาดคิด

เมื่อใช้วิธีการทดสอบหลายครั้ง เราพบว่าผู้อ่านออกอากาศรหัสเดียวกันในกรณีที่การอนุญาตล้มเหลว: 1219191919

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

ป.ล. ทฤษฎีการบวกแบบสุ่มตรงกันข้ามกับความจริงที่ว่าในศูนย์ธุรกิจแห่งหนึ่งในครัสโนยาสค์ฉันสามารถเปิดประตูได้ด้วยวิธีเดียวกัน

ที่มา: will.com

เพิ่มความคิดเห็น