Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Account for hosts with/without ports in origin check

Offen
#6,166 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
typescript
Bereich
security

Rechercherichtung

Beginne damit, den Vergleich von Origin und Host mit der bereitgestellten NGINX proxy_set_header-Konfiguration zu reproduzieren, und prüfe anschließend die verwandten Issues 6161, 6023, 6064 und 6014. Bestimme die vorgesehene Behandlung von Standard- und Nichtstandard-Ports; abgeschlossen ist die Aufgabe, wenn die Origin-Prüfung für WebSockets gültige übereinstimmende Konfigurationen konsistent akzeptiert, ohne ihre Sicherheitsgarantien zu schwächen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug
Is there an existing issue for this?
  • I have searched the existing issues
OS/Web Information

N/A

Steps to Reproduce

You can simulate with this NGINX config:

proxy_set_header X-Forwarded-Host $host:$server_port;
Expected

If your origin is https://domain.tld and your host is domain.tld:443 the check should pass. Same for http://domain.tld and domain.tld:80.

Also I think NGINX's $host actually does not include ports so it will fail if your config only has $host and if you host on a port other than 443 and 80 since you would get an origin like https://domain.tld:8080 and the host would be domain.tld.

To fix the first we could just check the protocol on the origin and then add/remove 443 or 80.

For the second we could ignore the port altogether since I think the vulnerability does not happen across ports...

But I am not sure we should do anything; maybe the correct course of action is to edit the proxy config so the host and origin headers match. I have looked at other software but they all seem to do exact matches without messing around with the port. We could just edit the documentation to use $http_host.

Actual

The origin and domain are matched exactly so they do not match. Ends up causing the web sockets to fail with 1006.

Logs

No response

Screenshot/Video

No response

Does this issue happen in VS Code or GitHub Codespaces?
  • I cannot reproduce this in VS Code.
  • I cannot reproduce this in GitHub Codespaces.
Are you accessing code-server over HTTPS?
  • I am using HTTPS.
Notes

https://github.com/coder/code-server/issues/6161

Might be causing issues reported in https://github.com/coder/code-server/issues/6023 and https://github.com/coder/code-server/issues/6064 as well.

And possibly https://github.com/coder/code-server/issues/6014

Vorherrschende Sprache
TypeScript
Sterne
79.4k
Forks
6.9k
Ø Merge
2 T. 13 Std.
Gemergte PRs (30 T.)
39

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus coder/code-server

Alle Issues in coder/code-server

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.