Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pembolehubah $_SERVER yang manakah Selamat Digunakan dalam PHP?

Pembolehubah $_SERVER yang manakah Selamat Digunakan dalam PHP?

DDD
DDDasal
2024-11-11 00:55:03467semak imbas

Which $_SERVER Variables Are Safe to Use in PHP?

Mengenalpasti Pembolehubah $_SERVER Selamat

Penyerang boleh mengeksploitasi pembolehubah yang boleh dikawal oleh pengguna, menjadikannya tidak selamat atau "tercemar." Artikel ini bertujuan untuk menyediakan senarai komprehensif pembolehubah $_SERVER dan tahap keselamatan masing-masing.

Pelayan Dikawal

Pembolehubah ini ditetapkan oleh pelayan dan tidak terjejas oleh pengguna input:

  • 'GATEWAY_INTERFACE'
  • 'SERVER_ADDR'
  • 'SERVER_SOFTWARE'
  • 'DOCUMENT_ROOT'
  • 'SERVER_ADMIN'
  • 'SERVER_SIGNATURE'

Sebahagiannya Dikawal Pelayan

Pembolehubah ini bergantung pada permintaan pelanggan tetapi mempunyai nilai sah yang terhad, menjadikannya boleh dipercayai:

  • 'HTTPS'
  • 'REQUEST_TIME'
  • 'REMOTE_ADDR' (Disahkan oleh TCP/IP berjabat tangan)
  • 'REMOTE_HOST' (Berpotensi boleh ditipu)
  • 'REMOTE_PORT'
  • 'SERVER_PROTOCOL'
  • 'HTTP_HOST' (Jika tidak dikendalikan oleh pelayan)
  • 'SERVER_NAME'
  • 'SCRIPT_FILENAME'
  • 'SERVER_PORT'
  • 'SCRIPT_NAME'

Pengguna Sewenang-wenangnya Dikawal

Pembolehubah ini terdedah kepada manipulasi pengguna:

  • 'argv', 'argc'
  • 'REQUEST_METHOD'
  • 'QUERY_STRING'
  • 'HTTP_ACCEPT'
  • 'HTTP_ACCEPT_CH ARSET'
  • 'HTTP_ACCEPT_ENCODING'
  • 'HTTP_ACCEPT_LANGUAGE'
  • 'HTTP_CONNECTION'
  • 'HTTP_REFERER'
  • 'HTTP_USER_AGENT'
  • 'AUTH_TYPE'
  • 'PHP_AUTH_DIGEST'
  • 'PH P_AUTH_USER'
  • 'PHP_AUTH_PW'
  • 'PATH_INFO'
  • 'ORIG_PATH_INFO'
  • 'REQUEST_URI' (Mungkin mengandungi data tercemar)
  • 'PHP_SELF' (Mungkin mengandungi data tercemar)
  • 'PATH_TRANSLATED'
  • Mana-mana nilai 'HTTP_' lain

Persekitaran Pembolehubah

Keselamatan pembolehubah persekitaran bergantung pada sumbernya. Ia boleh terdiri daripada kawalan pelayan sepenuhnya kepada kawalan pengguna sepenuhnya.

Atas ialah kandungan terperinci Pembolehubah $_SERVER yang manakah Selamat Digunakan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn