Apakah aman untuk dipercaya $_SERVER['REMOTE_ADDR']
? Bisakah itu diganti dengan mengubah header permintaan atau sesuatu seperti itu?
Amankah menulis sesuatu seperti itu?
if ($_SERVER['REMOTE_ADDR'] == '222.222.222.222') { // my ip address
$grant_all_admin_rights = true;
}
php
security
ip-address
Cahaya Perak
sumber
sumber
$_SERVER['REMOTE_ADDR']
variabel dengan menyetel header permintaan HTTP. PHP secara otomatis mengawali semua header permintaan HTTP denganHTTP_
saat membuat kunci di$_SERVER
superglobal.Jawaban:
Ya, aman. Ini adalah IP sumber dari koneksi TCP dan tidak dapat diganti dengan mengubah header HTTP.
Satu kasus yang mungkin ingin Anda khawatirkan adalah jika Anda berada di belakang proxy balik dalam hal ini REMOTE_ADDR akan selalu menjadi IP server proxy dan IP pengguna akan disediakan dalam header HTTP (seperti X-Forwarded-For ). Tetapi untuk kasus penggunaan normal, REMOTE_ADDR baik-baik saja.
sumber
$_SERVER['REMOTE_ADDR']
adalah alamat IP tempat koneksi TCP masuk. Meskipun secara teknis mungkin untuk memalsukan alamat IP secara dua arah di Internet (dengan mengumumkan rute busuk melalui BGP), serangan tersebut kemungkinan besar akan terlihat dan tidak tersedia untuk penyerang biasa - pada dasarnya, penyerang Anda harus memiliki kendali atas ISP atau operator. Tidak ada serangan spoofing searah yang layak terhadap TCP (belum). Spoofing IP dua arah sepele di LAN.Ketahuilah juga bahwa ini mungkin bukan IPv4, tetapi alamat IPv6. Pemeriksaan Anda saat ini baik-baik saja dalam hal itu, tetapi jika Anda ingin memeriksa itu
1.2.3.4
hanya terjadi di mana saja di dalam$_SERVER['REMOTE_ADDR']
, penyerang dapat langsung terhubung dari2001:1234:5678::1.2.3.4
.Singkatnya, untuk apa pun selain aplikasi kritis (perbankan / militer / potensi kerusakan> 50.000 €), Anda dapat menggunakan alamat IP jarak jauh jika Anda dapat mengecualikan penyerang di jaringan lokal Anda.
sumber
$_SERVER['REMOTE_ADDR']
alamat IP tempat koneksi TCP masuk sepenuhnya bergantung pada SAPI Anda.you have been kicked off the wlan
paket spoofing mudah dibuat dengan alat yang tepat. googleWPA downgrade test
, misalnyaSeperti disebutkan di atas, ini tidak sepenuhnya aman. Tapi itu tidak berarti, Anda tidak boleh menggunakannya. Pertimbangkan untuk menggabungkan ini dengan beberapa metode otentikasi lain, misalnya memeriksa nilai COOKIE.
sumber