So funktioniert VPN-Erkennung: ASNs und Blocklisten
VPN-Erkennung funktioniert, indem entschieden wird, ob eine IP-Adresse zu einem Netz gehört, das bekanntermaßen Datenverkehr für andere weiterleitet. Dabei werden zwei Hauptquellen genutzt: die Autonomous System Number (ASN) der Adresse, die zeigt, wer das Netz betreibt, und Blocklisten bekannter VPN-, Proxy- und Tor-Exit-Adressen. Keine der Quellen ist vollständig, die Erkennung ist daher eine Wahrscheinlichkeitsschätzung und kein Beweis.
Dass das überhaupt möglich ist, liegt daran, dass ein VPN-Exit irgendwo stehen muss. Kommerzielle VPN-Dienste mieten Server in Rechenzentren und announcen Adressraum aus einer Handvoll Netze, und diese Adressen verhalten sich anders als ein privater Breitbandanschluss. Die Erkennung versucht, diesen Fußabdruck zu identifizieren.
Signal eins: ASN-Zuordnung
Jede öffentliche IP-Adresse liegt in einem Block, der von einem Autonomous System announct wird, das durch eine ASN identifiziert ist. Die ASN-Abfrage liefert für eine Nummer wie AS15169 den registrierten Inhaber, die Organisation und das Land, und die Haupt-IP-Abfrage liefert dieselbe asn samt Organisation zu jeder Adresse. Ist die Organisation ein Hosting-Unternehmen, eine Cloud-Plattform oder ein CDN, ist die Adresse wahrscheinlich keine Privatperson zu Hause, und ipto stellt das als is_datacenter bereit. Ist es ein Endkunden-ISP, gehört die Adresse vermutlich zu einem Haushalt oder einem Mobilfunkkunden. Den Hintergrund behandelt Was ist eine ASN.
ASN-Belege sind für den Normalfall stark, in dem ein VPN-Anbieter Server in gemieteten Racks betreibt, haben aber zwei Schwächen. Viel Traffic, der nicht von VPNs stammt, kommt ebenfalls aus Rechenzentren: Skripte, Monitoring-Dienste, legitimer Unternehmens-Egress und in der Cloud gehostete Apps. Und ein VPN, das über einen Endkunden-ISP ausleitet, hinterlässt überhaupt keinen Datacenter-Fußabdruck. Die ASN ist also eine Vorannahme, kein Schluss.
Signal zwei: veröffentlichte Listen
Die zweite Quelle sind Listen von Adressen, die bereits als VPN-Endpunkte, Proxys oder Tor-Relays identifiziert wurden. Tor ist der einfachste Fall, weil das Netz seine Relays offen veröffentlicht, doch Exit-Listen ändern sich schnell, wie unter Warum eine statische Tor-Exit-Liste schnell veraltet erörtert. Bei kommerziellen VPNs werden Listen aus Beobachtung und Anbieterdaten zusammengestellt und müssen häufig aktualisiert werden, weil Anbieter ständig Server rotieren und hinzufügen. Bei ipto werden die VPN-, Tor- und Abuse-Feeds alle 6 Stunden aktualisiert und die IP- und ASN-Datensätze täglich; die Ergebnisse erscheinen als is_vpn, is_tor und is_abuser in der IP-Abfrage. Die zugrunde liegenden Threat Feeds können Sie auch direkt durchsuchen.
Listenbelege sind spezifischer als ASN-Belege, da eine Adresse auf einer Liste einzeln identifiziert wurde. Sie hinken aber hinterher: Ein heute Morgen hinzugefügter Server steht eventuell bis zur nächsten Aktualisierung auf keiner Liste, und Listen können Adressen behalten, die inzwischen normalen Kunden zugewiesen wurden.
Die Signale kombinieren
Die beiden Quellen ergänzen einander. Eine Adresse in einer Hosting-ASN und auf einer Exit-Liste ist mit hoher Sicherheit ein VPN oder Proxy. Eine Adresse nur in einer Hosting-ASN verdient vorsichtige Behandlung, aber nicht automatisch die Einstufung als VPN. Eine Adresse, die zu einer Liste passt, aber in einer Endkunden-ASN liegt, kann ein veralteter Eintrag oder ein Residential Exit sein. Wenn Sie eine Adresse durch den VPN-, Tor- und Proxy-Checker laufen lassen, sehen Sie, welche Listen gepasst haben und zu welchem Netz die Adresse gehört, also die Belege statt nur ein Ja oder Nein.
Wo die Erkennung danebenliegt
Seien Sie bei der Planung rund um das Ergebnis ausdrücklich über die blinden Flecken:
- Neue oder rotierte Server können unerkannt bleiben, bis die Feeds nachziehen.
- Residential Proxys leiten über echte Heimanschlüsse und sehen aus wie normale Nutzer. ipto erkennt sie nicht; warum das schwierig ist, steht unter Erkennung von Residential Proxys.
- IPv6: Die Flags für VPN, Tor und Abuse decken derzeit IPv4-Bereiche ab, eine IPv6-Adresse liefert dafür daher false statt einer Vermutung, obwohl ASN, Organisation und Standort weiterhin funktionieren.
- Selbst gehostete VPNs auf einem privaten Server im Bereich eines kleinen Anbieters tauchen womöglich auf keiner Liste auf.
Behandeln Sie ein negatives Ergebnis als „nicht als VPN bekannt“, nicht als „definitiv direkt“.
Das Ergebnis sinnvoll nutzen
Die meisten VPN-Nutzer sind legitim: Mitarbeiter in Unternehmenstunneln, Reisende, Menschen, denen Privatsphäre wichtig ist. Ein Flag funktioniert am besten als Risikoeingabe, die eine verhältnismäßige Reaktion auslöst, etwa einen zusätzlichen Verifizierungsschritt, einen niedrigeren Vertrauenswert oder eine manuelle Prüfung bei Aktionen mit hohem Wert, nicht als automatische Sperre. Die Muster dafür stehen unter Fehlalarme bei der VPN-Erkennung reduzieren, und der Fraud-Score-Checker zeigt, wie sich die IP-Signale mit E-Mail-, Telefon- und User-Agent-Belegen zu einem einzigen Wert von 0 bis 100 kombinieren lassen.
Zum Ausprobieren rufen Sie GET https://ipto.to/v1/ip/:ip mit Adressen aus Ihren eigenen Logs auf (kostenlos, ohne Anmeldung, 1.000 Anfragen pro Tag) und prüfen die Flags neben der ASN. Das Antwortschema steht in der API-Dokumentation.