Profile data are retrieved from ID token without verifying the token
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- objective-c
- Ambito
- authentication, mobile-dev, security
Direzione di ricerca
Inizia da GoogleSignIn/Sources/GIDSignIn.m intorno alla riga 803 e confronta la gestione attuale di ID-token con le indicazioni backend-auth collegate. Esamina il riferimento PKCE e determina il modello previsto di integrità e fiducia per i client mobili e desktop. Il lavoro è considerato completato quando sarà stato concordato un approccio alla verifica prima di poter definire l’ambito dell’implementazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
Bug location: https://github.com/google/GoogleSignIn-iOS/blob/7932d33686c1dc4d7df7a919aae47361d1cdfda4/GoogleSignIn/Sources/GIDSignIn.m#L803
Here, profile data (email, name, profile picture, etc.) are being retrieved from the ID Token without verifying the integrity of the token. Ideally, an ID Token would be sent over to the backend server, which first verifies the signature of the token before using the profile information from the payload.
But, in this case, since we are directly retrieving the sensitive profile information (from ID Token's payload) to sign in a user, should we not verify the token first? Especially for mobile or desktop apps (which is the case here) where intermediary-free TLS cannot always be guaranteed?
Additionally, we are not using any CSRF protection (e.g, PKCE), so I think it is critical to verify the integrity of the ID Token before accepting the profile information from it.
- Lingua principale
- Objective-C
- Stelle
- 751
- Fork
- 282
- Merge medio
- 2g 15h
- PR unite (30g)
- 9
Guida per i contributori
Apri la guida per i contributori
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 google/GoogleSignIn-iOS
-
enhancement triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
google/GoogleSignIn-iOS#621 ·
-
enhancement triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
google/GoogleSignIn-iOS#620 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
google/GoogleSignIn-iOS#440 · 4 commenti · 2 reazioni ·
-
enhancement triage
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
google/GoogleSignIn-iOS#611 ·
-
Remove Cocoapods Support Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
google/GoogleSignIn-iOS#607 ·
Tutte le issue di google/GoogleSignIn-iOS
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
macOS下查找brew::ncurse失败 Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
noah-nuebling/mac-mouse-fix#2054 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
obsproject/obs-studio#13918 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
HigherOrderCO/Bend#842 · 2 commenti ·