Açıq mənbəli VPN müştərisi: kod nəyi sübut edir və nəyi edə bilmir
Açıq repozitoriya mənbə kodu haqqında dəlildir, quraşdırdığınız buraxılış və ya arxasındakı serverlər haqqında deyil. Buraxılışı uyğunlaşdırın, sonra baxışı genişləndirin.
Mənbə dərc olunub, lisenziya təmizdir və bağlantı hələ də başdan-başa yoxlana bilmir. Bu boşluq adi haldır və qalmaqal deyil. Kodun dərc edilməsi bir komponenti dəvət olunmayan insanların yoxlamasına açır və bu, real və qeyri-adi bir xüsusiyyətdir. Bu o demək deyil ki, quraşdırdığınız binar həmin koddan gəlir, və ya provayderin digər tərəfdə idarə etdiyi hər hansı şey ümumiyyətlə nəzərdən keçirilib.
Komponenti məhsuldan ayırın
Dörd şey açıq mənbə etiketini daşıya bilər və onlar nadir hallarda hamısı açıq olur. Müştəri tətbiqi insanların nəzərdə tutduğu şeydir. Onun altındakı protokol tətbiqi fərqli artefaktdır, bəzən kitabxana, bəzən də ağacdaxili koddur. Server proqramı üçüncüdür, provayderin öz infrastrukturu, hesab portalı və dəstək alətləri isə dördüncüdür. Hər biri müstəqil şəkildə açıq və ya qapalı ola bilər.
Buna görə də "tətbiqimiz açıq mənbəlidir" kimi ifadələr birinci bəndi təsvir edir və qalanını cavabsız qoyur; bu, yalan deyil, daha çox kateqoriya sürüşməsidir. Faydalı sual budur: hansı repozitoriya, hansı teqdə, etibar etdiyiniz komponentə uyğun gəlir.
Bu fərq həm də izah edir ki, eyni açıq müştəriyə malik iki məhsul niyə çox fərqli zəmanətlər təklif edə bilər. Müştəri yoxlaya bildiyiniz hissədir; operatorun davranışı isə başqa üsullarla qiymətləndirməli olduğunuz hissədir.
Quraşdırılmış buraxılışı dərc olunmuş teqlə uyğunlaşdırın
Repozitoriya niyyətin qeydidir; diskinizdəki binar isə işləyən şeydir. Bu boşluğu bağlamaq mexaniki işdir və yükləmə səhifəsinin reklam etdiyini deyil, dəqiq nəyin quraşdırıldığını müəyyən etməklə başlayır.
| Component | What inspection can show | What it leaves untouched |
|---|---|---|
| Client source | How profiles, packets and optional telemetry are handled | Whether the shipped binary matches that source |
| Build output | Whether a declared build reproduces a matching artefact | Whether the source is correct or the toolchain is clean |
| Server software | What the implementation is capable of logging | What the operator actually configures and retains |
| Account and support systems | Almost nothing, unless they are separately published | Everything about how those systems treat your data |
Paket metadatası sizə versiyanı və mənşəyi bildirir, bu da köhnəlmiş və ya dəyişdirilmiş paket kimi bəsit halı istisna edir. Lakin o, paketin necə kompilyasiya edildiyini bildirmir və təkrarlana bilən qurmalar məhz bu suala cavab vermək üçün mövcuddur. Təkrarlana bilən qurmalar müstəqil tərəfə eyni mənbədən yenidən qurmağa və nəticəni bayt-bayt müqayisə etməyə imkan verir, beləliklə uyğunsuzluq şübhə deyil, dəlilə çevrilir.
Hətta mükəmməl uyğunluq insanların ümid etdiyindən azını sübut edir. Bu, artefaktın mənbəyə və qurma reseptinə uyğun olduğunu göstərir, mənbənin qüsursuz olduğunu və ya istifadə olunan alət zəncirinin etibarlı olduğunu yox. Hər ikisini bilmək dəyərlidir, amma bunlar fərqli iddialardır.
dpkg -S /usr/bin/wg
apt-cache policy wireguard-tools
sha256sum /usr/bin/wgSimptom adətən haradan başlayır
Bu oxunuşa səbəb olan şikayət nadir hallarda "kod qapalıdır" olur. Adətən konkret bir müşahidədir: gözlənilməz bir yerə zəng edən müştəri, buraxılış qeydlərindən fərqlənən versiya və ya tunelin ehtiyac duymalı olduğundan çoxunu istəyən dəstək prosesi. Bunların hər biri fərqli komponentə işarə edir.
Müştəridən gələn gözlənilməz şəbəkə trafiki müştəri mənbəyi məsələsidir və bağlantını açan kod yolunu oxumaqla cavablandırıla bilər. Versiya uyğunsuzluğu qablaşdırma məsələsidir. Şəxsiyyət sənədləri tələb edən dəstək prosesi hesab sistemi məsələsidir və heç bir müştəri auditi onu həll etməyəcək.
Komponenti adlandırmaq qeyri-müəyyən inamsızlığı konkret yoxlamaya çevirir. Konkret yoxlamaya cavab vermək, onunla mübahisə etmək və ya onu bağlamaq olar. Alternativ sonrakı addımı olmayan daimi şübhədir.
Baxışın çata bilmədiyi şeylər və bunun əvəzinə nə etməli
Provayderin serverlərində saxlanma müştərinin çıxışı xaricindədir. Faktura portalının, fırıldaqçılıq yoxlayan təchizatçının və ya qoşmaları saxlayan dəstək masasının davranışı da belədir. "Xidməti audit etdik" səviyyəsinə qədər uzadılan müştəri baxışı dəlilin dəstəkləmədiyi bir iddia irəli sürür.
Operatorun saxlanma və sorğular haqqında dərc etdiklərini oxuyun, tarixi qeyd edin və buna ölçmə kimi deyil, maraqlı tərəfin bəyanatı kimi yanaşın. Bu, dəlilin daha zəif formasıdır və fərqi açıq demək, onu təkrar danışıqda yüksəltməkdən daha faydalıdır.
Sonra əlinizdə olanı bir neçə girişdən biri kimi istifadə edin: quraşdırılmış buraxılışın kimliyi, proqram təminatının saxlanılıb-saxlanmaması, müştərinin necə konfiqurasiya edildiyi və operatorun öz sistemləri haqqında dedikləri. Açıq kod bu qiymətləndirməni bir nöqtədə gücləndirir. O, qalanını əvəz etmir.
Audit iddiası həmişə komponentlərini və versiyalarını adlandırmalıdır. Əgər hesabat hansı repozitoriyanı və hansı buraxılışı yoxladığını deyə bilmirsə, o, məhsulu deyil, niyyəti təsvir edir.