"ابر" محرمانه. ما به دنبال جایگزینی برای راه حل های باز هستیم

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

این نتیجه ترس از تجارت آنها و افزایش کنترل توسط دولت است. قوانین و مقررات می تواند توسط مقامات بازرسی بسیار گسترده تفسیر شود. به عنوان مثال اصلاحات قانون مالیات، حذف محدودیت ها برای تخلفات مالیاتی، تخریب واقعی رازداری بانکی و حسابرسی.

در نتیجه، صاحب کسب و کار شروع به جستجوی راه حل هایی برای ذخیره مطمئن اطلاعات و انتقال امن اسناد کرد. مجازی "ایمن".

ما روی مشکل با یک مدیر سیستم تمام وقت کار کردیم: به تجزیه و تحلیل عمیق پلتفرم های موجود نیاز داشتیم.

  • این سرویس به معنای کلاسیک کلمه نباید مبتنی بر ابر باشد. بدون ذخیره سازی در تاسیسات یک سازمان شخص ثالث. فقط سرور شما؛
  • رمزگذاری قوی داده های منتقل شده و ذخیره شده مورد نیاز است.
  • توانایی حذف فوری محتوا از هر دستگاهی با کلیک یک دکمه مورد نیاز است.
  • راه حل در خارج از کشور توسعه داده شد.

من پیشنهاد کردم که نکته چهارم حذف شود، زیرا ... برنامه های روسی دارای گواهینامه های رسمی هستند. کارگردان مستقیماً گفت با این گونه گواهی ها چه باید کرد.

گزینه ها را انتخاب کنید

من سه راه حل را انتخاب کردم (هر چه تعداد انتخاب ها بیشتر باشد، شک و تردید بیشتر است):

مالک شرکت درک کمی از پیچیدگی های فنی دارد، بنابراین گزارش را در قالب لیست هایی از مزایا و معایب هر گزینه قالب بندی کردم.

نتایج تجزیه و تحلیل

همگام سازی

مزایا:

  • متن باز؛
  • فعالیت توسعه دهنده اصلی؛
  • این پروژه مدت زیادی است که وجود داشته است.
  • رایگان.

منفی:

  • هیچ مشتری برای پوسته iOS وجود ندارد.
  • سرورهای Slow Turn (رایگان هستند، بنابراین سرعت آنها کاهش می یابد). برای کسانی که
    آگاه نیست، Turn زمانی استفاده می شود که اتصال مستقیم غیرممکن باشد.
  • راه اندازی رابط پیچیده (نیازمند سالها تجربه برنامه نویسی)؛
  • عدم پشتیبانی سریع تجاری

رزلیو

مزایا: پشتیبانی از همه دستگاه ها و سرورهای Turn سریع.

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

Pvtbox

مزایا:

  • پشتیبانی از تمام دستگاه ها؛
  • سرورهای Fast Turn;
  • امکان دانلود فایل بدون نصب برنامه؛
  • خدمات پشتیبانی کافی، از جمله با تلفن.

منفی:

  • پروژه جوان (چند بررسی و نقدهای خوب)؛
  • رابط کاربری سایت بسیار "تکنیکی" است و همیشه واضح نیست.
  • هیچ مستندات دقیق و کاملی وجود ندارد؛ بسیاری از مسائل نیاز به پشتیبانی دارند.

مشتری چه چیزی را انتخاب کرد؟

اولین سوال او این است: توسعه رایگان چیزی چه فایده ای دارد؟ همگام سازی بلافاصله کنار گذاشته شد. استدلال ها کار نکرد.

چند روز بعد، مشتری به دلیل عدم پشتیبانی به طور قاطع Resilio Sync را رد کرد، زیرا ... در شرایط اضطراری مشخص نیست کجا باید رفت. به علاوه بی اعتمادی به ثبت آمریکایی شرکت.

برای تجزیه و تحلیل بیشتر، گاوصندوق الکترونیکی Pvtbox باقی مانده است. ما یک ممیزی فنی کامل از این پلتفرم را با تمرکز بر امکان رهگیری، رمزگشایی داده ها و ورود غیرمجاز به ذخیره سازی اطلاعات انجام دادیم.

فرآیند حسابرسی

ما اتصالات را در شروع برنامه، در حین عملیات و در حالت آرام تجزیه و تحلیل کردیم. ترافیک طبق استانداردهای مدرن در ابتدا رمزگذاری شده است. بیایید سعی کنیم یک حمله MITM را انجام دهیم و گواهی را در حال پرواز با استفاده از آن جایگزین کنیم لینوکس (Xubuntu Linux 18.04)، Wireshark, میت پروکسی. برای انجام این کار، ما یک واسطه بین برنامه Pvtbox و سرور pvtbox.net معرفی می کنیم (تبادل اطلاعات با سرور pvtbox.net از طریق اتصال https وجود دارد).

ما برنامه را راه اندازی می کنیم تا مطمئن شویم که همگام سازی برنامه و فایل در آن کار می کند. در لینوکس، اگر برنامه را از ترمینال اجرا کنید، فوراً می توانید ورود به سیستم را مشاهده کنید.
"ابر" محرمانه. ما به دنبال جایگزینی برای راه حل های باز هستیم

برنامه را خاموش کنید و آدرس میزبان pvtbox.net را در فایل جایگزین کنید / غیره / میزبان با امتیازات superuser ما آدرس را با آدرس سرور پراکسی خود جایگزین می کنیم.
"ابر" محرمانه. ما به دنبال جایگزینی برای راه حل های باز هستیم

اکنون بیایید سرور پراکسی خود را برای حمله MITM به رایانه ای با آدرس 192.168.1.64 در شبکه محلی خود آماده کنیم. برای این کار بسته mitmproxy نسخه 4.0.4 را نصب کنید.

سرور پراکسی را در پورت 443 راه اندازی می کنیم:
$ sudo mitmproxy -p 443

ما برنامه Pvtbox را در اولین کامپیوتر راه اندازی می کنیم، به خروجی mitmproxy و گزارش برنامه ها نگاه می کنیم.
"ابر" محرمانه. ما به دنبال جایگزینی برای راه حل های باز هستیم

میت پروکسی گزارش می دهد که مشتری به گواهی جعلی از سرور پروکسی اعتماد ندارد. در لاگ های برنامه نیز می بینیم که گواهی سرور پروکسی تأیید را نمی گذراند و برنامه از کار کردن خودداری می کند.

نصب گواهی سرور پروکسی mitmproxy به رایانه ای با برنامه Pvtbox تا گواهی را "معتمد" کند. بسته ca-certificates را روی رایانه خود نصب کنید. سپس گواهی mitmproxy-ca-cert.pem را از دایرکتوری .mitmproxy سرور پراکسی در رایانه با برنامه Pvtbox در پوشه /usr/local/share/ca-certificates کپی کنید.

ما دستورات را اجرا می کنیم:
$ sudo openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
$sudo update-ca-certificates
"ابر" محرمانه. ما به دنبال جایگزینی برای راه حل های باز هستیم

برنامه Pvtbox را اجرا کنید. گواهی دوباره تأیید نشد و برنامه از کار کردن خودداری می کند. برنامه احتمالاً از مکانیزم امنیتی استفاده می کند سنجاق گواهی.

حمله مشابهی به میزبان انجام شد signalserver.pvtbox.net، و همچنین خود ارتباط peer-2-peer بین گره ها. توسعه دهنده نشان می دهد که برنامه برای ایجاد اتصالات نظیر 2 از پروتکل webrtc باز استفاده می کند که از رمزگذاری پروتکل انتها به انتها استفاده می کند. DTLSv1.2.

کلیدها برای هر راه اندازی اتصال تولید می شوند و از طریق یک کانال رمزگذاری شده منتقل می شوند signalserver.pvtbox.net.

از نظر تئوری، می‌توان پیام‌های پیشنهادی و پاسخ به وب‌rtc را رهگیری کرد، کلیدهای رمزگذاری را جایگزین کرد و قادر بود همه پیام‌هایی را که از طریق webrtc می‌رسند رمزگشایی کرد. اما امکان انجام یک حمله mitm در signalserver.pvtbox.net وجود نداشت، بنابراین هیچ راهی برای رهگیری و جایگزینی پیام های ارسال شده از طریق signalserver.pvtbox.net وجود ندارد.

بر این اساس، انجام این حمله بر روی یک اتصال همتا 2 امکان پذیر نیست.

یک فایل با گواهینامه های ارائه شده با برنامه نیز کشف شد. فایل در /opt/pvtbox/certifi/cacert.pem قرار دارد. این فایل با فایلی جایگزین شده است که حاوی یک گواهی قابل اعتماد از پروکسی mitmproxy ما است. نتیجه تغییر نکرد - برنامه از اتصال به سیستم خودداری کرد، همان خطا در گزارش مشاهده شد،
که گواهی تایید نمی شود.

نتایج حسابرسی

من نتوانستم ترافیک را رهگیری یا جعل کنم. نام فایل ها و حتی بیشتر از آن محتویات آنها به صورت رمزگذاری شده منتقل می شود؛ از رمزگذاری سرتاسر استفاده می شود.این برنامه تعدادی مکانیزم امنیتی را پیاده سازی می کند که از استراق سمع و نفوذ جلوگیری می کند.

در نتیجه، شرکت دو سرور اختصاصی (به صورت فیزیکی در مکان های مختلف) برای دسترسی دائمی به اطلاعات خریداری کرد. سرور اول برای دریافت، پردازش و ذخیره اطلاعات استفاده می شود، سرور دوم برای پشتیبان گیری استفاده می شود.

پایانه کاری کارگردان و یک تلفن همراه در iOS به ابر منفرد حاصل متصل شد. سایر کارمندان توسط مدیر سیستم تمام وقت و پشتیبانی فنی Pvtbox متصل شدند.

در طول مدت گذشته هیچ شکایتی از طرف دوست وجود نداشته است. امیدوارم بررسی من به خوانندگان Habr در شرایط مشابه کمک کند.

منبع: www.habr.com

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