docs(issues): #0099 - disable_custom_urls set in both clients, with its limits stated
Decision sorb, and it needed two files rather than one: the desktop client loads its own config.json, so changing only element-values.yaml would have hardened the web client and left the distributed builds alone - the themes-rollout trap again. Read out of our own code rather than assumed: the edit button beside the server name disappears, and the 401/403 login error names the server. That is a surface restriction. MatrixChat still accepts hs_url from the query string in two registration flows without consulting the setting, so a crafted link is untouched. Recorded as a narrowing, not a mitigation. GHSA-wrcp-5v3v-3j6v still applies to 1.12.17 and the upstream update in steps 2-4 remains the actual fix.
This commit is contained in:
@@ -81,3 +81,36 @@ ohnehin eine eigene Entscheidung — bei geschlossener Föderation liegt „nein
|
|||||||
|
|
||||||
Schritte 2–4 (Upstream als Remote, Graft-Versuch, Patch-Auftragsverfahren) bleiben
|
Schritte 2–4 (Upstream als Remote, Graft-Versuch, Patch-Auftragsverfahren) bleiben
|
||||||
offen; sie sind der eigentliche Umfang dieses Issues.
|
offen; sie sind der eigentliche Umfang dieses Issues.
|
||||||
|
|
||||||
|
## Teilmaßnahme 2026-08-19 — `disable_custom_urls` an beiden Stellen
|
||||||
|
|
||||||
|
Entscheidung sorb. Gesetzt in **zwei** Dateien, nicht in einer:
|
||||||
|
|
||||||
|
| Ort | Datei | Commit | wirksam |
|
||||||
|
|---|---|---|---|
|
||||||
|
| Web-Client | `gitops:apps/production/custom-configs/element-values.yaml` | `d809b3f` | mit dem Flux-Abgleich (Element liest `config.json` beim Laden) |
|
||||||
|
| Desktop-Client | `ThreadNet-Web:apps/desktop/axion1337/config.json` | `e1e9a19` | **erst mit dem nächsten Desktop-Build** |
|
||||||
|
|
||||||
|
Die zweite Stelle wäre fast durchgerutscht: Der Desktop-Client lädt seine **eigene**
|
||||||
|
`config.json`, nicht die des Web-Deployments — derselbe Fallstrick wie beim
|
||||||
|
Themes-Rollout. Eine Änderung nur in `element-values.yaml` hätte den Web-Client
|
||||||
|
abgesichert und genau die Builds unberührt gelassen, die verteilt werden.
|
||||||
|
|
||||||
|
### Was sie bewirkt — und was nicht
|
||||||
|
|
||||||
|
Im Code unserer Fassung nachgelesen, nicht angenommen:
|
||||||
|
|
||||||
|
- `ServerPicker.tsx`: Der **„Bearbeiten"-Knopf am Servernamen wird nicht gerendert**.
|
||||||
|
Über die Oberfläche ist der Homeserver damit nicht mehr wechselbar.
|
||||||
|
- `ErrorUtils.tsx`: Bei 401/403 benennt die Fehlermeldung den Server, statt generisch
|
||||||
|
zu bleiben — kleiner Nebengewinn für den Alltag.
|
||||||
|
|
||||||
|
⚠️ **Es ist eine Oberflächen-Sperre, keine technische.** `MatrixChat.tsx` übernimmt
|
||||||
|
`hs_url` weiterhin aus der URL — in zwei Registrierungs-Flüssen (mobile Registrierung,
|
||||||
|
Bestätigungslink) und **ohne** `disable_custom_urls` zu prüfen. Ein präparierter Link
|
||||||
|
bleibt davon unberührt.
|
||||||
|
|
||||||
|
**Für `GHSA-wrcp-5v3v-3j6v` heißt das:** Der bequeme, sichtbare Weg zu einem fremden
|
||||||
|
Homeserver ist weg, alle Wege sind es nicht. Die Maßnahme senkt die Wahrscheinlichkeit,
|
||||||
|
dass jemand versehentlich oder auf Zuruf woanders landet — sie ist **kein Ersatz** für
|
||||||
|
das Upstream-Update. Das bleibt Schritt 2–4 dieses Issues.
|
||||||
|
|||||||
Reference in New Issue
Block a user