Input validation: la storia di un uomo alto 6,2 cm

Le parole di Internet.



[ZEUS News - www.zeusnews.it - 26-02-2021]

Liam Thorp

Liam Thorp è un trentaduenne britannico in ottima salute che scrive per il Liverpool Echo. Normalmente dovrebbe essere in fondo alla lista d'attesa per le vaccinazioni anti-Covid, che vengono fatte prioritariamente a chi è più avanti negli anni o ha problemi di salute, ma la BBC racconta che gli è arrivato l'invito a vaccinarsi perché risultava clinicamente obeso. Aveva infatti un indice di massa corporea di 28.000 (ventottomila), quando i valori normali di questo indice oscillano fra 18 e 24.

Il disguido, che lui stesso racconta qui, è avvenuto perché la sua statura era stata registrata nei sistemi informatici della sanità britannica immettendo piedi e pollici in un campo fatto per contenere un valore espresso in centimetri. Thorp è alto 6 piedi e 2 pollici (187 cm), e così qualcuno ha immesso 6,2 (anzi, 6.2 secondo la notazione anglosassone).

Risultato: il sistema ha accettato senza batter ciglio che Thorp avesse una statura di 6,2 centimetri ed è poi andato a calcolare il suo indice di massa corporea prendendo il suo peso e la sua statura e ha quindi deciso che il soggetto era incredibilmente obeso.

Il sistema ha poi preso questo dato di obesità impossibile e lo ha usato come criterio per l'emissione dell'invito a vaccinarsi.

Thorp l'ha presa bene, ma se il sistema può commettere errori di questo genere potrebbe anche commetterli nell'altro senso e negare una vaccinazione a chi ne ha bisogno.

Questo genere di problema tipicamente informatico nasce dal fatto che chi programma i computer non fa controlli di buon senso sui dati immessi. Un programma fatto bene non dovrebbe nemmeno accettare una statura di 6,2 centimetri.

Questo tipo di controllo va sotto vari nomi: input validation o input sanitization sono fra i più frequenti. La validation consiste nel controllare che in un campo venga immesso un dato pertinente (per esempio soltanto cifre in un campo destinato ad accogliere un numero) e sensato (una statura deve avere limiti massimi e minimi, per esempio).

La sanitization, invece, consiste nel verificare che i dati immessi non contengano caratteri che possono causare problemi nell'elaborazione successiva (per esempio qualcosa che possa essere interpretato come comando anziché come dato).

Può sembrare banale, ma il mancato controllo dei dati immessi è la tecnica tipica di intrusione nei siti: si chiama SQL injection. Cito in proposito l'ormai storica vignetta di xkcd:

exploits of a mom

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato con Zeus News ti consigliamo di iscriverti alla Newsletter gratuita. Inoltre puoi consigliare l'articolo utilizzando uno dei pulsanti qui sotto, inserire un commento (anche anonimo) o segnalare un refuso.
 

Paolo Attivissimo

(C) by Paolo Attivissimo - www.attivissimo.net.
Distribuzione libera, purché sia inclusa la presente dicitura.

Approfondimenti
I database di F-Secure sotto attacco
Violato il database di Kaspersky
Oracle tappa 45 buchi
Grave vulnerabilità senza patch in Flash Player
Mezzo milione di siti colpiti con una Sql injection

Commenti all'articolo (2)

@zero Permettimi di correggerti o, meglio di integrare quanto hai scritto: Adesso l'obiettivo principale e' di uscire subito col prodotto al costo di produzione minore possibile. I risultati sono ovvi e inevitabili... :roll: Leggi tutto
28-2-2021 16:12

La validazione dei dati ed il test dell'applicazione, un tempo erano "obbligatorie". Nessuno si sarebbe sognato di non farle. Ma portavano via una bella fetta di tempo. Adesso l'obiettivo principale e' di uscire subito col prodotto. Quindi vengono ignorate. E i risultati, purtroppo, si vedono ovunque. .
26-2-2021 08:56

La liberta' di parola e' un diritto inviolabile, ma nei forum di Zeus News vige un regolamento che impone delle restrizioni e che l'utente e' tenuto a rispettare. I moderatori si riservano il diritto di cancellare o modificare i commenti inseriti dagli utenti, senza dover fornire giustificazione alcuna. Gli utenti non registrati al forum inoltre sono sottoposti a moderazione preventiva. La responsabilita' dei commenti ricade esclusivamente sui rispettivi autori. I principali consigli: rimani sempre in argomento; evita commenti offensivi, volgari, violenti o che inneggiano all'illegalita'; non inserire dati personali, link inutili o spam in generale.
E' VIETATA la riproduzione dei testi e delle immagini senza l'espressa autorizzazione scritta di Zeus News. Tutti i marchi e i marchi registrati citati sono di proprietà delle rispettive società. Informativa sulla privacy. I tuoi suggerimenti sono di vitale importanza per Zeus News. Contatta la redazione e contribuisci anche tu a migliorare il sito: pubblicheremo sui forum le lettere piu' interessanti.
Sondaggio
Qual è il tuo linguaggio di programmazione preferito?
C
Java
PHP
JavaScript
C#
Visual Basic .NET
C++
Perl
Python
Ruby

Mostra i risultati (2994 voti)
Aprile 2026
Firefox 150, scovate 271 vulnerabilità con l'IA
IPv6 supera IPv4 per un giorno
Verifica dell'età, l'app UE si buca in meno di due minuti
Alexa+ debutta in Italia: conversa, agisce e si integra nella smart home
Verbatim e I-O Data puntano sul Blu-ray: rinasce un mercato dato per morto
La Francia abbandona Windows
Router TP-Link compromessi in tutto il mondo: così gli hacker russi sottraggono le credenziali
Attività sessuali, persone svestite o alla toilette, carte di credito
Oracle licenzia 30.000 dipendenti via email
Marzo 2026
Windows 11 avrà una barra delle applicazioni compatta in stile Windows 10
CPU Intel e AMD introvabili
Mozilla lancia la VPN gratuita in Firefox
Windows 11, vacilla l'obbligo dell'account Microsoft
Attacco informatico paralizza gli etilometri con alcolock: migliaia di veicoli fermi
La Ricerca Live di Google arriva in Italia
Tutti gli Arretrati
Accadde oggi - 25 aprile


web metrics