Kategorie: Benutzerverhalten / Mensch-Computer-Interaktion
1. Beschreibung
Verhaltensbiometrie misst, wie ein Benutzer mit seinem Gerät interagiert. Im Gegensatz zu Hardware-Fingerprints sind diese dynamisch – sie variieren mit Stimmung, Kontext, Müdigkeit und Übung. Sie sind jedoch auch hochgradig individuell: Tastendynamik allein kann einen Benutzer in kontrollierten Umgebungen mit >95 % Genauigkeit identifizieren.
2. Vektoren
2.1 Tastendynamik
document.addEventListener('keydown', event => {
console.log({
key: event.key,
timestamp: performance.now(),
code: event.code,
location: event.location
})
})
document.addEventListener('keyup', event => {
console.log({
key: event.key,
timestamp: performance.now(),
holdTime: performance.now() - keydownTime, // Tastenhaltedauer
})
})
Messbare Charakteristiken:
- Tastenhaltedauer: Zeit zwischen keydown und keyup (typischerweise 50-150ms)
- Inter-Tasten-Intervall: Zeit zwischen aufeinanderfolgenden Tastendrücken
- Tastendruck (bei unterstützten Geräten): Berührungsdruck für jede Taste
- Fehlermuster: Rücktaste-Nutzung, Korrekturverhalten
- Tippgeschwindigkeit: Zeichen pro Minute (variiert je nach Aufgabe)
- Rhythmus: Konsistente Muster von langen/kurzen Intervallen
Entropie: ~15-25 Bits (hochgradig individuell)
Stabilität: Moderat – beeinflusst durch Müdigkeit, Emotion, Gerät, Tastaturtyp
2.2 Mausbewegungsmuster
document.addEventListener('mousemove', event => {
console.log({
x: event.clientX,
y: event.clientY,
timestamp: performance.now(),
button: event.buttons,
movementX: event.movementX,
movementY: event.movementY
})
})
Messbare Charakteristiken:
- Bahn: Pfadkrümmung, Geradlinigkeit, Überschwingen
- Geschwindigkeits-Beschleunigungs-Profil: Wie sich die Geschwindigkeit während der Bewegung ändert
- Klickverhalten: Zeit zwischen Maustaste gedrückt und losgelassen, Positionsgenauigkeit
- Hover-Muster: Wo die Maus pausiert
- Scroll-Kopplung: Mausbewegung während des Scrollens
Entropie: ~10-20 Bits (moderat individuell)
Stabilität: Niedrig-Moderat – beeinflusst durch Oberfläche, Gerät, Aufgabe
2.3 Scrollmuster
document.addEventListener('scroll', event => {
console.log({
scrollY: window.scrollY,
timestamp: performance.now(),
deltaMode: event.deltaMode,
deltaY: event.deltaY
})
})
Messbare Charakteristiken:
- Scrollgeschwindigkeit: Pixel pro Scroll-Ereignis
- Beschleunigung: Wie sich die Scrollgeschwindigkeit ändert
- Pausenhäufigkeit: Wie oft das Scrollen stoppt
- Rhythmus: Regelmäßiges vs. stoßweises Scrollen
- Lesen-dann-Scrollen-Muster: Zeit zwischen Scrollstopp und nächstem Scrollen
Entropie: ~8-12 Bits
Stabilität: Niedrig – aufgabenabhängig (Artikel vs. Suchergebnisse vs. soziale Medien)
2.4 Touch-Gesten (Mobil)
element.addEventListener('touchstart', e => { /* Berührungsbeginn */ })
element.addEventListener('touchmove', e => { /* Berührungsbahn */ })
element.addEventListener('touchend', e => { /* Berührungsende, Geschwindigkeit */ })
Messbar:
- Wischwinkel, -geschwindigkeit, -beschleunigung
- Tippdruck (bei unterstützten Geräten)
- Pinch-Zoom-Muster
- Mehrfinger-Koordination
- Berührungsgröße (Finger-Kontaktfläche)
Entropie: ~12-18 Bits
Stabilität: Moderat – beeinflusst durch Gerät, Griff, Haltung
3. Stärken des Angreifers
| Stärke | Erklärung |
|---|---|
| Hochgradig individuell | Tastendynamik kann einen Benutzer mit >95 % Genauigkeit identifizieren |
| Kontinuierlich | Keine einmalige Prüfung – fortlaufende Überwachung |
| Schwer nachzuahmen | Das Verhalten einer anderen Person zu fälschen ist extrem schwierig |
| Keine Berechtigung erforderlich | Maus-/Tastatur-/Touch-Ereignisse sind aus JS lesbar |
| Passiv | Benutzer kann nicht erkennen, dass er gemessen wird |
4. Schwächen des Angreifers
| Schwäche | Erklärung | Ausnutzbar? |
|---|---|---|
| Erfordert Interaktion | Kann ohne Benutzereingabe nicht fingerprinted werden | Interaktion einschränken |
| Hohe Varianz | Ändert sich mit Stimmung, Müdigkeit, Kontext | Reduziert Zuverlässigkeit |
| Lange Erfassungszeit | Benötigt Minuten an Daten für Genauigkeit | Kurze Sitzungen sind sicher |
| ML erforderlich | Einfaches Hashing funktioniert nicht für Verhaltensdaten | Nein |
| Aufgabenabhängig | Nicht konsistent über verschiedene Websites | Eingeschränkte Korrelation |
| Leicht zu stören | JS-Timing-Interferenz bricht Messung | Ja |
5. Erkennung von Manipulation
| Technik | Funktionsweise |
|---|---|
| Fehlende Event-Listener | Keine Maus-/Tastatur-Ereignisse werden erfasst – verdächtig |
| Injizierte Rauschmuster | Timing-Daten mit ungewöhnlichen Mustern (zu regelmäßig, zu zufällig) |
| Signalqualität | Fehlende Mikro-Timing-Merkmale, die von Hardware erwartet werden |
6. Abschwächungen für Obscura
6.1 Was Obscura tun kann
| Abschwächung | Effektivität | Erkennbarkeit | Implementierung |
|---|---|---|---|
| Event-Listener-Registrierung überschreiben | Niedrig | Hoch | Event-Handler des Proxys |
| Timing-Rauschen injizieren | Niedrig-Mittel | Mittel | Ereignis-Zeitstempel runden |
| Bestimmte Ereignistypen blockieren | Mittel | Hoch | addEventListener überschreiben |
6.2 Was Obscura nicht tun kann
| Kann nicht | Warum |
|---|---|
| Benutzerverhalten ändern | Benutzer bewegt Maus, tippt, scrollt – dies ist physisch |
| Tastatureingabe entfernen | Tippen ist für Interaktion notwendig |
| Mausmuster normalisieren | Mausbewegung wird vom Benutzer gesteuert |
| ML-Klassifikation verhindern | ML kann Muster in verrauschten Daten finden |
6.3 Empfohlener Ansatz
1. Ereignis-Zeitstempel auf 50ms-Granularität runden (reduziert Timing-Präzision)
2. Akzeptieren – Verhaltensbiometrie erfordert ML-Infrastruktur (die meisten Angreifer haben dies nicht)
3. Tor Browser für hochsensible Browsing-Sitzungen verwenden (Tor deaktiviert viele Ereignisse)
Hinweis: Verhaltensbiometrie ist hauptsächlich ein Problem für hochwertige Ziele (Banking, soziale Medien) mit erheblichen ML-Investitionen. Für typisches Surfen wird dieser Vektor selten ausgenutzt.
7. Forschungsreferenzen
- Monaco, J. et al. (2018). "Behavioral Biometrics: A Survey." ACM Computing Surveys.
- Teh, P. et al. (2014). "A Survey on Keystroke Dynamics." ACM Computing Surveys.
- Yampolskiy, R. et al. (2011). "Behavioral Biometrics: A Survey and Classification." International Journal of Biometrics.
- Acar, G. et al. (2014). "The Web Never Forgets" – erwähnt Verhaltens-Tracking im Kontext von Cross-Site-Korrelation.