WordPress
Sicurezza in WordPress - Sanitizzazione
Ricerca…
Sintassi
- sanitize_text_field (stringa $ str)
- sanitize_title (stringa $ titolo, stringa $ fallback_title, stringa $ contesto)
- sanitize_email (stringa $ email)
- sanitize_html_class (stringa $ class, stringa $ fallback)
- sanitize_file_name (stringa $ nome)
- sanitize_user (stringa $ username, boolean $ strict)
Osservazioni
La sicurezza dovrebbe essere sempre presente quando si sviluppa. Senza sicurezza un'app è aperta a vari attacchi come Iniezioni SQL, XSS, CSRF, RFI ecc che possono portare a seri problemi.
I dati non attendibili provengono da molte fonti (utenti, siti di terze parti, il proprio database !, ...) e tutto deve essere convalidato sia in input che in output. (Sourse: WordPress Codex)
I dati devono essere convalidati, disinfettati o salvati in base all'utilizzo e allo scopo.
Convalidare è garantire che i dati che hai richiesto all'utente corrispondano a ciò che hanno inviato. (Sourse: WordPress Codex)
La sanitizzazione è un po 'più liberale nell'accettare i dati degli utenti. Possiamo ricorrere all'utilizzo di questi metodi quando esiste una gamma di input accettabili. (Sourse: Wordpress Codex)
Per fuggire è necessario prendere i dati che potresti già avere e proteggerli prima di renderli per l'utente finale. (Sourse: WordPress Codex)
Disinfetta il campo di testo
$title = sanitize_text_field( $_POST['title'] );
Sanificare il titolo
Il valore restituito è inteso per essere adatto per l'uso in un URL, non come un titolo leggibile dall'uomo. Usa invece sanitize_text_field.
$new_url = sanitize_title($title);
Sanificare l'e-mail
$sanitized_email = sanitize_email(' [email protected]! ');
Sanitizza la classe html
$post_class = sanitize_html_class( $post->post_title );
echo '<div class="' . $post_class . '">';
Sanitizza il nome del file
$incfile = sanitize_file_name($_REQUEST["file"]);
include($incfile . ".php");
Senza sanificare il nome del file, un utente malintenzionato potrebbe semplicemente passare http: // attacker_site / malicous_page come input ed eseguire qualsiasi codice nel server.
Disinfetta il nome utente
$user = sanitize_user("attacker username<script>console.log(document.cookie)</script>");
Il valore di $ user dopo sanitize è "nome utente dell'attaccante"