Non sono sicuro che ci sia una buona definizione che puoi semplicemente "citare".
Ad esempio, cosa significa "TCP / IP"? Bene, significa "protocollo di controllo della trasmissione / protocollo internet". Questo è completamente corretto, ma allo stesso tempo del tutto inutile. Se non sapevi cosa fosse il TCP / IP con cui iniziare, l'espansione dell'acronimo non ti aiuterà.
Una definizione utile è questa: Gli hacker sfruttano determinati tipi di bug nel software per penetrare nel computer; la sicurezza del software è la scienza per sbarazzarsi di questi bug.
Ad esempio, un exploit di bug hacker comune è il "buffer overflow". Succedono perché riserva una certa quantità di memoria per contenere qualcosa, ma gli hacker forniscono più di quanto previsto dal programmatore. Ad esempio, in un database che contiene il nome utente, il programmatore potrebbe presumere che nessuno avrebbe mai avuto un nome con più di 1000 lettere. È vero, non lo faranno - ma questo non impedirà agli hacker di tentare di immettere nomi falsi così a lungo, e quando lo fanno, i buffer si riversano, gli hacker sovrascrivono altre parti della memoria e prendono il controllo del sistema.
Sappiamo perché i buffer overflow sono così comuni. Prendi il linguaggio C / C ++, per esempio. Negli anni '70, sono stati sviluppati codici riutilizzati di frequente come "strcpy ()" e "sprint ()" che copiano i buffer in memoria senza il doppio controllo della lunghezza. Pertanto, gli hacker cercano semplicemente il software per gli usi di questi frammenti di codice e trovano questi bug. La sicurezza del software lo fa prima dell'hacker, trovando tutti gli usi di "strcpy ()" e rimuovendoli.