Pertanyaan Seberapa amankah Oauth 2.0 Implicit Grant?


Di Implicit Grant, token akses dikirim kembali di URL panggilan balik. Apakah ini bukan risiko keamanan karena, jika URL callback ini di-cache dalam lompatan. Secara umum disarankan, jangan mengirim data sensitif dalam params URL, dan token akses ini akan menjadi token untuk mengakses semua sumber daya pengguna yang dijamin. Jadi mengapa itu diteruskan sebagai fragmen di URL


8
2018-01-12 20:48


asal


Jawaban:


Mengelaborasi tanggapan @ vlatko ...

Untuk mengurangi risiko pengiriman token dalam fragmen (atau melalui hibah OAuth2 lainnya):

Menerbitkan token akses jangka pendek (seperti @vlatko mengatakan) akan mengurangi dampak dari token yang bocor, tetapi bukan merupakan tindakan pencegahan.


2
2018-01-15 09:26



Hmmm, saya takut ada beberapa kesalahpahaman dalam jawaban di atas. Meskipun string kueri URL dijamin saat menggunakan TLS, dan karenanya token akses dilindungi dalam penerbangan, string ini diekspos di browser pengguna (bagian dari riwayatnya) dan juga di log web browser tujuan. Sebagian besar browser web akan mencatat seluruh URL permintaan yang masuk. Mereka adalah masalah tambahan yang dikenal sebagai masalah kebocoran "referensi" di mana string kueri akan diteruskan ke situs pihak ketiga. Gambaran yang baik dapat ditemukan di:

http://blog.httpwatch.com/2009/02/20/how-secure-are-query-strings-over-https/


6
2017-12-14 03:04



Seperti yang Anda tunjukkan, token dilewatkan pada fragmen URI. Karena browser tidak mengirim fragmen URL ke server HTTP, kemungkinan seseorang akan menguping dan mengambil token akses secara drastis berkurang.

Ada juga langkah-langkah keamanan tambahan, seperti hanya mengeluarkan token akses hidup pendek dalam aliran hibah implisit.

Info lebih lanjut di OAuth2 dokumen model ancaman.


2
2018-01-15 00:30