Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 10415|Jawab: 0

Analisis keamanan OAuth 2.0 seluler dan desktop dan mekanisme CodeVerifier

[Salin tautan]
Diposting pada 28/11/2020 20.51.48 | | | |
Aplikasi desktop dan seluler adalah browser yang disematkan dalam aplikasi untuk membantu menyelesaikan seluruh proses OAuth 2.0

Prosesnya ditunjukkan pada gambar



OAuth2.0 web
1) Kembalikan authCode ke Web redirectUri yang ditentukan (URI ini dikonfigurasi oleh pengembang aplikasi)
2) Untuk mengubah token, Anda perlu meneruskan clientId dan clientSecret untuk memverifikasi identitas klien (diperoleh oleh layanan backend aplikasi)

Memperhatikan dua poin di atas,
1) Karena bukan deteksi pengalihan aplikasi web yang tidak valid
2) Karena tidak ada layanan backend clientSecret tidak aman
Kemudian serangan yang mungkin kita temui adalah seperti yang ditunjukkan pada gambar di bawah ini, mungkin ada aplikasi jahat yang mencegat authCode untuk mengirim pesan ke AuthorizationServer untuk mendapatkan token, sehingga token diperoleh tanpa otorisasi pelanggan ke aplikasi tetapi ke otorisasi aplikasi resmi lainnya, mencapai tujuan serangan.



Solusi:

1. Klien menghasilkan string: verifikasi kode acak dan menyimpan string acak ini
code_challenge = transformasi(code_verifier, [Plain| S256])
Jika metode transformasi biasa, maka tantangan kode setara dengan pemverifikasi kode
Jika metode transformasinya adalah S256, maka tantangan kode sama dengan hash Sha256 dari pemverifikasi kode
2. Bawa tantangan kode ke permintaan kode otorisasi dan cara membuat tantangan kode. Keduanya terikat pada kode otorisasi yang dikeluarkan oleh server
3. Setelah mendapatkan kode otorisasi, klien membawa pemverifikasi kode yang awalnya dihasilkan saat menukar kode otorisasi dengan Token Akses. Server menghitung pemverifikasi kode sesuai dengan metode transformasi terikat, membandingkan hasil yang dihitung dengan tantangan kode terikat, dan mengeluarkan Token Akses jika konsisten.




Mantan:.NET/C# menghasilkan file CS dari file XML WSDL
Depan:ASP.NET Inti (iii) Membuat instans secara dinamis menggunakan ActivatorUtilities
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com