Manipulate (21.10.2026)
-
20.10.2026, 02:12 #1Nachrichtendienst
- Registriert seit
- 17.12.2011
- Beiträge
- 158
Thanked 90 Times in 62 Posts
Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
Bots sind rein theoretisch wieder möglich. Wer daran weiter arbeiten möchte, kann dies tun
Programmiersprache: Python
Knuddels Desktop Client – Protokoll 260836
Client: knuddels_desktop_client_re.py v1.0.0
Server: chat.knuddels.de:2710
Transport: Raw TCP · Modus: Receive-only
1. Ablauf
Code:TCP-Verbindung → DH-Schlüsselaustausch + ECDSA-Signaturprüfung → AES-128-GCM-Sitzungsschlüssel → t: Client-/Buildinitialisierung → q(-297292011): Bootstrap bestätigen → k: Prelogin ← Challenge, Channel, Eingangsmaske, Token → n: challengeabhängiger Login ← verschlüsselte Serverframes + Präfix-XOR ← CHANGE_PROTOCOL: dynamisches Schema → q(-1980074858): neues Schema bestätigen ← PROTOCOL_CONFIRMED ← Login-Ergebnis → bei Erfolg: dauerhafter Empfang + Keepalive
2. Frame-VerarbeitungCode:kompletten t → q → k → Challenge → n-Ablauf
Die Eingangsmaske wird ausschließlich auf den vorhandenen Präfix angewandt, nicht zyklisch wiederholt. AES-GCM verwendet einen zufälligen 12-Byte-Nonce und einen 16-Byte-Tag.Code:Ausgehend: UTF-16 → statischer Huffman-/Token-Codec → AES-128-GCM → Desktop-Längenpräfix → TCP Eingehend: TCP → Längenpräfix entfernen → AES-GCM authentifizieren/entschlüsseln → einmaliges Präfix-XOR der Eingangsmaske → Huffman-Decodierung → Legacy- oder Schemaformat
3. Loginbewertung
- []Erfolgreich: LOGIN_SUCCESS, CHAT_ENTER oder Legacy-Opcode a.
[]Fehlgeschlagen: LOGIN_FAILED, entsprechender DISCONNECT oder eindeutiger Legacy-Fehler. - Unbestimmt: Transporterfolg oder uneindeutige Serverantwort ohne bestätigte Authentifizierung.
4. Dynamisches Protokoll
Der Client verarbeitet CHANGE_PROTOCOL, validiert das Schema vollständig und installiert es atomar. Anschließend bestätigt er den neuen Hash -1980074858. Ungültige Schema-Updates werden nicht aktiviert.
Relevante Ereignisse:
5. Keepalive und GrenzenCode:949 LOGIN_SUCCESS 950 LOGIN_FAILED 1005 CHAT_ENTER 1007 CHAT_PUBLICMESSAGE 1011 CHAT_PRIVATMESSAGE 1020 CHAT_ACTION 1146 DISCONNECT 1147 PING 1156 SYSTEM_MSG 1159 CHANNEL_MEMBERS
- []Server-Heartbeat , mit Token → Clientantwort h mit Token.
[]Nach 60 Sekunden ohne eigenen Versand: h mit -.
[]Kein Pong innerhalb von 25 Sekunden: keepalive_timeout.
[]Der Client sendet keine Chattexte oder Benutzerbefehle. - Maximaler verschlüsselter Frame: 2 MiB; weitere Grenzen gelten für Schema, Arrays, Rekursion und Eingaben.
https://youtube.com/shorts/unr93UMRi...hcUuGEF-Mh2zAz
Mit Hilfe von KI erstellt
Datei (Single File):
knuddels_desktop_client_re.zipGeändert von Integer (20.10.2026 um 17:11 Uhr)
-
The Following User Says Thank You to Integer For This Useful Post:
-
20.10.2026, 15:51 #2Nachrichtendienst
- Registriert seit
- 17.12.2011
- Beiträge
- 158
Thanked 90 Times in 62 Posts
AW: Knuddels Protokoll 260836 – Handshake, Login, Receive & Sent Client v1.1.0
Version 1.1.0 – Enthält:
☑ Server-Heartbeat mit Token → Clientantwort h mit Token
☑ Nach 60 Sekunden ohne eigenen Versand: h mit -
☑ Pong innerhalb von 25 Sekunden: keepalive_timeout
☑ Client sendet Chattexte oder Benutzerbefehle
knuddels_desktop_client_re110.zipGeändert von Integer (20.10.2026 um 17:13 Uhr)
-
20.10.2026, 23:17 #3Nachrichtendienst
- Registriert seit
- 09.11.2011
- Beiträge
- 143
Thanked 155 Times in 61 Posts
-
20.10.2026, 23:38 #4
AW: Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
Man kann auch die GraphQL API vom K3 Clienten konsumieren, damit lässt sich auch sehr viel realisieren. So mach ich es bisher.
Ansonsten habe ich mich mal daran gesetzt, den alten Weg zu gehen über javassist + Bytecode Manipulation, damit die StApp manipuliert ist. Wir sind von der Analyse auf jeden Fall zu den selben Entschlüssen gekommen, verfolgen aber indirekt andere Ansätze. Deins ist headless, meins ist dann die normale StApp, nur eben manipuliert.Geändert von Manipulate (20.10.2026 um 23:47 Uhr)

-
20.10.2026, 23:47 #5Nachrichtendienst
- Registriert seit
- 17.12.2011
- Beiträge
- 158
Thanked 90 Times in 62 Posts
-
20.10.2026, 23:50 #6
AW: Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
Ja, ist sie. Man kann beispielsweise nicht direkt in Spiele Channel gehen wie 8-Ball, 9-Ball, Mafia oder ähnliches. UserApps kann man dadurch trotzdem angehen und mit denen interagieren.
Die Frage ist dann halt, was du damit dann wieder machen wollen würdest, die alten Zeiten sind vorbei, dass es sich lohnen würde Spiele-Bots zu erstellen.
-
20.10.2026, 23:52 #7Nachrichtendienst
- Registriert seit
- 17.12.2011
- Beiträge
- 158
Thanked 90 Times in 62 Posts
AW: Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
-
20.10.2026, 23:58 #8
AW: Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
Ist ja 'ne gute Sache, Dokumentation ist super. Ich wollte deine Arbeit damit nicht schlecht reden, versteh mich bitte nicht falsch.
Wir haben nur unterschiedliche herangehensweisen gehabt, meine Erkenntnisse sind nämlich (noch) closed-source. Wer weiß, ob ich sie mal veröffentliche. Glaube Bizzi hat mal was veröffentlicht, was meinem relativ ähnlich war.

-
The Following User Says Thank You to Manipulate For This Useful Post:
Integer (21.10.2026)
-
22.10.2026, 18:26 #9U-Labs Elite
- Registriert seit
- 28.10.2011
- Beiträge
- 635
Thanked 294 Times in 175 Posts
AW: Knuddels Protokoll 260836 – Handshake, Login & Receive-only-Client v1.0.0
Ich hab verschiedene Ansätze mal gemacht, aber irgendwann nicht mehr weiterverfolgt - alleine, weil die Interesse sowieso verschwindend gering ist.
Hier mal eine Auflistung für mögliche "Einstiegspunkte" und verschiedene Tools:
1. Browser-Extension (via abfangen von Networking): https://github.com/Bizarrus/K3-Bot/t...er%20Extension
2. Standalone (via GraphQL/REST-API): https://github.com/Bizarrus/K3-Bot/tree/main/Standalone
- Hier sind sogar verschiedene Bots implementiert (Quest-System Solver, Daten-Crawler, automatisches DailyLogin, StayOnline
- Für den Crawler gibts ein extra Webinterface: https://github.com/Bizarrus/K3-Bot/t...20Webinterface
- Nicht zu empfehlen, Knuddels merkte während der Enwtwicklung, dass am Tag tausende Login-Versuche stattfanden, hier müsste das Session-Holding überprüft/korrigiert werden.
3. Proxy (TCP): https://github.com/Bizarrus/Knoxy
- Auf Basis von Javascript
- Da "Proxy", kann man sich hier mit StandaloneApp (Java) einloggen
- Danke hier an SeBiTM für eine Teil-Contribution
- Mit Plugin-System
4. Proxy: https://github.com/Bizarrus/Klass
- Auf Basis von C#
5. AppletInfo auslesen (für Java-Manipulation): https://github.com/Bizarrus/Knuddels-AppletInfo
6. Register (mittels Proptobuf, glaube das geht aber nur noch über GraphQL): https://github.com/Bizarrus/Knuddels-Protobuf-Register
Nummer 5. wurde damals in der Szene manuell per Hand durchgeführt und in die jeweiligen Libs für die manipulierten Java-Clienten eingearbeitet.
Bisher war es relativ "schwierig", automatisiert mit rudimentären Möglichkeiten nachzuverfolgen - schon alleine weil Knuddels mit Absicht hier Verschleierungstechniken angewendet hatte, die z.B. mehrere gleiche Methoden mit identischen Überladungen bieteten. Mit KI sieht das sicherlich anders aus. Die Idee war irgendwann mal, das ganze zu automatisieren, irgendjemand hatte da auch schonmal zu BC-Zeiten soetwas gemacht, glaube ich.
-
The Following 2 Users Say Thank You to Bubble Gum For This Useful Post:
Integer (22.10.2026), Manipulate (22.10.2026)
Ähnliche Themen
-
NodeJS Knuddels Client (HTMLChat)
Von patlux im Forum SourcecodeAntworten: 0Letzter Beitrag: 02.12.2014, 22:41 -
Tor als Socks Proxy Handshake Fetching socks handshake failed
Von !lkay im Forum .NetAntworten: 1Letzter Beitrag: 21.04.2013, 15:59 -
Frage Knuddels Client
Von Borussia Dortmund im Forum Knuddels BotsAntworten: 1Letzter Beitrag: 14.03.2012, 20:44 -
[HELP] Knuddels Bot Client Programmierung
Von Bielefelder1989 im Forum Knuddels ProgrammierungAntworten: 9Letzter Beitrag: 07.03.2011, 17:53 -
Knuddels Login
Von Resident im Forum HochsprachenAntworten: 5Letzter Beitrag: 25.02.2011, 16:07
Stichworte
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.
Zitieren