Hoe VPN- en proxydetectie werkt, en waar het faalt
IP-lijsten, reputatie-API's en vingerafdrukken falen op verschillende manieren. Bepaal welk misbruik je stopt, meet fout-positieven en handhaaf dan met een redencode.
Als iemand vraagt hoe je VPN-gebruikers blokkeert, zitten er drie verschillende verzoeken in die zin: fraude stoppen, scrapen stoppen of een licentiegrens handhaven. Elk verdraagt een andere foutmarge, en geen ervan wordt beantwoord door te weten of een adres bij een tunnel hoort. Wat een classificator teruggeeft, is een waarschijnlijkheid over infrastructuur, geen uitspraak over de persoon die hem gebruikt.
Wat een IP-classificator werkelijk berekent
De meeste diensten combineren vier databronnen, en ze verouderen in verschillend tempo. Tor-exitlijsten komen uit de directoryconsensus en zijn bijna compleet zolang die standhoudt. Open-proxylijsten zijn gedeeltelijk en binnen dagen verouderd. Commerciële exitlijsten lopen per ontwerp achter op nieuwe aanbieders, omdat adressen sneller roteren dan welke leverancier ze kan doorlopen. Heuristiek op hostingbereiken is het goedkoopste en het grofste signaal.
Dat laatste is waar de meeste fout-positieven worden geboren. Bedrijfsuitgangen, in de cloud gehoste browsers, campus-NAT en gateways van mobiele operators lijken allemaal op hosting of gedeelde infrastructuur, en elk ervan kan gewone klanten bevatten.
| Signal | What it shows | Typical failure |
|---|---|---|
| Tor exit consensus | A known exit relay | Good coverage, obvious to anyone who cares |
| Hosting or datacentre ASN | Infrastructure, not a home line | Flags corporate egress and cloud browsers |
| Commercial exit list | A provider's current ranges | Always behind new providers and rotations |
| Behavioural rate | What the client is doing | Needs tuning, but survives address changes |
IPv6 neemt elk restje comfort weg. Een client kan per verbinding een ander adres hebben, en een aanbieder kan een prefix tussen verzoeken roteren, dus een regel die een adres als duurzame identiteit behandelt, drijft binnen weken van de werkelijkheid af.
Waarom protocolvingerafdrukken vervallen
MSS- en timingverschillen kunnen sommige OpenVPN-configuraties identificeren, en de techniek is echt fragiel. Het signaal hangt af van opties die de gebruiker beheert, van de pad-MTU en van tussenkasten die niet van jou zijn. Verander één cipher of één MSS-grens en de vingerafdruk verschuift. Een aanbieder die een nieuwe standaard uitbrengt, doet hetzelfde met jouw regel in één nacht.
Omgekeerde probes hebben een erger probleem dan fragiliteit: ze zijn vijandig. De poorten van een bezoeker scannen is traag, makkelijk geblokkeerd door dezelfde bedrijfsfirewall waar je klanten achter zitten, en moeilijk te verdedigen in een privacyreview. Latentiedrempels vangen verre gebruikers even betrouwbaar als tunnelgebruikers, wat betekent dat je regel eigenlijk «blokkeer mensen ver weg» is met een ander etiket.
Wat je ook kiest, je moet het om 2 uur 's nachts aan een supportmedewerker kunnen uitleggen. Een signaal dat niemand kan beschrijven wordt een blokkade die niemand kan terugdraaien. Schrijf de uitleg voordat je de regel schrijft, niet na de eerste klacht.
Identiteit en gedrag verslaan gissingen over anonimiteit
Snelheidslimieten, loginvereisten, betalingscontroles en quota per account pakken misbruik aan zonder lezers te straffen die om privacy geven. Ze blijven ook werken als het adres verandert, omdat ze vastzitten aan iets wat de client niet gratis kan roteren.
Als een geografische beperking een licentievereiste is, handhaaf die dan als gedocumenteerd beleid met een duidelijke foutmelding en een periodieke herziening. Dat is een andere controle dan gissen naar anonimiteit, en het moet anders worden beschreven in de tekst voor de klant. De poorten blokkeren die een VPN-protocol gebruikt kan geautomatiseerd misbruik verminderen, maar breekt ook legitieme toegang op afstand en wordt triviaal omzeild door iedereen die vastberaden is.
Voer het eerst uit als meting
Laat de classificator een paar weken in alleen-rapport-modus draaien. Vergelijk de populatie die hij zou hebben geblokkeerd met aanmeldingen, conversies en supporttickets, en stel daarna het budget voor fout-positieven in voordat je de drempel instelt.
Test opnieuw tegen een kleine bekende set: een thuisverbinding, een mobiele operator, een bedrijfsuitgang en een commerciële VPN. Vier gevallen leggen de meeste fouten bloot die anders klanten zouden bereiken, en ze kosten een middag.
Houd het ruwe signaal en de handhavingsbeslissing gescheiden. Log de score ook bij een hoge drempel, stuur het dubbelzinnige midden naar een menselijke wachtrij en tag elke blokkade met een redencode, zodat de volgende beleidsherziening kan zeggen welk signaal zijn plek verdiende.
Het beroepspad is onderdeel van de controle
Elke automatische blokkade heeft een menselijke route nodig: een contactadres, een aangegeven reactietijd en een genoemde eigenaar van de herziening. Zonder dat is een fout-positief een stil verloren klant en een supportticket waar niemand iets mee kan.
Zeg ronduit dat toegang beperkt kan zijn, waarom, en hoe je om herziening vraagt. Versioneer het beleid zodat support kan zeggen welke regel op een bepaalde datum gold. Een blokkade die je niet kunt uitleggen, terugdraaien of meten is geen controle; het is een gissing met een logregel.