`Referrer-Policy: no-referrer` breaks `/_logout`?
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- haskell, nginx
- Ambito
- authentication, backend
Direzione di ricerca
Inizia da src/Network/Gitit/Authentication.hs intorno alle righe 404-415 e riproduci il flusso di logout dietro nginx con Referrer-Policy: no-referrer. Traccia la gestione del Referer mancante; il lavoro è completato quando /_logout non esegue più un redirect verso se stesso quando non viene inviato alcun Referer, mantenendo invariato il comportamento esistente del redirect di logout.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I have Debian 12 with gitit 0.15.1.0+dfsg-2+b6 and nginx 1.22.1-9 (doing proxy_pass http://127.0.0.1:5001/).
I was messing with https://infosec.mozilla.org/guidelines/web_security.html#referrer-policy
I found that with add_header Referrer-Policy no-referrer always; in nginx.conf,
when I tried to logout, the /_logout URL returned a 303 redirect back to itself.
This happened over and over until Firefox reached a redirect limit.
It looks like add_header Referrer-Policy same-origin always; does not exhibit this issue.
I think if there is no Referer, _logout should redirect to / rather than itself?
I looked at
https://github.com/jgm/gitit/blob/0.15.1.0/src/Network/Gitit/Authentication.hs#L404-L415
but I'm not immediately sure what ought to go in the dest <- to implement "there is no referer".
This is a weird edge case, so I don't mind if you just say "so, don't do that" and close this ticket :-)
- Lingua principale
- Haskell
- Stelle
- 2.3k
- Fork
- 231
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di jgm/gitit
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
No borders in tables.Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 25/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
Issue simili
-
bug good-title pdd
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 82/100
objectionary/phino#1630 ·
I maintainer di solito rispondono entro 1 giorno