„`html
Zusammenfassung
In der CowAgent-Komponente version 2.1.0 des Projekts zhayujie chatgpt-on-wechat wurde eine Authentifizierungslücke identifiziert. Die Schwachstelle betrifft die Funktion verify_server() in der Datei channel/wechatmp/common.py und ermöglicht es Angreifern, die WeChat-Authentifizierung zu umgehen, indem der Parameter wechatmp_token manipuliert wird. Die Lücke hat einen CVSS-Score von 6.5 und wird als Medium-Severity klassifiziert.
Betroffene Systeme
Betroffen ist die CowAgent-Komponente in Version 2.1.0 und älter. Das Projekt zhayujie chatgpt-on-wechat ist ein Open-Source-Projekt, das WeChat-Integration für ChatGPT-Funktionalität bereitstellt. Alle Installationen dieser Version mit aktiviertem WeChat-Endpoint sind potentiell vulnerabel.
Technische Details
Die Schwachstelle existiert im /wx-Endpoint der Anwendung. Der fehlende oder unzureichende Check des Parameters wechatmp_token fĂĽhrt dazu, dass die AuthentifizierungsprĂĽfung ignoriert wird. Statt einen gĂĽltigen Token zu validieren, fĂĽhrt das System einen Signature-Check durch, der zu einem vorhersehbaren Hash degeneriert und somit umgangen werden kann.
Angreifer können diese Lücke remote exploitieren, ohne physischen Zugriff oder erhöhte Berechtigungen zu benötigen. Der öffentlich verfügbare Exploit erhöht das Risiko für produktive Systeme erheblich.
Empfohlene Massnahmen
- Sofortiges Update auf Version 2.1.1 oder neuer durchfĂĽhren
- Patch-Commit 3d7c68bac6ee74fad63f43cf99e45c62e202ed55 anwenden
- ĂśberprĂĽfen, ob
wechatmp_tokenkorrekt konfiguriert ist und nicht leer bleibt - Netzwerkzugriff auf den
/wx-Endpoint einschränken, falls möglich - Access-Logs auf verdächtige Aktivitäten überprüfen
Bewertung
Die Schwachstelle stellt ein erhebliches Sicherheitsrisiko dar, insbesondere da ein öffentlicher Exploit vorhanden ist. Das Upgrade auf Version 2.1.1 implementiert einen expliziten Non-Empty-Check für wechatmp_token und führt zu einem Fail-Closed-Verhalten mit HTTP 403-Response bei fehlenden oder leeren Token-Werten. Dies ist die empfohlene Lösung.
„`