Besucherzählung in anonymisierten Logfiles

Symbolbild: verpixeltes Logfile

Da IP-Adressen zu den personenbeziehbaren Informationen zählen, darf man in Logfile von Webservern (zumindest längerfristig) IP-Adressen nur anonymisiert abspeichern. Dazu schneidet man einige niedrigwertige Bits ab, so dass einzelne IP-Adressen nicht mehr erkennbar sind. Doch wie wirkt sich das eigentlich auf die Analyse der Logfiles aus?

Ein Eintrag in diesem Logfile sieht beispielsweise so aus:

192.168.1.0 - - [30/Sep/2022:01:49:25 +0200] "GET /config/getuser?index=0 HTTP/1.1" 200 9890 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0"

Die Anzahl der Aufrufe kann man auch ohne Kenntnis der IP-Adresse zählen. Problematisch wird es beim Ermitteln einer weiteren wichtigen Kennzahl, nämlich der Anzahl unterschiedlicher Besucher*innen. Nutzen kann man dafür die IP-Adresse und die Angabe des User-Agent (im Beispiel Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0). Welche Auswirkung hat das Anonymisieren? Um diese Frage zu klären, habe ich mir vorliegende Webserver-Logfiles mit der Software GoAccess analysieren lassen. Die gibt einem unter anderem die Anzahl der eindeutigen Besucher*innen pro Logfile (in meinem Fall einem Monat) aus. Meine Logfiles enthalten insgesamt etwa 2,1 Millionen Anfragen. Nach Abzug von Bots (Option –ignore-crawlers) bleiben noch 906.00 Anfragen übrig. So kam ich bei mir auf 10.541 unterschiedliche Besucher*innen. Nun sind in meinem Logfiles die IP-Adressen bereits anoynmisiert. Von den bekanntlich 32 Bit einer IPv4-Adresse sind nur noch 24 Bit übrig. Statt 192.168.1.15 wurde nur 192.168.1.0 abgespeichert.

Nun habe ich in den Logfiles nach und nach weitere Bits der IP-Adresse verworfen. Aus 192.168.1.0 wurde zunächst 192.168.0.0 (16 Bit), dann 192.0.0.0 (8 Bit) und schließlich lauteten alle Adresse 0.0.0.0 - man hat keine IP-Adresse zur Identifikation mehr. Dabei ergaben sich folgende Werte:

Länge der IP-Adresse unterschiedliche Besucher*innen
24 10.541
16 9.741
8 8.724
0 5.057

Einen richtigen Trend bei den Zahlen kann ich nicht erkennen. Auch weiß ich nicht, wie viel Informationen durch das Anonymisieren verloren gegangen ist. Es fehlt die wirkliche Anzahl der unterschiedlichen Besucher*innen. Was tun?

Nicht-EU Logfiles

Das Sammeln der kompletten IP-Adressen für ein Experiment wäre vermutlich ein berechtigtes Interesse gewesen, aber ich will die Adressen eigentlich auch gar nicht speichern (Datensparsamkeit) und so lange warten auf eine vernünftige Anzahl von Adressen wollte ich auch nicht. Also habe ich einen Bekannten außerhalb der EU gefragt, ob er für mich das Experiment mit der gleichen Software und den gleichen Einstellungen wiederholen kann. Das hat er freundlicherweise gemacht. Seine Logfiles enthielten gut 2,4 Millionen Einträge, von denen nach Filtern der Bots noch 2,1 Millionen übrig blieben. Spannend sind aber die Zählungen der unterschiedlichen Besucher*innen. Die sehen so aus:

Länge der IP-Adresse in Bit unterschiedliche Besucher*innen % der Gesamtzahl
32 58.884 100
24 56.722 96,3
16 48.762 86,0
8 34.355 70,5
0 11.601 33,8

Grafisch dargestellt sieht es so aus:

Liniendiagramm, das die Werte der vorherigen Tabelle zeigt

Es hat mich wirklich erstaunt, wie wenig man durch eine Anonymisierung durch Abschneiden von 8 Bit verliert. Offenbar beinhaltet der User-Agent genug Informationen, um Besucher*innen unterscheiden zu können.

Datenschutz

Ein Argument, die vollständigen IP-Adressen im Logfile zu speichern, sie also nicht zu anonymisieren, könnte DSGVO Artikel 6 Punkt (1) f) sein. Darin wird eine Abwägung der berechtigten Interessen des Verantwortlichen und der Grundrechte und Grundfreiheiten der betroffenen Person gefordert. Für Behörden gilt dieses “Schlufloch” übrigens nicht, hier müssen die IP-Adressen stets anonymisiert werden. Die Analyse der Benutzung der Webseite ist sicherlich ein berechtigtes Interesse. Auch hat man als nicht-staatliche Stelle nur wenig Möglichkeiten, eine IP-Adresse einer natürlich Person zuzuordnen. Wiegt dieses Interesse nun schwerer als die Grundrechte und Grundfreiheiten der betroffenen Personen? Da man aber offenbar noch nicht einmal 4% Ungenauigkeit in die Auswertung bekommt, wenn man ein Viertel der Bits der IP-Adressen abschneidet, kann das Interesse meiner Meinung nach nicht wirklich überwiegend sein.

Mein Fazit: Anonymisiert eure Logfiles, sobald es technisch nicht mehr notwendig ist, die genauen IP-Adressen zu kennen. Technisch notwendig sind die z.B. bei der Abwehr von Cyberangriffen. So benötigt Software wie fail2ban natürlich die komplette IP-Adresse, um zu erkennen, dass von einer Quelle aus verdächtige Anfragen kommen. Aber sobald diese Arbeit erledigt ist, können acht Bit der IP-Adresse weg.