Kaynak kodu yayımlandı, lisans temiz, ve bağlantı hâlâ uçtan uca doğrulanamıyor. Bu boşluk olağan ve skandal değil. Kodu yayımlamak bir bileşeni davet edilmemiş kişilerce incelenebilir kılar, ve bu gerçek ve alışılmadık bir özelliktir. Bundan, kurduğunuz ikili dosyanın o koddan geldiği sonucu çıkmaz, ya da sağlayıcının diğer tarafta çalıştırdığı herhangi bir şeyin incelendiği sonucu.

Bileşeni üründen ayırın

Dört şey açık kaynak etiketini taşıyabilir ve nadiren hepsi açıktır. İnsanların kastettiği istemci uygulamasıdır. Altındaki protokol uygulaması başka bir yapıttır, bazen bir kütüphane bazen ağaç içindeki koddur. Sunucu yazılımı üçüncüsüdür, sağlayıcının kendi altyapısı, hesap portalı ve destek araçları dördüncüsüdür. Her biri bağımsız olarak açık veya kapalı olabilir.

Bu yüzden "uygulamamız açık kaynak" gibi ifadeler ilk maddeyi anlatır ve gerisini yanıtsız bırakır; bu dürüst olmamak değil, daha çok kategori kaymasıdır. Faydalı soru, hangi deponun, hangi etikette, güvendiğiniz bileşene karşılık geldiğidir.

Bu ayrım, aynı açık istemcilere sahip iki ürünün neden çok farklı güvenceler sunabildiğini de açıklar. İstemci kontrol edebildiğiniz kısımdır; işletmecinin davranışı başka yollarla değerlendirmeniz gereken kısımdır.

Kurulu derlemeyi yayımlanan etiketle eşleştirin

Depo bir niyet kaydıdır; diskinizdeki ikili dosya çalışan şeydir. Bu boşluğu kapatmak mekanik bir alıştırmadır ve neyin kurulu olduğunu tam olarak saptamakla başlar, indirme sayfasının reklamını yaptığı şeyle değil.

ComponentWhat inspection can showWhat it leaves untouched
Client sourceHow profiles, packets and optional telemetry are handledWhether the shipped binary matches that source
Build outputWhether a declared build reproduces a matching artefactWhether the source is correct or the toolchain is clean
Server softwareWhat the implementation is capable of loggingWhat the operator actually configures and retains
Account and support systemsAlmost nothing, unless they are separately publishedEverything about how those systems treat your data

Paket üst verisi size sürümü ve kökeni söyler, bu da eski veya değiştirilmiş paket gibi basit durumu dışlar. Ancak paketin nasıl derlendiğini söylemez, ve tam olarak bu soruyu yanıtlamak için yeniden üretilebilir derlemeler vardır. Yeniden üretilebilir derlemeler bağımsız bir tarafın aynı kaynaktan yeniden derlemesini ve çıktıyı bayt bayt karşılaştırmasını sağlar, böylece uyuşmazlık şüphe değil kanıt olur.

Kusursuz bir eşleşme bile insanların umduğundan azını kanıtlar. Yapıtın kaynağa ve derleme tarifine uyduğunu gösterir, kaynağın kusursuz olduğunu ya da kullanılan araç zincirinin güvenilir olduğunu değil. İkisini de bilmek değerlidir, ama bunlar farklı iddialardır.

dpkg -S /usr/bin/wg
apt-cache policy wireguard-tools
sha256sum /usr/bin/wg

Belirti genellikle nerede başlar

Bu okumaya yol açan şikâyet nadiren "kod kapalı" olur. Genellikle somut bir gözlemdir: beklenmedik bir yere bağlanan istemci, sürüm notlarından farklı bir sürüm ya da tünelin ihtiyaç duyması gerekenden fazlasını isteyen bir destek süreci. Bu noktaların her biri farklı bir bileşene işaret eder.

İstemciden gelen beklenmedik ağ trafiği istemci kaynak kodu sorusudur ve bağlantıyı açan kod yolunu okuyarak yanıtlanabilir. Sürüm uyuşmazlığı paketleme sorusudur. Kimlik belgeleri isteyen destek süreci hesap sistemi sorusudur ve hiçbir istemci denetimi bunu çözmez.

Bileşeni adlandırmak belirsiz güvensizliği somut bir kontrole dönüştürür. Somut bir kontrol yanıtlanabilir, tartışılabilir veya kapatılabilir. Alternatif, sonraki adımı olmayan kalıcı bir şüphedir.

İncelemenin ulaşamadığı şeyler ve bunun yerine ne yapılmalı

Sağlayıcının sunucularındaki saklama istemcinin erişiminin dışındadır. Faturalama portalının, dolandırıcılık denetimi sağlayıcısının veya ekleri saklayan destek masasının davranışı da öyle. "Hizmeti denetledik" noktasına kadar uzatılan bir istemci incelemesi, kanıtın desteklemediği bir iddiada bulunur.

İşletmecinin saklama ve talepler hakkında yayımladıklarını okuyun, tarihi not edin ve bunu bir ölçüm değil, ilgili tarafın beyanı olarak ele alın. Bu daha zayıf bir kanıt biçimidir ve farkı açıkça söylemek, yeniden anlatırken onu yükseltmekten daha faydalıdır.

Sonra elinizdekini birkaç girdiden biri olarak kullanın: kurulu sürümün kimliği, yazılımın bakımının yapılıp yapılmadığı, istemcinin nasıl yapılandırıldığı ve işletmecinin kendi sistemleri hakkında ne söylediği. Açık kod bu değerlendirmeyi bir noktada güçlendirir. Gerisinin yerini almaz.

Bir denetim iddiası her zaman bileşenlerini ve sürümlerini adlandırmalıdır. Bir rapor hangi depoyu ve hangi derlemeyi incelediğini söyleyemiyorsa, ürünü değil niyeti anlatıyordur.

İlgili makaleler