Kto może widzieć Twój ruch na wynajętym serwerze VPN?
Wynajem serwera VPN przenosi zaufanie na dostawcę hostingu. Przejdź drogę od klienta do wyjścia i zobacz, czego każdy obserwator może się dowiedzieć, a czego nie.
Wynajęcie serwera zmienia to, komu ufasz, i nie usuwa pytania. Tunel ukrywa Twój ruch przed sieciami, które przemierza, a potem przekazuje czysty tekst maszynie uruchamianej przez cudzy hiperwizor. Śledzenie pakietu od Twojego klienta na zewnątrz pokazuje, gdzie stoi każdy obserwator i co każdy z nich naprawdę może zobaczyć. Ten przegląd jest użyteczniejszy niż jakiekolwiek twierdzenie o anonimowości.
Zacznij od klienta i śledź pakiet na zewnątrz
Zanim cokolwiek opuści laptopa, klient opakowuje pakiet i adresuje go do publicznego punktu końcowego serwera. Twoja sieć lokalna i Twój dostawca widzą jeden przepływ do tego adresu i portu, o określonym rozmiarze i rytmie. Czego nie widzą, to którą stronę otworzyłeś, ponieważ ta destynacja znajduje się w zaszyfrowanym ładunku. Granica między metadanymi a treścią to cały ten przegląd w jednym zdaniu.
Ten pierwszy skok to miejsce, w którym większość twierdzeń marketingowych przestaje być interesująca. Sąsiad w tej samej sieci Wi-Fi widzi to, co widzi dostawca, i żaden z nich nie widzi strony. Wolumen i czas pozostają jednak widoczne i opisują zachowanie nawet wtedy, gdy ładunek tego nie robi.
Sieć hostingu widzi tunel, a nie stronę
Wewnątrz sieci dostawcy zaszyfrowany przepływ trafia do przełącznika, potem do wirtualnego interfejsu, potem do Twojej VM. Ktoś, kto obsługuje tę sieć, może liczyć bajty i prowadzić rejestry przepływów bez posiadania jakiegokolwiek klucza, i nie jest do tego potrzebny żaden klucz. Dokładnie taką pozycję zajmuje dostawca hostingu.
W drodze na zewnątrz obraz się zmienia. VM otwiera nowe połączenie do celu, więc sieć hostingu może zobaczyć ten adres docelowy i otaczający go uścisk dłoni TLS. Ładunek pozostaje chroniony przez szyfrowanie samej aplikacji, a metadane nie.
| Observer | Visible to it | Hidden from it |
|---|---|---|
| Local network | Tunnel endpoint, volume, timing | Destination and payload |
| Your ISP | The same flow metadata | Destination and payload |
| Hosting network | Tunnel flow, exit destination, TLS handshake | HTTPS payload |
| Hypervisor operator | Guest memory and virtual NIC, in principle | Nothing, if it chooses to look |
Czytaj wiersze po kolei, a kształt problemu się pojawia: każdy widzi więcej niż wiersz nad nim i żaden z nich nie musi łamać VPN, aby to zrobić.
Wewnątrz VM tunel się kończy i zaczyna się czysty tekst
Tunel kończy się na Twojej VM, więc gość widzi pakiet wewnętrzny, zanim cokolwiek zaszyfruje go ponownie. To nie jest wada; tak robi wyjście hostowane samodzielnie. To jednak oznacza, że bezpieczeństwo wyjścia zależy od tego, kto administruje gościem, a na tym koncie administratorem jesteś Ty.
wg show
ss -tunp | head
nft list ruleset | head -40
Uruchom je na serwerze, a oglądasz te same gniazda, które mógłby obejrzeć operator z rootem na gościu. Wszystko, co logują uruchamiane przez Ciebie usługi, leży w tej samej granicy zaufania, dlatego ustawienia logów gościa i rejestry infrastruktury to dwa osobne pytania, a nie jedno ustawienie.
Hiperwizor siedzi pod gościem
Maszyna wirtualna nie jest właścicielem jądra, na którym działa. Hiperwizor mapuje jej pamięć i jej wirtualną kartę sieciową, więc operator na tej warstwie znajduje się poza możliwością audytu przez gościa. Izolacja gościa jest realna i warto na niej polegać między najemcami, ale nie jest obietnicą, że uprzywilejowany dostęp jest niemożliwy. Ta asymetria zasługuje na to, by powiedzieć ją wprost, zamiast chować ją za słowem izolacja.
Dedykowany serwer fizyczny zmienia układ bez usuwania sieci, dostępu fizycznego ani interfejsu zarządzania, który zapewnia dostawca. Czytaj to, co dokumentuje produkt, zamiast pozwalać jednemu słowu rozstrzygać kwestię dostępu.
Zamień ten przegląd w decyzję o zaufaniu
Zapisz każdego obserwatora i uprawnienie, którego mu udzielasz, a potem zdecyduj, czy to udzielenie pasuje do ruchu, który zamierzasz wysłać. Lista jest krótka: Twoja sieć lokalna, Twój dostawca, sieć hostingu, operator hiperwizora i Ty. Cokolwiek innego jest podwykonawcą jednego z nich i dziedziczy to samo uprawnienie. Zdecydowanie z góry jest tańsze niż odkrycie listy później.
Następnie zweryfikuj te części, które naprawdę możesz sprawdzić: jakie logi piszą Twoje własne usługi, jak długo je przechowujesz i co dostawca publikuje o rejestrach przepływów i retencji. Zasady, które możesz przeczytać i przetestować, są lepsze niż założenia o tym, co znaczy słowo takie jak prywatny.