המנהרה עבדה, הממשק עלה, והחיבור נשאר יציב במשך שבוע. שום דבר מזה לא אומר לכם מי בנה את המתקין. לקוח 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

קראו את הזהות, לא את מילת המצב. מפתח לא קשור עם תעודה תקפה מייצר חתימה תקפה. מערכת הפעלה שמדווחת על מפרסם מוכר רק אמרה לכם שמישהו שילם על תעודה.

שלב שלישי: השוו את ה-hash למקור עצמאי

סכום בדיקה מוכיח התאמה לערך ייחוס. אם ערך הייחוס הגיע לצד ההורדה, שניהם יכולים להיות שגויים יחד וההשוואה עדיין עוברת. זה אופן הכשל ברוב המדריכים. ה-hash נמצא באותו עמוד שבו נמצא הקובץ שהוא מתאר.

# 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

כאשר פרויקט מפרסם סכומי בדיקה חתומים או מניפסט פרסום חתום, אמתו את החתימה על הרשימה ולא על כל קובץ בנפרד. כך הפניה מהימנה אחת מכסה את כל הפרסום.

לאחר ההתקנה: שמרו על נתיב העדכון

ערוץ נתמך ממשיך להיות חשוב לאחר סיום ההתקנה. גרסאות שנארזו מחדש יכולות לשאת מעדכן משלהן, והמעדכן הזה קובע מה ירוץ בחודש הבא. גרסה שלעולם אינה מתעדכנת אינה בטוחה יותר. היא פשוט ישנה יותר.

רשמו כיצד הלקוח אמור להתעדכן והאם מערכת ניהול אחראית לשלב הזה. אם התשובה היא הורדה ידנית מפורום, שאלת שרשרת האספקה מעולם לא נסגרה באמת.

שני מקורות, לא אחד

מפתח הלקוח ומנפיק הפרופיל הם צדדים נפרדים. לקוח רשמי שמייבא פרופיל ממפעיל לא קשור הוא סידור רגיל, והפרופיל ראוי לבדיקה משלו: מי הנפיק אותו, כיצד נמסר, והאם תעודת השרת תואמת לשם שאתם מצפים לו.

שמרו על שני המקורות ניתנים לזיהוי בהערות שלכם. ברגע שלקוח מוחלף או שמכשיר משוחזר מגיבוי, שתי השורות האלה הן שמונעות מגרסה לא מוכרת או פרופיל לא מוכר לחזור עם שאר הנתונים.

מאמרים קשורים