3 Punkte von GN⁺ 2026-02-12 | 1 Kommentare | Auf WhatsApp teilen
  • Ein Skript, das die Altersverifizierungsverfahren mehrerer Plattformen automatisch als erwachsen besteht
  • Wenn man Code in die Discord-Konsole einfügt und ausführt, sendet es automatisch eine API-Anfrage an /age-verification/verify und wechselt zur Seite für den abgeschlossenen Verifizierungsvorgang
  • Auch auf anderen Plattformen wie Twitch, Kick und Snapchat ist mit derselben Methode eine Verifizierung möglich, indem die QR-Code-URL eingegeben wird
  • Dieses Tool missbraucht die Verarbeitungsstruktur für Gesichtsdaten des k-id-Systems, um auch ohne echtes Gesicht legitime Metadaten zu erzeugen
  • Es wurde so entwickelt, dass es im Zuge der globalen Ausweitung von Altersverifizierungen das Prüfverfahren umgeht, indem AES-GCM-Verschlüsselung und vorhersagbare Datenstrukturen nachgebildet werden

Verifizierungsverfahren bei Discord

  • Die Methode besteht darin, ein bestimmtes Skript in die Entwicklerkonsole (F12) der Discord-Web-App einzufügen und auszuführen
    • Das Skript extrahiert den Webpack-Modul-Cache von Discord, findet den internen API-Client und sendet eine Anfrage an den Endpunkt /age-verification/verify
    • Die als Ergebnis erhaltene verification_webview_url wird zu age-verifier.kibty.town weitergeleitet
  • Der Nutzer muss nach dem Lösen des Captchas warten, bis die Seite „success“ anzeigt; dann ist die Verifizierung abgeschlossen
  • Dadurch wird das Discord-Konto als altersverifiziert angezeigt

Verifizierung auf anderen Plattformen (Twitch, Kick, Snapchat usw.)

  • Auf der Altersverifizierungsseite der jeweiligen Plattform die Option „selfie“ auswählen und die angezeigte URL des QR-Codes kopieren
  • Diese URL in das Eingabefeld von age-verifier.kibty.town einfügen und auf den Button „verify“ klicken
  • Danach läuft der Verifizierungsprozess automatisch weiter und zeigt eine Erfolgsmeldung an

Funktionsweise

  • Das von Discord verwendete k-id-System zur Altersverifizierung sendet keine Gesichtsaufnahmen an den Server, sondern nur gesichtsbezogene Metadaten und Details zum Prozess
    • Durch diese Struktur ist es möglich, die Verifizierung auch ohne echtes Gesicht zu bestehen, wenn glaubwürdig wirkende Metadaten manipuliert und übermittelt werden
  • Nachdem in der Vergangenheit der k-id verifier von amplitudes veröffentlicht wurde, verschärfte der Partner faceassure zwar die Prüfung, doch dieses Tool umgeht sie nun auf neue Weise

Technische Detailschritte

  • Schritt 1: Reproduktion der Verschlüsselungsparameter
    • Im Vergleich zu legitimen Anfragen wurde festgestellt, dass encrypted_payload, auth_tag, timestamp und iv fehlen
    • Bei der AES-GCM-Verschlüsselung wird der Schlüssel aus nonce + timestamp + transaction_id mittels HKDF(SHA-256) abgeleitet
    • Durch Nachbildung derselben Struktur werden die fehlenden Parameter erzeugt
  • Schritt 2: Manipulation der Vorhersagedaten
    • Als selbst eine perfekte Nachbildung der Verschlüsselung scheiterte, wurde festgestellt, dass die Verifizierung von den „prediction arrays“ (outputs, primaryOutputs, raws) abhängt
    • Auf Basis der raws-Daten werden mit z-score Ausreißer entfernt und daraus outputs sowie primaryOutputs erzeugt
    • Zusätzlich werden die folgenden Bedingungen geprüft
      • Für die Werte xScaledShiftAmt und yScaledShiftAmt sind jeweils nur zwei Möglichkeiten zulässig
      • Der Medienname (Kamera) muss mit der tatsächlichen Geräteliste übereinstimmen
      • Der Abschlusszeitpunkt des Status muss mit der Timeline übereinstimmen
  • Der Open-Source-Code, der all diese Prozesse implementiert, wurde veröffentlicht und kann von jedem eingesehen werden

Veröffentlichung und Hintergrund

  • Der Entwickler bedankt sich bei xyzeva und Dziurwa sowie bei amplitudes, die bereits früher an verwandten Arbeiten beteiligt waren
  • Es wird erklärt, dass Discord die globale Altersverifizierung im März flächendeckend einführen will und deshalb eine neue Methode zur Umgehung der Prüfung erforscht wurde

1 Kommentare

 
GN⁺ 2026-02-12
Hacker-News-Kommentare
  • Die wirklich robuste Methode besteht darin, statt einer echten Webcam einen künstlichen Videoeingang zu erzeugen.
    Ich glaube nicht, dass irgendeine Plattform das verhindern kann.
    Selbst wenn die Plattform einen schwer zu fälschenden Kameraeingang wie bei einem Smartphone verlangt, stellt man einfach eine Kamera vor einen hochauflösenden Bildschirm.
    Dieses Katz-und-Maus-Spiel wird nicht lange dauern.

    • Ich frage mich, ob die Plattformen das überhaupt wirklich verhindern wollen.
      Unvollkommene altersbasierte Verifikation per Video-Selfie nützt am Ende eher allen.
      Vernünftige Menschen müssen keinen Führerschein oder Reisepass hochladen, und für Plattformen wird es leichter, Nutzer zu halten.
      Pornoseiten können Benutzerkonten anlegen, um Tracking und Werbeeinnahmen zu steigern.
      Politiker können verkünden, dass sie „eine Altersbeschränkung eingeführt haben“, und Eltern fühlen sich sicher, dass ihre Kinder keine Pornos schauen.
      Am Ende ist es eine Situation, in der alle gewinnen.
    • Es gibt bereits Geräte mit Hardware-Authentifizierung wie etwa Windows-Hello-Kameras.
      Wahrscheinlich werden auch solche Verifikationsverfahren letztlich in diese Richtung gehen.
      Möglicherweise war das einer der Gründe, warum Google auf Play-Store-exklusive Apps gedrängt hat: um eine solche verifizierbare Softwarekette aufzubauen.
    • Wenn ein Gesichtsscan nicht möglich ist, kann man auf eine ID-Prüfung umschalten.
      Letztlich ist das nur ein Problem, bei dem man einen Schalter umlegt.
    • Es gibt Gerüchte, dass Apple dem nächsten iPhone multispektrale Bildsensoren hinzufügen wird.
      Zusammen mit 3D-Mapping würden einfache Tricks wie das Filmen eines Bildschirms nicht mehr funktionieren.
      Das Problem ist, dass Altersverifizierungsdienste wie bei Discord es nicht ernsthaft versuchen.
    • Ich stimme zu, dass dieses Spiel nicht lange dauern wird, aber aus einem anderen Grund.
      Ich werde das Spiel einfach nicht mitspielen und die Plattform nicht mehr nutzen.
  • Diese Methode hat drei Probleme.

    1. Sie verringert die Hürde der Altersverifikation und hält Menschen damit in geschlossenen Ökosystemen.
    2. Sie rechtfertigt noch invasivere Verifikation, weil „datenschutzfreundliche Methoden zu leicht zu umgehen sind“.
    3. Sie verleitet dazu, beliebigen Code auszuführen, während man mit dem eigenen Account verbunden ist.
    • Etwas als möglich zu beweisen und es zu empfehlen, sind zwei verschiedene Dinge.
      Das ist ein großartiges Beispiel für Reverse Engineering und zeigt, wie schwer es ist, Verifikation ohne Eingriff in die Privatsphäre umzusetzen.
      Da der Code offengelegt wurde, trifft das Problem mit der Ausführung beliebigen Codes (#3) hier nicht zu.
      Falls Unternehmen mit invasiveren Methoden (#2) reagieren, können Nutzer jederzeit zu anderen Plattformen wechseln.
  • Ich halte das für eine ziemlich clevere Idee.
    Discord scheint die Altersverifikation gerade so weit gelockert zu haben, dass man Regulierungsbehörden sagen kann, man tue „etwas zum Schutz von Kindern“.
    Wenn Regierungen das aber ernsthaft überwachen, wird dieser Ansatz nicht lange halten.
    Einige Länder verlangen bereits stärkere biometrische Verifikation, und manche Dienste wechseln zu appbasierter Verifikation auf dem Smartphone.
    Einfache JavaScript-basierte Tricks werden immer weniger funktionieren.

  • Ich würde empfehlen, die Code-Ausführung in eine IIFE zu packen.
    In Safari auf macOS wird top-level await nicht unterstützt, daher funktioniert es dort nicht.
    Siehe dazu caniuse.com/wf-top-level-await.

    • Safari zeigt eine Haltung, moderne Webstandards nicht unterstützen zu wollen.
      Es hinkt bereits seit fünf Jahren hinterher.
  • Ich habe es ausprobiert und wurde zu https://age-verifier.kibty.town/webview?url=null weitergeleitet,
    mit der Meldung {"error":"error parsing webview url"}.
    Mein Discord-Konto ist wohl in einem A/B-Test und verwendet stattdessen den anderen Verifikationsanbieter Persona.

    • Persona ist als Unternehmen bekannt, das Daten sammelt und weitergibt, ähnlich wie beim Vorzeigen eines Ausweises am Eingang einer Bar.
      Mit einer Suche findet man mehr Informationen dazu.
    • Zugehöriger Tweet: https://x.com/xyz3va/status/2021734252505604108
    • Ich hoffe, dieser Kommentar landet weit oben, damit die Sicherheitsverantwortlichen ihn sehen.
  • Es funktioniert tatsächlich.
    Ich habe von Discord die Meldung erhalten, dass ich „als Erwachsenengruppe klassifiziert“ wurde.
    (Erzählerstimme) Und genau in diesem Moment wurde mir klar, dass mein Konto gehackt worden war ;)

    • Bei mir hat es auch funktioniert.
      Ich hoffe, dass mein 11 Jahre altes Konto dadurch keine Probleme bekommt, aber wenn man mein Gesicht oder einen Ausweis verlangt, werde ich einfach kündigen.
    • Es wäre wohl lustiger, sich mit dem G-Man-Charakter aus Half-Life verifizieren zu lassen.
    • Nur zur Sicherheit habe ich später mein Passwort geändert.
  • Ich verstehe nicht, warum die junge Generation so sehr an Diensten festhält, die ihr feindlich gegenüberstehen.
    Ist die Bequemlichkeit, auf einer unbeliebten Plattform zu bleiben, größer als die Mühe, Alternativen zu suchen?

    • Zu sagen, „Alternativen zu finden ist nur wenig Aufwand“, setzt grundlegende technische Kenntnisse voraus.
      Vielen jungen Leuten heute sind sogar Terminal oder Dateipfade fremd.
      Suchen können sie, aber Alternativen selbst einzurichten ist etwas ganz anderes.
      Vor allem fehlt oft überhaupt das Bewusstsein, dass Alternativen existieren könnten.
    • Neben Netzwerkeffekten gibt es auch einen echten Mangel an Alternativen.
      Offene Plattformen wie Matrix haben funktional noch Defizite, und Discord ist derzeit die am wenigsten schlechte Option.
    • Letztlich ist der Grund einfach — Netzwerkeffekte.
      Meine Freunde sind dort, also bin ich auch dort.
    • Die meisten Discord-Communitys stehen nicht unter meiner Kontrolle.
      Jedes Mal, wenn man die Plattform wechselt, schrumpft die Mitgliederzahl und die Gemeinschaft zerfällt.
      Der „geringe Aufwand“ bedeutet in der Praxis, eine Community zu zerstören.
    • Es ist derselbe Grund, warum Menschen mittleren Alters immer noch Facebook Marketplace nutzen.
      Selbst wenn sie andere Plattformen verwenden, bleiben sie am Ende allein zurück.
      Es ist fast unmöglich, alle gleichzeitig zum Wechsel zu bewegen.
  • Ich habe auf Discord das Captcha bestanden,
    aber dann erschien der Fehler {"error":"failed to execute k-id privately action (status=404)"}.
    Ich bin ganz offensichtlich erwachsen, und dieses Verfahren ist einfach absurd.
    Es ist mir egal, wenn ich gesperrt werde.

    • Ich habe denselben Fehler gesehen, aber nach dem Neuladen hat es funktioniert.
    • Anscheinend gibt es einen weiteren Schritt, der im Code angezeigt wird.
  • Zusammenfassung verwandter Meldungen

  • Das Katz-und-Maus-Spiel bei digitaler Altersverifikation ist eine enorme regulatorische Belastung.
    Wenn es so leicht zu umgehen ist, erfüllen Plattformen am Ende nur eine regulatorische Checkbox,
    und die tatsächliche Vertrauensbasis ist äußerst schwach.

    • Es gibt auch einen Weg, mit dem alle zufrieden sein könnten.
      Unternehmen bevorzugen ihn aber nicht, weil sie dabei keine verifizierten Daten erwachsener Nutzer erhalten.
      Siehe dazu Googles Blog zu Age Assurance Europe.
    • Perfekt kann es nicht sein.
      Der Zweck solcher Systeme ist nicht absolute Abschottung, sondern genug Reibung hinzuzufügen, damit die breite Masse sie nicht leicht umgehen kann.