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

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

گام یک: از کانالی دانلود کنید که پروژه نام می‌برد

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

فایلی که به نام پروژه است چیزی را ثابت نمی‌کند. تغییر نام یک نصب‌کننده عملیاتی یک‌ثانیه‌ای است و این نام است که نتیجه جستجو اول نشان می‌دهد.

گام دو: امضا را در برابر هویت شناخته‌شده بررسی کنید

بررسی امضا به یک پرسش محدود خوب پاسخ می‌دهد. به شما می‌گوید که هویتی مشخص این فایل دودویی را امضا کرده و فایل از آن زمان تغییر نکرده است. به یک پرسش پاسخ می‌دهد و از پرسش دیگری سر باز می‌زند. نمی‌تواند بگوید آیا آن هویت همانی است که می‌خواستید به آن اعتماد کنید.

# macOS: who signed this app, and is the signature intact?
codesign -dv --verbose=4 /Applications/Tunnel.app
spctl -a -vvv -t install /Applications/Tunnel.app

# Windows: signature and publisher of the installer
Get-AuthenticodeSignature .\tunnel-setup.exe | Format-List Status, SignerCertificate

# Linux: detached signature from the project's release page
gpg --verify tunnel-1.4.2.tar.gz.asc tunnel-1.4.2.tar.gz

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

گام سه: هش را با منبعی مستقل مقایسه کنید

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

# Linux and macOS
shasum -a 256 tunnel-1.4.2.dmg

# compare against the value published on the project's own release page
# not against a value copied from the same mirror

وقتی پروژه‌ای جمع‌های کنترلی امضاشده یا مانیفست انتشار امضاشده منتشر می‌کند، امضا را روی فهرست بررسی کنید نه روی هر فایل به‌تنهایی. این‌گونه یک مرجع مورد اعتماد کل انتشار را پوشش می‌دهد.

پس از نصب: مسیر به‌روزرسانی را نگه دارید

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

ثبت کنید که کلاینت چگونه باید به‌روزرسانی شود و آیا یک سیستم مدیریت این گام را بر عهده دارد. اگر پاسخ دانلود دستی از یک انجمن است، پرسش زنجیره تأمین هرگز واقعاً بسته نشده است.

دو خاستگاه، نه یکی

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

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

مقالات مرتبط