Vai al contenuto

Sicurezza informatica

In questa lezione impari a

  • conoscere gli obblighi principali di GDPR e ISO 27001
  • riconoscere le minacce più comuni alle applicazioni web
  • distinguere i tipi di malware
  • analizzare un caso reale di attacco

In laboratorio state imparando a proteggere le vostre applicazioni (password, SQL Injection, firewall). Qui vediamo il quadro più ampio: le regole che le aziende devono rispettare, e le minacce più comuni da conoscere.

2.1 Le regole: GDPR e ISO 27001

GDPR (General Data Protection Regulation) è una legge europea che dice come le aziende devono trattare i dati personali delle persone (nome, email, dati di salute, ecc.). Le idee principali, in parole semplici:

  • Un'azienda può raccogliere solo i dati che le servono davvero, non "tutto quello che può"
  • Le persone hanno il diritto di sapere quali dati un'azienda ha su di loro, e di chiederne la cancellazione
  • In caso di furto di dati (data breach), l'azienda deve avvisare le autorità entro un tempo preciso

ISO 27001 non è una legge, ma uno standard: una specie di "certificato di qualità" che un'azienda può ottenere se dimostra di gestire la sicurezza informatica in modo serio e organizzato (policy scritte, controlli regolari, formazione del personale).

Se il vostro progetto Flask del laboratorio raccogliesse dati reali di persone (nome, email), sareste già soggetti al GDPR: dovreste dire chiaramente a cosa servono quei dati e permettere di cancellarli.

2.2 Le minacce più comuni (OWASP Top 10, in breve)

OWASP è un'organizzazione che ogni anno pubblica una lista delle vulnerabilità più diffuse nelle applicazioni web. Non serve impararle a memoria: bastano le idee di fondo, che riconoscerete perché toccano proprio gli argomenti del laboratorio.

  • Injection (es. SQL Injection) — inserire comandi "nascosti" dentro un campo di input normale, per far fare al sistema qualcosa che non dovrebbe (l'avete già visto/vedrete in laboratorio)
  • Autenticazione debole — password troppo semplici, o salvate senza hashing
  • Esposizione di dati sensibili — dati importanti (password, carte di credito) trasmessi o salvati senza protezione
  • Configurazioni sbagliate — un server lasciato con le impostazioni "di fabbrica", magari con un pannello di amministrazione accessibile a tutti

Il filo comune: quasi tutte le vulnerabilità nascono da una fiducia eccessiva verso ciò che arriva dall'esterno (un input, un file, una richiesta) senza controllarlo.

2.3 Tipi di malware

Malware è un termine generico per "software creato per fare danni". Ne esistono di diversi tipi, distinti da come si comportano:

  • Virus — si attacca a un programma "sano" e si diffonde quando quel programma viene eseguito
  • Worm — si diffonde da solo attraverso una rete, senza bisogno che qualcuno esegua nulla
  • Trojan — si presenta come un programma utile o innocuo, ma nasconde funzioni dannose
  • Ransomware — blocca o cifra i vostri file e chiede un riscatto per sbloccarli
  • Spyware — raccoglie informazioni su di voi (es. quello che digitate) senza che ve ne accorgiate

Domanda di verifica. Qual è la differenza principale tra un virus e un worm?

Mostra la risposta

Il virus ha bisogno che un programma "ospite" venga eseguito da qualcuno per diffondersi; il worm si muove da solo attraverso la rete, senza bisogno di intervento umano.

2.4 Casi reali (per capire che non è teoria astratta)

Negli ultimi anni sono avvenuti diversi attacchi informatici su larga scala che hanno colpito ospedali, aziende ed enti pubblici, spesso tramite ransomware o sfruttando password deboli e sistemi non aggiornati. Il docente può portare in classe un caso di cronaca recente e discuterlo insieme: quale vulnerabilità è stata sfruttata? Cosa si sarebbe potuto fare per prevenirla?

Attività in classe: dividere gli studenti in gruppi, assegnare a ciascuno un caso diverso trovato sui giornali, e far presentare in 5 minuti "cosa è successo e come si poteva evitare".

Esercizi

⭐ Facile

Esercizio 1 – Che malware è?. Riconosci il tipo: cifra i file e chiede un riscatto; registra tutto quello che scrivi sulla tastiera; si diffonde da solo da un computer all'altro; si presenta come un programma utile ma apre una porta all'attaccante.

Suggerimento

Ransomware · keylogger · worm · trojan

⭐⭐ Medio

Esercizio 2 – La query pericolosa. Un login costruisce la query unendo le stringhe: "SELECT * FROM utenti WHERE user='" + u + "'". Spiega cosa succede se qualcuno scrive come utente ' OR '1'='1 e come si corregge.

Suggerimento

È una SQL injection: la condizione diventa sempre vera. Si risolve con le query preparate (parametri), come nel corso PHP e MySQL.

⭐⭐ Medio

Esercizio 3 – La tua app e il GDPR. La vostra app Flask salva nome, email e voti degli studenti. Indica tre obblighi del GDPR che vi riguardano e come li rispettereste.

⭐⭐⭐ Sfida

Esercizio 4 – Un caso vero. Scegli un attacco informatico recente riportato dai giornali e prepara una scheda: cosa è successo, quale vulnerabilità è stata sfruttata, come si poteva evitare.