FAQ Sicurezza Informatica
DISCLAIMER Questo documento non vuole essere un dogma. Le informazioni riportate in basso sono principalmente frutto di opinioni di una community e non sono “scientificamente dimostrate”. Sebbene il documento contenga informazioni potenzialmente applicabili a qualsiasi circostanza, il target audience comprende principalmente giovani studenti indecisi. Se volete proporre nuovi contenuti, siete invitati a fare una pull request.
Voglio entrare nel mondo della sicurezza informatica, da dove inizio?
La sicurezza informatica è una specializzazione dell’informatica, quindi una conoscenza informatica “moderna” di base è necessaria:
- Programmazione (algoritmi, strutture dati, ecc.)
- Sistemi Operativi (come funzionano, come interagirci, ecc.)
- Reti (almeno i protocolli fondamentali dello stack tcp/ip)
- Architettura (macchina di Von Neumann, un asm moderno, ecc.)
Se credi di avere già un’infarinatura su questi argomenti, puoi cominciare a studiare i concetti specifici collegati al ramo della sicurezza informatica che più ti interessa. Ad esempio:
- Malware Analysis: focus su asm Intel e ARM, techniche di binary analysis, internals Windows/Android.
- Application Security: focus su sistemi operativi/mitigation, programmazione sicura, classi di vulnerabilità.
- Network Security: focus su protocolli di rete a ogni layer e relative classi di attacco, networking stack dei sistemi operativi.
- Incident Response/Digital Forensics: focus su periferiche e i loro canali di comunicazione, file system e hard/solid state drive, Windows/Linux internals.
Inutile ricordare che la conoscenza dell’inglese è fondamentale, e viene prima di qualsiasi altra cosa.
Quale corso universitario devo seguire?
I corsi consigliati sono quelli che coprono gli argomenti elencati nella prima domanda, quindi per la triennale un corso di Computer Science (informatica) o Computer Engineering (ingegneria informatica). Esistono anche corsi sulla sicurezza informatica triennali o magistrali, in presenza o online. Per una lista aggiornata dell’offerta accademica in Italia consulta il sito del Consorzio CINI.
Quale OS devo usare?
Quello su cui hai più dimestichezza. Se hai bisogno di un sistema operativo particolare è sempre possibile usare una macchina virtuale (ad es. Virtualbox). Ovviamente, se ti interessa imparare un sistema operativo specifico, usa quello come sistema operativo principale.
Devo installare Kali Linux (o BackBox, Parrot, BlackArch, ecc…)?
Per studiare sicurezza informatica non è necessario installare Kali Linux, nè in una macchina virtuale, nè come OS principale. Quando si studia un argomento, tipicamente si usano 1-3 tool specifici. Le distribuzioni dedicate come Kali hanno lo scopo di offrire centinaia di tool senza doversi preoccupare di installarli e configurarli. È facile intuire che con un’esigenza di 1-3 tool, installarne centinaia sia uno spreco. In situazioni invece dove, per esempio, si ha la necessità di dover lanciare una singola volta un tool specifico, mai usato prima, che richiede patch e dipendenze installate da sorgente, una distribuzione dedicata è perfetta. Ma raramente studiando ci si trova in questa situazione.
Devo prendere certificazioni? Quali?
Le certificazioni sono il mezzo per il quale un’azienda può dimostrare di avere personale con competenze in un settore, verificate da un ente indipendente e riconosciuto. Sono quindi principalmente uno strumento aziendale e non un percorso formativo. È quindi responsabilità delle aziende permettere e supportare i propri dipendenti ad ottenere certificazioni professionali.
In termini d’utilità:
- Se sei uno studente senza esperienza lavorativa, non è detto che una certificazione ti aiuti a trovare lavoro perché probabilmente sarai sullo stesso piano di qualcuno non certificato
- Se sei un lavoratore con esperienza informatica ma SENZA esperienza in ambito sicurezza informatica, una certificazione potrebbe aiutarti a cambiare carriera ma probabilmente non sarà sufficiente per mantenere una seniority equivalente
- Se sei un lavoratore con esperienza in ambito sicurezza informatica, una certificazione specifica potrebbe aiutarti a trovare lavoro presso un’aziende che la richiede, ma anche in quel caso potrebbe non essere sufficiente, dato che non si riuscirebbe a dimostrare esperienza in materia
Letture consigliate suddivise per categoria
Crypto
- Applied Cryptography: Protocols, Algorithms, and Source Code in C
- Serious Crypto
- CryptoBook
- Overview of Cryptography
Sistemi operativi/architettura
Programmazione
- Introduction to Algorithms
- C
- Assembly
- Rust
- Go
- Python
- Think
Networking
OS
- Windows
- Linux
- macOS
Misc
News
- HackerNews (Quello vero 🙃)
Blog
Wall of Shame: materiale caldamente sconsigliato
- Qualsiasi distro “per il pentest” (Kali, Parrot, ecc.)
- Gli “Hacker” che sentono il bisogno di scriverlo nella bio di Twitter e/o Linkedin
- Qualsiasi corso che in tre semplici lezioni ti farà diventare un hacker etico
- Hacklog e qualsiasi altro videocorso che promette risultati garantiti in 7 giorni
- Qualsiasi religion war relativa a software, sistemi operativi, ecc. Il radicalismo (in qualsiasi ambito) è il tumore del progresso. Gli estremisti fungono da metastasi.