Kan ’n VPN-logboek blaaisgeskiedenis wys? Wat die bewyse bewys
’n Sessielogboek, ’n resolver-navraag en ’n vloeirekord bewys verskillende dinge. Kies die vraag, koppel identiteit en tyd, en sê dan net wat gewys is.
Twee auditvrae klink dieselfde en vereis verskillende soorte bewyse. Watter sessie hierdie adres gekontak het, is beantwoordbaar uit verbinding- en vloeirekords. Watter persoon hierdie bladsy oopgemaak het, is gewoonlik nie, ten minste nie uit daardie rekords nie. Om ’n versamelaar te kies voordat die vraag gekies is, is hoe ’n netwerkspan ’n hostnaam as ’n blaaisgeskiedenis aanbied.
Begin met die gebeurtenis wat die oudit moet bewys
Skryf die vraag as ’n sin met ’n onderwerp, ’n werkwoord en ’n tyd. Daardie dissipline alleen ontbloot die gaping tussen ’n sessierekord en ’n bladsybesoek. ’n Sessielogboek stel vas dat ’n identiteit vir ’n tydperk aanvaar is met ’n toegewysde adres onder ’n aangetekende beleid, en dit kan nie vasstel watter bladsy enigiemand gelees het nie omdat dit nooit die versoek gesien het nie.
Benoem die waarneming voordat die versameling ontwerp word. ’n Veld wat na ’n besoekte werf vernoem is maar eintlik ’n opgeloste naam stoor, is ’n toekomstige fout eerder as ’n gerief. Veldname leef langer as die mense wat hulle gekies het, so kies name wat die bewys beskryf eerder as die gevolgtrekking.
Wat elke rekord kan en nie kan ondersteun nie
Vier rekordtipes verskyn in byna elke ouditontwerp, en elkeen beantwoord ’n ander vraag. Hou hulle apart in die verslag sowel as in die pyplyn, want om hulle te meng is hoe ’n verdedigbare bevinding ’n verleentheid word.
| The question being asked | Record that can answer it | What that record proves | What still needs a join |
|---|---|---|---|
| Was this address contacted? | Flow record | The connection five-tuple and when it was seen | Which session held the address at that moment |
| Which account held that address? | Session log | Which identity authenticated and the tunnel address it received | Which device or person used that account |
| Was this name looked up? | Resolver query | That this resolver was asked for this name | Whether a page was fetched, and by whom |
| Was this page viewed? | Proxy or application transaction | The request and identity recorded inside that application's scope | Traffic outside that application's visibility |
| Who was the person? | None of the four on its own | An account in use, at best | A named human, whenever accounts are shared |
Lees die laaste kolom net so aandagtig soos die middelste. ’n Vloeirekord beskryf adresse en poorte, en ’n omgekeerde opsoek van ’n adres rekonstrueer nie die naam wat ’n blaaier gebruik het nie, want een adres kan baie onverwante werwe huisves. ’n Resolver-navraag bewys dat ’n vraag gevra is, nie dat ’n bladsy vertoon is nie. ’n Hostnaam wat tydens ’n TLS-onderhandeling sigbaar is, is ook nie die geënkripteerde versoekpad nie.
Elkeen daarvan is ’n werklike waarneming, en nie een van hulle is die waarneming wat mense aanneem nie. ’n Blaaier wat op sy eie geënkripteerde resolver aandring, sit buite die gemoniteerde bestek, en ontleding kan nie herwin wat die logboek nooit gesien het nie. Daardie gaping hoort in die verslag as ’n verklaarde beperking eerder as ’n voetnoot.
Spelende opsoeke en gekaste antwoorde
Blaaiers los name vooraf op, soms sonder om enigiets te laai. Hulle antwoord ook uit die kas sonder om ’n nuwe navraag na die resolver wat jy dophou te stuur, wat beteken die afwesigheid van ’n navraag is nie die afwesigheid van ’n besoek nie. Albei gedragspatrone breek die naïewe vergelyking tussen ’n DNS-logboek en ’n blaaisgeskiedenis.
DNS oor HTTPS voeg ’n tweede grens by: ’n blaaier of ’n gasprogram met sy eie resolver vra nooit die organisasie se logboek iets nie. Presiese transaksies kom net uit die program se eie gebeure of uit ’n instaanbediener wie se logboek jy uitdruklik ondersteun. ’n Gewone HTTPS CONNECT-tonnel laat die instaanbediener sonder enige sig op die bladsypaaie binne-in dit. Om die netwerk te besit is nie toestemming om die program se vertrouensmodel stilweg te vervang nie.
Die adres hoort by ’n sessie, nie by ’n persoon nie
’n Vloeirekord met ’n adres uit die tonnelreeks is ’n beginpunt eerder as ’n antwoord. Koppel daardie adres en tydstempel aan die sessietoewysing wat op daardie oomblik aktief was, want daardie adres kan ’n uur later aan ’n ander sessie toegewys word. Statiese adressering is een manier om daardie assosiasie te behou, en nie die enigste nie.
Waar ’n vertalingsstap verskeie toestelle in een bronadres stroomop van die sensor saamvat, kan die koppeling net die gedeelde poortsessie noem. ’n Gedeelde rekening of ’n sertifikaat wat deur verskeie mense gebruik word, beperk toeskrywing hoe volledig die netwerkdata ook al lyk. Albei hoort in die verslag as beperkings eerder as as voorbehoude vir later.
Teken die tydsone, die klokbron, die waarnemingspunt en elke vertalingsgrens daartussen aan. Afwesigheid verdien dieselfde sorg as teenwoordigheid, want ’n ontbrekende rekord kan beteken dat ’n vloei-inskrywing uitgefaseer het, dat ’n sensor die pakkie nooit gesien het nie of dat ’n programlogboek afgeskakel was.
Ontwerp vir die verklaarde doel, bewys dan die pyplyn
Sodra die vraag vasgestel is, definieer watter velde nodig is, wie dit mag lees en hoe lank dit gehou word. Om meer in te samel omdat berging goedkoop is, skep ’n aanspreeklikheid wat die ondersoek oorleef. Die privaatheidmodel in RFC 6973 raam korrelasie, verkeerde toeskrywing en onnodige versameling as ontwerpkwessies eerder as nagedagtes.
Bewaak die koppeling en die rekords as een voorwerp, want elk alleen is baie minder sensitief as die paar. Valideer dan die ontwerp teen aktiwiteit wat jy toegelaat word om te genereer en reeds verstaan, met die kleinste navraag waarop die verslag sal staatmaak. ’n Pyplyn wat nie ’n bekende gebeurtenis kan herproduseer nie, sal ook nie ’n onbekende een herproduseer nie. Rapporteer die gebeurtenis wat die bewyse ondersteun, in die woorde wat die bewyse toelaat, en laat die leser self die groter gevolgtrekking bereik.
Skryf die beperkings langs die bevinding: wat gekoppel is, wat vertaal is en watter logboek stil gebly het. ’n Bevinding wat sy eie grense noem, oorleef ’n hersiening wat ’n selfversekerde opsomming nie doen nie. Dit is die verskil tussen bewyse en ’n verhaal oor bewyse.