Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk melindungi daripada pemalsuan permintaan lintas tapak (CSRF) dalam PHP?
1. Corak Token Penyegerakan:
Ini adalah kaedah yang paling biasa dan berkesan. Pelayan menghasilkan token yang unik dan tidak dapat diramalkan (selalunya rentetan panjang, rawak) dan menyimpannya dalam pemboleh ubah sesi di sisi pelayan dan juga memasukkannya sebagai medan tersembunyi dalam borang HTML yang dikemukakan oleh pengguna. Apabila borang diserahkan, pelayan mengesahkan bahawa token yang diserahkan sepadan dengan token yang disimpan dalam sesi. Jika mereka tidak sepadan, permintaan itu ditolak sebagai cemara yang berpotensi. Double Hantar Cookie: Kaedah ini melibatkan menyimpan token yang dijana secara rawak dalam medan bentuk tersembunyi dan kuki. Pelayan membandingkan nilai kedua -duanya. Ini menambah lapisan tambahan keselamatan sebagai serangan CSRF perlu memanipulasi kedua -dua bentuk dan cookie.
3. Pemeriksaan pengepala rujukan HTTP: Walaupun bukan kaedah mandiri yang boleh dipercayai (sebagai tajuk rujukan boleh dimanipulasi dengan mudah), ia boleh digunakan sebagai langkah tambahan. Semak pembolehubah untuk memastikan permintaan itu berasal dari domain anda sendiri. Walau bagaimanapun, sentiasa bergantung pada kaedah lain sebagai pertahanan utama, kerana kaedah ini mudah dilangkau. Amalan terbaik melibatkan pendekatan berlapis menggabungkan beberapa kaedah untuk keselamatan maksimum:
! Pastikan untuk menjana token yang benar-benar rawak menggunakan penjana nombor rawak yang selamat secara kriptografi (sepertirandom_bytes()
Atas ialah kandungan terperinci Bagaimana untuk melindungi daripada pemalsuan permintaan lintas tapak (CSRF) dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!