Det andra hoppet kom upp enligt plan och ditt diagram visar fortfarande tre separata leverantörer. Sedan kommer fakturorna, och två av dem nämner samma hostingföretag, samma registrator har alla tre domänerna, och varje konto återställs till en enda brevlåda som du äger. Inget i tunnelkonfigurationen är trasigt. Designen har bara aldrig räknat de beroenden som ligger under hoppen, och ett hoppantal beskriver den väg trafiken tar, inte antalet parter som kan agera på den.

Symtomet visar sig i faktureringen, inte i loggarna

Du hittar inte detta i en tunnellogg, eftersom tunneln gör exakt det du konfigurerade. Bevisen lever i offentliga register och kontoinställningar: whois-organisationsnamn som stämmer överens mellan slutpunkter, identiska namnservrar, en delad registrantadress, en betalningsmetod, en kontrollpanel. Var och en av dessa är en antydan om att två lager som borde misslyckas oberoende kan misslyckas tillsammans.

Ingen av dessa antydningar bevisar att någon enskild part kan läsa din trafik. Det de minskar är antalet oberoende beslut som måste gå fel innan två skyddslager komprometteras av samma händelse.

Jämför de register du faktiskt kan se och skriv ner vad du jämförde. Slå upp organisationen på varje slutpunktsadress, lista namnservrarna för varje domän och öppna återställningsinställningarna för varje konto i kedjan. Där två värden stämmer överens, notera om överensstämmelsen gäller ägande, drift eller bara fronten hos en återförsäljare. Det är olika fynd, och att behandla dem som ett är hur en beroendegranskning blir gissningar.

Rita den logiska vägen, därefter beroendekartan

Det behövs två diagram, och de flesta ritar bara det första. Den logiska vägen visar var varje skyddslager slutar och vad den slutpunkten kan observera. Beroendekartan visar vem som driver och administrerar var och en av dessa slutpunkter, vilket är en helt separat uppsättning namn.

Layer to recordEvidence you can collectWhat a shared value would mean
Endpoint operatorPublished operator, contract, support contactsThe same party sees two traffic layers
Compute and hostingAddress ranges, hosting brands, platform status pagesOne administrative action affects two machines
Network dependencyEndpoints and transit links near the observation pointTwo paths share a segment that could be watched once
ManagementControl panels, SSH keys, staff with accessOne credential compromise crosses both layers
Account linkageRegistration records, payment method, recovery mailTwo services can be tied to one identity

Betygsätt varje rad i stället för att fylla i den. Känt betyder att du har sett en registrering som säger det, härlett betyder att en observation stöder det utan att avgöra det, och okänt betyder att ingenting hittades. Ett delat hostingmärke är en härledning om delad infrastruktur, inte ett påstående om en delad kunddatabas. Befordra inte tyst en härledning till känt faktum bara för att det passar slutsatsen du förväntade dig.

En tom rad är ett fynd i sig. Den berättar vilket faktum som skulle ändra beslutet om du lärde dig det, och det är mer användbart än ännu ett stycke om vad en sofistikerad motståndare skulle kunna göra.

Ett AS-nummer svarar bara på en routingfråga

Ett autonomt system är ett routingadministrationsbegrepp, en uppsättning adresser som presenteras för andra nätverk som en sammanhängande routingvy. Olika AS-nummer säger därför ingenting definitivt om företagsägande, separat personal eller oberoende juridisk kontroll. Det omvända felet är lika vanligt: två slutpunkter i ett AS är inte automatiskt ett fall där en part identifierar en specifik användare.

Om du vill ha siffrorna, lös dem i stället för att anta dem. Adressen nedan är en platshållare, och flaggan ber verktyget att märka varje hopp med det AS som annonserar det.

mtr --aslookup --report --report-cycles 5 203.0.113.9

Behandla den utdata som en mätning av routing, inte av ägande eller av hela trafikvägen. Det åtkomstnät du börjar från och transitberoendena mellan slutpunkter är separata frågor som slutpunktsadresserna inte kan besvara. När en rutt eller ett reläval inte kan observeras där du sitter, märk det okänt i stället för att importera ett allmänt påstående om hur ett visst nätverk väljer vägar i dag. Oobserverat är inte samma sak som oobserverbart, men det är inte heller bevis.

Namnge observationen innan du namnger risken

Tre fynd blandas ihop i de flesta beroendegranskningar, och att skilja dem är det mesta av arbetet. Passiv synlighet av krypterad trafik är ett fynd. Delad administrativ åtkomst är ett annat, eftersom det innebär en handling snarare än en vy. Kontokoppling är ett tredje, eftersom det förbinder identiteter utan att ge någon teknisk åtkomst.

Integritetsriktlinjerna i RFC 6973 ger en användbar form för detta: lista vad varje enhet lär sig och fråga sedan hur det kan kombineras med information som förvaras någon annanstans. Två punkter på en väg som observerar liknande trafikmönster kan motivera en korrelationsoro, men de ger dig ingen uppmätt sannolikhet för att någon har identifierats. Skriv oron och skriv sedan den observation som skulle bekräfta den.

Återvänd till en kedja av två tunneltjänster och en hyrd proxy. Om proxyns administrativa autentiseringsuppgifter delar ett återställningskonto med en tunnelserver kan en enda administrativ kompromiss passera båda gränserna. Om den enda överlappningen är att ett hostingföretag driver båda maskinerna måste granskningen ange vilka befogenheter företaget har och vilken information som förblir skyddad. Samma tre hopp, ett annat fynd.

Registret är inte ett anonymitetscertifikat och blir det aldrig. Dess värde är snävare och mer praktiskt: det visar var oberoende är fastställt, var det antas och vilken enda okänd rad som skulle flytta beslutet. Välj den raden härnäst och låt resten av diagrammet vara i fred tills du har ett svar på den.

Relaterade artiklar