it-swarm-id.com

Apa yang dimaksud dengan "disanitasi" (dalam dokumentasi api)?

Hai, saya sering melihat kata "sanitized" di Drupal dokumentasi API.

Misalnya, halaman ini: theme_username ($ variabel)

$ variable Array asosiatif yang mengandung:

akun: Objek pengguna untuk memformat.

nama: Nama pengguna, disanitasi .

ekstra: Teks tambahan untuk ditambahkan ke nama pengguna, disanitasi .

Apa artinya dibersihkan dalam konteks?

5
gilzero

'Sanitisasi' adalah penghapusan data berbahaya dari input pengguna, seperti pengiriman formulir atau mungkin lebih sederhana ...

Pembersihan input pengguna untuk menghindari konflik kode (id duplikat misalnya), masalah keamanan (kode xss dll), atau masalah lain yang mungkin timbul dari input non-standar & kesalahan manusia/penyimpangan.

Tergantung pada konteksnya, sanitasi akan mengambil beberapa bentuk yang berbeda. Bisa semudah menghapus vulgaritas & simbol aneh dari teks untuk menghapus upaya injeksi SQL dan upaya intrusi kode berbahaya lainnya.

Anda bisa mendapatkan gambaran tentang Sanitasi apa yang digeneralisasi menjadi drupal inti dengan melihat: http://api.drupal.org/api/drupal/includes--common.inc/group/sanitasi/7

Misalnya, fungsi check_plain () akan:

Menyandikan karakter khusus dalam string teks biasa untuk ditampilkan sebagai HTML.

Juga memvalidasi string sebagai UTF-8 untuk mencegah serangan skrip lintas situs di Internet Explorer 6.

atau filter_xss () yang:

Memfilter string HTML untuk mencegah kerentanan lintas-situs-scripting (XSS).

8
electblake

Gagasan kunci dengan Drupal penanganan input adalah bahwa data apa pun diterima dari pengguna, tetapi kami pastikan untuk menampilkan ke layar (atau digunakan dalam permintaan basis data) hanya data "bersihan" - yang tidak akan merusak, tidak menyediakan XSS dan peluang terkait, dll.

Untuk memahami jawaban yang bagus di atas, Anda perlu memastikan bahwa Anda memahami strategi itu. Anda mungkin tertarik membaca buku kecil yang luar biasa "Cracking Drupal" atau sumber dari http://crackingdrupal.com/ .

3
rfay

Dua makna di sini, satu adalah karakter penyandian yang benar seperti & atau ', yang lain untuk mencegah injeksi kode .

2
tim.plunkett

'Sanitisasi' adalah penghapusan data berbahaya dari input pengguna, seperti pengiriman formulir

0
tijo