مشکلات سیستم های کنترل دسترسی مستقل - جایی که انتظار نمی رفت

روز همگی بخیر من با پیش‌زمینه‌ای شروع می‌کنم که چه چیزی مرا به انجام این تحقیق وادار کرد، اما ابتدا به شما هشدار می‌دهم: همه اقدامات عملی با موافقت ساختارهای حاکم انجام شد. هرگونه تلاش برای استفاده از این مطالب برای ورود به یک منطقه ممنوعه بدون حق حضور در آنجا جرم است.

همه چیز از آنجا شروع شد که هنگام تمیز کردن میز، به طور تصادفی کلید ورودی RFID را روی خواننده ACR122 NFC قرار دادم - تعجب من را تصور کنید وقتی ویندوز صدای تشخیص دستگاه جدید را پخش کرد و LED سبز شد. تا این لحظه، من معتقد بودم که این کلیدها منحصراً در استاندارد Proximity کار می کنند.
مشکلات سیستم های کنترل دسترسی مستقل - جایی که انتظار نمی رفت
اما از آنجایی که خواننده آن را دید، به این معنی است که کلید با یکی از پروتکل‌های استاندارد ISO 14443 (معروف به Near Field Communication، 13,56 مگاهرتز) مطابقت دارد. تمیز کردن بلافاصله فراموش شد، زیرا فرصتی را دیدم که به طور کامل از مجموعه کلیدها خلاص شوم و کلید ورودی را در تلفن خود نگه دارم (آپارتمان مدتهاست که به یک قفل الکترونیکی مجهز شده است). پس از شروع مطالعه، متوجه شدم که در زیر پلاستیک یک برچسب NFC Mifare 1k پنهان شده است - همان مدلی که در نشان های سازمانی، کارت های حمل و نقل و غیره وجود دارد. تلاش برای ورود به محتویات سکتورها در ابتدا موفقیتی به همراه نداشت و هنگامی که در نهایت کلید شکسته شد، مشخص شد که فقط از بخش سوم استفاده شده است و UID خود تراشه در آن کپی شده است. خیلی ساده به نظر می رسید، و معلوم شد که همینطور است، و اگر همه چیز دقیقاً طبق برنامه پیش برود، مقاله ای وجود نخواهد داشت. بنابراین من کلیدهای کلید را دریافت کردم و در صورت نیاز به کپی کردن کلید به یکی دیگر از همین نوع مشکلی وجود ندارد. اما وظیفه انتقال کلید به یک دستگاه تلفن همراه بود، کاری که من انجام دادم. اینجاست که سرگرمی شروع شد - ما یک تلفن داریم - آیفون SE با تاسیس iOS 13.4.5 Beta build 17F5044d و برخی از اجزای سفارشی برای عملکرد رایگان NFC - به دلایل عینی به جزئیات در این مورد نمی پردازم. در صورت تمایل، هر آنچه در زیر گفته می شود برای سیستم اندروید نیز صدق می کند، اما با کمی ساده سازی.

لیست کارهایی که باید حل شود:

  • به محتویات کلید دسترسی پیدا کنید.
  • پیاده سازی قابلیت شبیه سازی یک کلید توسط دستگاه.

اگر با اولی همه چیز نسبتاً ساده بود ، در مورد دوم مشکلاتی وجود داشت. نسخه اول شبیه ساز کار نکرد. مشکل خیلی سریع کشف شد - در دستگاه های تلفن همراه (اعم از iOS یا Android) در حالت شبیه سازی، UID پویا است و صرف نظر از اینکه چه چیزی به تصویر متصل شده است، شناور می شود. نسخه دوم (اجرا با حقوق ابرکاربر) شماره سریال انتخاب شده را به شدت ثابت کرد - در باز شد. با این حال، من می خواستم همه چیز را به خوبی انجام دهم و در نهایت یک نسخه کامل از شبیه ساز را آماده کردم که می توانست زباله های Mifare را باز کند و آنها را شبیه سازی کند. با تسلیم شدن به یک تکانه ناگهانی، کلیدهای بخش را به کلیدهای دلخواه تغییر دادم و سعی کردم در را باز کنم. و او… باز شد! بعد از مدتی متوجه شدم که در حال باز شدن هستند هر درهایی با این قفل، حتی آنهایی که کلید اصلی به آنها نمی خورد. در این راستا، من یک لیست جدید از وظایف برای تکمیل ایجاد کردم:

  • دریابید که چه نوع کنترل کننده ای مسئول کار با کلیدها است
  • درک کنید که آیا یک اتصال شبکه و یک پایگاه مشترک وجود دارد یا خیر
  • دریابید که چرا یک کلید تقریباً ناخوانا جهانی می شود

پس از صحبت با یک مهندس در شرکت مدیریت، متوجه شدم که کنترلرهای ساده Iron Logic z5r بدون اتصال به شبکه خارجی استفاده می شوند.

خواننده CP-Z2 MF و کنترلر IronLogic z5r
مجموعه ای از تجهیزات برای آزمایش ها به من داده شد:

مشکلات سیستم های کنترل دسترسی مستقل - جایی که انتظار نمی رفت

همانطور که از اینجا مشخص است، سیستم کاملاً مستقل و بسیار ابتدایی است. ابتدا فکر کردم که کنترلر در حالت یادگیری است - معنی این است که کلید را می خواند، در حافظه ذخیره می کند و در را باز می کند - این حالت زمانی استفاده می شود که لازم باشد همه کلیدها ضبط شوند، مثلاً هنگام تعویض کلید قفل در یک ساختمان آپارتمان اما این تئوری تأیید نشد - این حالت در نرم افزار خاموش است، جامپر در وضعیت کار قرار دارد - و با این حال، وقتی دستگاه را بالا می آوریم، موارد زیر را مشاهده می کنیم:

تصویری از فرآیند شبیه سازی در دستگاه
مشکلات سیستم های کنترل دسترسی مستقل - جایی که انتظار نمی رفت
... و کنترلر سیگنال می دهد که دسترسی داده شده است.

این بدان معنی است که مشکل در نرم افزار کنترل کننده یا خواننده است. بیایید خواننده را بررسی کنیم - در حالت iButton کار می کند، بنابراین بیایید برد امنیتی Bolid را وصل کنیم - می توانیم داده های خروجی را از خواننده مشاهده کنیم.

برد بعداً از طریق RS232 متصل خواهد شد
مشکلات سیستم های کنترل دسترسی مستقل - جایی که انتظار نمی رفت

با استفاده از روش تست های چندگانه، متوجه می شویم که خواننده در صورت خرابی مجوز، کد مشابهی را با 1219191919 پخش می کند.

وضعیت در حال روشن شدن است، اما در حال حاضر برای من مشخص نیست که چرا کنترلر به این کد پاسخ مثبت می دهد. این فرض وجود دارد که وقتی پایگاه داده پر شد - تصادفی یا عمداً کارتی با کلیدهای بخش دیگر ارائه شد - خواننده این کد را ارسال کرد و کنترل کننده آن را ذخیره کرد. متأسفانه، من یک برنامه نویس اختصاصی از IronLogic ندارم که به پایگاه داده کلید کنترلر نگاه کند، اما امیدوارم توانسته باشم توجه را به این واقعیت جلب کنم که مشکل وجود دارد. نمایش ویدیویی از کار با این آسیب‌پذیری در دسترس است по ссылке.

PS نظریه جمع تصادفی با این واقعیت مخالف است که در یک مرکز تجاری در کراسنویارسک من نیز با استفاده از همان روش موفق شدم در را باز کنم.

منبع: www.habr.com

اضافه کردن نظر