Learn-json-web-tokens: Kerentanan keamanan

Dibuat pada 4 Jan 2019  ·  3Komentar  ·  Sumber: dwyl/learn-json-web-tokens

Sekedar saran: akan lebih baik untuk menambahkan beberapa informasi tentang masalah keamanan dalam metode penyimpanan JWT yang berbeda di sisi klien (cookie/localStorage) - XSS, CSRF, dll.

discuss enhancement help wanted

Komentar yang paling membantu

@nelsonic

Masalah keamanan yang berlaku untuk JWT sama dengan skema token lainnya.
Jika pengguna jahat dapat menjalankan serangan XSS pada domain, mereka akan dapat memperoleh JWT dan menggunakannya untuk menyamar sebagai pengguna terlepas dari cara penyimpanannya di klien.
JS berbahaya dapat membaca dan membocorkan cookie dan penyimpanan lokal dengan mudah.

Saya setuju sebagian. Anda memiliki sesuatu seperti cookie httpOnly dan secure yang mencegah penyerang memperoleh JWT Anda. Tetapi saya sepenuhnya setuju bahwa jika Anda terbuka terhadap serangan XSS, ini tidak melindungi Anda dari apa pun karena seseorang dapat melakukan hal-hal atas nama pengguna (tidak mencuri token, tetapi menyuntikkan skrip berbahaya).

Jadi saya kira pada akhirnya, tidak masalah jika Anda menggunakan localStorage atau cookie - jika Anda terbuka terhadap serangan OWASP - Anda kacau. Tetapi jika Anda terlindungi darinya - Anda harus aman dengan kedua metode tersebut.

Saya ingin menyiapkan beberapa PR tetapi saya sulit tepat waktu sekarang dan akan gratis hanya dalam 1-2 bulan ke depan. Jika seseorang tidak akan berlari lebih cepat dari saya, saya akan menyiapkan beberapa PR

Semua 3 komentar

@sarneeh terima kasih telah membuka masalah ini. 👍
Jika Anda punya waktu untuk membuat Permintaan Tarik, silakan lakukan! (_Anda memiliki akses tulis ke repositori ini_)

Masalah keamanan yang berlaku untuk JWT sama dengan skema token lainnya.
Jika pengguna jahat dapat menjalankan serangan XSS pada domain, mereka akan dapat memperoleh JWT dan menggunakannya untuk menyamar sebagai pengguna terlepas dari cara penyimpanannya di klien.
JS berbahaya dapat membaca dan membocorkan cookie dan penyimpanan lokal dengan mudah.

Kami harus memberi tahu orang yang menggunakan JWT bahwa mereka tidak melindungi dari serangan OWASP dan hanya merupakan cara _nyaman_ untuk mentransmisikan klaim/data yang ditandatangani. 📝

@nelsonic

Masalah keamanan yang berlaku untuk JWT sama dengan skema token lainnya.
Jika pengguna jahat dapat menjalankan serangan XSS pada domain, mereka akan dapat memperoleh JWT dan menggunakannya untuk menyamar sebagai pengguna terlepas dari cara penyimpanannya di klien.
JS berbahaya dapat membaca dan membocorkan cookie dan penyimpanan lokal dengan mudah.

Saya setuju sebagian. Anda memiliki sesuatu seperti cookie httpOnly dan secure yang mencegah penyerang memperoleh JWT Anda. Tetapi saya sepenuhnya setuju bahwa jika Anda terbuka terhadap serangan XSS, ini tidak melindungi Anda dari apa pun karena seseorang dapat melakukan hal-hal atas nama pengguna (tidak mencuri token, tetapi menyuntikkan skrip berbahaya).

Jadi saya kira pada akhirnya, tidak masalah jika Anda menggunakan localStorage atau cookie - jika Anda terbuka terhadap serangan OWASP - Anda kacau. Tetapi jika Anda terlindungi darinya - Anda harus aman dengan kedua metode tersebut.

Saya ingin menyiapkan beberapa PR tetapi saya sulit tepat waktu sekarang dan akan gratis hanya dalam 1-2 bulan ke depan. Jika seseorang tidak akan berlari lebih cepat dari saya, saya akan menyiapkan beberapa PR

@sarneeh terima kasih telah membuka masalah ini.
Jika Anda punya waktu untuk membuat Permintaan Tarik, silakan lakukan! (_Anda memiliki akses tulis ke repositori ini_)

Masalah keamanan yang berlaku untuk JWT sama dengan skema token lainnya.
Jika pengguna jahat dapat menjalankan serangan XSS pada domain, mereka akan dapat memperoleh JWT dan menggunakannya untuk menyamar sebagai pengguna terlepas dari cara penyimpanannya di klien.
JS berbahaya dapat membaca dan membocorkan cookie dan penyimpanan lokal dengan mudah.

Kami harus memberi tahu orang yang menggunakan JWT bahwa mereka tidak melindungi dari serangan OWASP dan hanya merupakan cara _nyaman_ untuk mentransmisikan klaim/data yang ditandatangani.

Seperti yang dikatakan di atas cookie dapat memiliki opsi httpOnly.
Menurut artikel ini, sangat tidak aman menggunakan penyimpanan lokal daripada cookie httponly

Meskipun saya merasa telah menjelaskan kepada diri saya sendiri bahwa Anda tidak boleh menyimpan informasi sensitif di penyimpanan lokal di bagian sebelumnya, saya merasa perlu untuk secara khusus memanggil Token Web JSON (JWT).
Pelanggar keamanan terbesar yang saya lihat hari ini adalah mereka yang menyimpan JWT (data sesi) di penyimpanan lokal. Banyak orang tidak menyadari bahwa JWT pada dasarnya sama dengan nama pengguna/kata sandi.
Jika penyerang bisa mendapatkan salinan JWT Anda, mereka dapat membuat permintaan ke situs web atas nama Anda dan Anda tidak akan pernah tahu. Perlakukan JWT Anda seperti Anda menggunakan nomor kartu kredit atau kata sandi: jangan pernah menyimpannya di penyimpanan lokal.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

nelsonic picture nelsonic  ·  5Komentar

rhewitt22 picture rhewitt22  ·  5Komentar

nelsonic picture nelsonic  ·  4Komentar

KumarS-Naveen picture KumarS-Naveen  ·  3Komentar

NE-SmallTown picture NE-SmallTown  ·  5Komentar