La sicurezza di rete è attualmente uno dei problemi più urgenti e complessi che le organizzazioni di ogni tipo, sia pubbliche che private, e i governi, si trovano ad affrontare. Oltre al quotidiano bombardamento di traffico indesiderato, come scansioni delle porte di rete, virus di ogni genere (malware, adware, spyware, trojan, worm, bot), exploit tool, rootkit, ingegneria sociale, attacchi DoS, violazioni accidentali, attacchi automatizzati e altri meccanismi di accesso non autorizzato, le organizzazioni devono essere consapevoli dell'esistenza di insider malintenzionati che possono utilizzare i mezzi digitali per rubare e diffondere segretamente informazioni aziendali sensibili, superando il perimetro di protezione della rete aziendale. Le statistiche del CERT sul numero di incidenti di sicurezza, accessi non autorizzati a siti web e la percentuale di "tentativi di hacking" sul totale degli incidenti sono in forte crescita. Ciò giustifica il crescente utilizzo dell'ethical hacking a livello internazionale.


Conformità. Politica, standard, procedure e guida di sicurezza.
La sicurezza IT svolge un ruolo fondamentale nella valutazione del rischio di un'organizzazione. Ciò implica l'utilizzo di test di penetrazione, analisi delle vulnerabilità, misure di conformità e altri metodi. La conformità può essere: (i) Interna. Utilizzando politiche e standard, baseline di sicurezza e configurazione, codici di best practice (come ISO 27002) e framework come COBIT, ISO, ITIL, NIST e GAISP. (ii) Esterna. Utilizzando SOX (Sarbanes-Oxley) con framework come COSO, HIPAA, PCI-DSS e Safe Harbor. Le politiche di sicurezza sono il fondamento per l'implementazione della conformità e della governance IT.
Una politica è un insieme di requisiti e istruzioni direzionali progettate per proteggere i valori, le risorse e le informazioni aziendali. Le politiche fungono da base per gli standard, le procedure e le guide correlati. Uno standard è un insieme di pratiche e benchmark utilizzati per soddisfare i requisiti stabiliti in anticipo dalle politiche. Uno standard dovrebbe sempre derivare da una politica, in quanto rappresenta il secondo passo nel processo di propagazione delle politiche aziendali. Una procedura è un insieme di istruzioni dettagliate per l'attuazione dei requisiti di una politica e l'esecuzione di prassi standard. Una guida è un insieme di suggerimenti e best practice derivati ​​da politiche e standard. Le guide sono facoltative, ma in genere documentano parametri, processi e procedure ben noti, in base ai quali politiche e standard sono stati implementati con successo.


Test di penetrazione e test di sicurezza.
Strumenti utilizzati. Metodologie.
Un test di penetrazione (chiamato anche ethical hacking, white-hat hacking o red teaming) è un insieme di metodi utilizzati per valutare il livello di sicurezza di un sistema, una rete o un'azienda simulando vari attacchi in modo non distruttivo. Si tratta di un tentativo legale di accedere alla rete aziendale per individuare i punti deboli; il tester si limita a segnalare i risultati. Un test di sicurezza è più di un semplice tentativo di accesso; include anche un'analisi delle politiche e delle procedure di sicurezza aziendali. I tester propongono soluzioni per proteggere la rete in esame. I protocolli dello stack TCP/IP più comuni (HTTP-Web, SMTP/POP3-IMAP4-email, FTP, TELNET, ecc.), utilizzati in intranet, extranet e Internet, sono stati progettati in un'epoca in cui la sicurezza non era una priorità. Ciò significa, ad esempio, secondo il CERT, che siamo passati da sei incidenti di sicurezza nel 1988 a un totale di 137.529 incidenti nel 2003.
Sicurezza2Ci sono diverse ragioni per eseguire un penetration test: (i) Determinare i difetti, le vulnerabilità e le falle di un'azienda. (ii) Fornire una metrica quantitativa per la valutazione di sistemi e reti. (iii) Misurare rispetto a parametri di riferimento prestabiliti. (iv) Determinare i rischi per l'organizzazione. (v) Progettare controlli per mitigare i rischi identificati.
Un penetration test può essere suddiviso nelle seguenti fasi:
(1) Fase di preparazione. L'obiettivo è: (i) Identificare i target: siti web aziendali, server di posta, extranet, ecc. (ii) Firmare il contratto. Viene stipulato un accordo di protezione contro eventuali problemi legali. I contratti specificano chiaramente i limiti e i rischi del test. Specificare i test DoS, l'ingegneria sociale, ecc. Devono essere specificati l'intervallo di tempo per gli attacchi e la durata totale del test. Il livello di conoscenza pregressa dei sistemi e il personale chiave che verrà informato del test devono essere indicati. 
(2) Fase di footprinting. L'obiettivo del footprinting è: (i) Raccogliere quante più informazioni possibili sul target: server DNS, intervalli IP, contatti amministrativi e problemi segnalati dagli amministratori. (ii) Utilizzare fonti di informazione: motori di ricerca come Google; forum; database: whois, ripe, arin, apnic; strumenti: ping, whois, traceroute, DIG, nslookup, sam spade.
Sicurezza3(3) Fase di scoperta, enumerazione e fingerprinting. Questa fase prevede: (i) Determinare gli obiettivi specifici. (ii) Identificare i servizi e le porte UDP/TCP aperti. (iii) Elencare i sistemi operativi utilizzati. I metodi utilizzati a questo scopo includono: (i) Acquisizione di banner. (ii) Risposte ai comandi di vari protocolli (TCP e ICMP). (iii) Scansione di porte/servizi: connessioni TCP, TCP SYN, TCP FIN, ecc. Gli strumenti utilizzati includono: Nmap (scanner di porte/sicurezza open-source, vedi http://insecure.org/), FScan, Hping, Firewalk, Netcat, tcpdump, ssh, telnet e Snmp Scanner. In breve, l'obiettivo è raccogliere e ottenere informazioni nel modo più discreto possibile, ad esempio utilizzando Nmap. Per fare ciò, vengono esaminate le informazioni di rete e viene confermato ciò che è noto sulle reti.
(4) Fase di esplorazione e identificazione delle vulnerabilità. Le possibili vulnerabilità includono: (i) Configurazione non sicura. (ii) Password deboli. (iii) Vulnerabilità non corrette in: servizi, sistemi operativi e applicazioni. (iv) Potenziali vulnerabilità in servizi e sistemi operativi. (v) Programmazione non sicura. (vi) Controllo degli accessi debole. I metodi utilizzati includono: (i) Per vulnerabilità potenziali e non corrette: strumenti di rilevamento e siti web di informazioni sulle vulnerabilità. (ii) Per le password Le vulnerabilità deboli includono: password predefinite, attacchi di forza bruta e a dizionario, ingegneria sociale e intercettazione del traffico non crittografato (POP3, Telnet, FTP, ecc.). (iii) Per la programmazione non sicura: SQL injection e intercettazione del traffico. (iv) Per il controllo degli accessi debole: logica applicativa e SQL injection. Gli strumenti utilizzati includono: (i) Scanner di vulnerabilità: Nessus (scanner di vulnerabilità open source, vedi http://tenablesecurity.com/), ISS, SARA, SAINT. (ii) Strumenti di intercettazione del traffico: Ethercap, Ethereal, tcpdump. (iii) Cracker di password: JTR (John the Ripper), LC4, Pwdump. (iv) Strumenti di intercettazione del traffico web: Acholes, Whisker, Legion. I siti web utilizzati includono: (i) Per vulnerabilità ed esposizioni comuni: http://cve.mitre.org. (ii) Bugtraq: http://www.securityfocus.com. (iii) Altri siti web dei fornitori. Tra gli obiettivi di questa fase rientrano l'analisi della configurazione, l'identificazione e l'analisi di firewall/gateway.
Sicurezza4(5) Fase di valutazione, attacco e sfruttamento. L'obiettivo è ottenere quante più informazioni possibili sul target, ottenere l'accesso normale, elevare i privilegi, ottenere l'accesso ad altri sistemi connessi e utilizzare attacchi DoS. Vengono eseguite le seguenti operazioni: (i) Attacchi all'infrastruttura di rete: connessione alla rete tramite modem, identificazione di vulnerabilità in TCP/IP e NetBIOS e inondazione della rete per causare un attacco DoS. (ii) Attacchi ai sistemi operativi: attacco ai sistemi di autenticazione, sfruttamento delle implementazioni di protocollo, sfruttamento di configurazioni non sicure e violazione della sicurezza del file system. (iii) Attacchi ad applicazioni specifiche: sfruttamento delle implementazioni di protocollo dell'applicazione (SMTP, HTTP), accesso ai database dell'applicazione, SQL injection e spamming. (iv) Exploit: exploit gratuiti da siti web di hacker ed exploit personalizzati gratuiti. Vengono utilizzati strumenti come Nessus e Metasploit Framework (lancio di exploit). vulnerabilità). In questa fase, viene verificata la sicurezza dei dispositivi. Ciò comporta l'espansione della mappatura della rete, la scansione dei dispositivi per individuare vulnerabilità e lo sfruttamento di vulnerabilità di sicurezza isolate utilizzando strumenti come Metasploit.
(6) Fase di analisi delle intrusioni e dei rischi/impatti. L'obiettivo è eseguire un'analisi degli scenari di rete e sfruttare le potenziali esposizioni di rete.
(7) Fase di reporting. L'obiettivo è segnalare tutti i risultati e proporre soluzioni di sicurezza pratiche.
In un ambiente ICT, il modello di penetration testing della sicurezza è costituito da quattro livelli, che dall'esterno verso l'interno sono: (1) Livello 1: Attacchi esterni (utente non informato). (2) Livello 2: Attacchi esterni (utente esperto). (3) Livello 3: Attacchi interni. (4) Livello 4: Attacchi ad applicazioni/database. 
Alcuni strumenti utilizzati per il penetration testing sono: (i) Livello di analisi del traffico: Ethereal, NAI Sniffer Pro, NetXray, EtherPeek, Solarwinds, Dolch Network. (ii) Livello di cracking delle password: L0pht Crack, John-The-Riper, Rainbow Tables. (iii) Livello di rete wireless: AirSnort, Kismet, Netstumbler. (iv) Livello di strumenti per database: ISS, Squirrel, IP Locks, AppDetective. (v) Livello di strumenti basati su host: Bindview, ESM, ISS System Scanner, NetIQ. (vi) Livello di strumenti web/applicativi: ScanDo, AppScan, Webinspect Whisker. (vii) Livello di war dialing: THG scan, TeleSweep. (viii) Livello di valutazione della rete: Nessus, ISS Internet Scanner, Foundscan, Retina, Typhon III. (ix) Livello di mappatura della rete: NMAP, Ping, Visio. (x) Livello di recupero dati: CIS Scripts.
Per accedere a un servizio di scansione delle porte online, visitare il sito web: http://www.grc.com/x/ne.dll?
rh1dkyd2. Per eseguire un test antivirus, è possibile visitare il sito web EICAR: http://www.rexswain.com/eicar.html.
Si possono identificare tre metodologie di penetration testing: (1) Modello white-box. Al tester vengono fornite tutte le informazioni sulla topologia e la tecnologia di rete ed è autorizzato a intervistare il personale IT e i dipendenti dell'azienda, il che semplifica il lavoro. (2) Modello black-box. Il personale aziendale non sa nulla del test. Il tester non conosce i dettagli della rete; il suo compito è quello di scoprirli. Questo modello verifica se il personale di sicurezza è in grado di rilevare un attacco. (3) Modello gray-box. Si tratta di un modello ibrido dei due precedenti. Le aziende forniscono al tester
alcune informazioni parziali.
Considerazioni finali:
il nostro gruppo di ricerca lavora da oltre vent'anni nel campo della valutazione del rischio per la sicurezza, utilizzando un numero crescente di approcci quali penetration testing, gestione delle intrusioni, analisi delle politiche di conformità, ecc.

Questo articolo fa parte delle attività sviluppate nell'ambito del progetto LEFIS-APTICE (finanziato da Socrates, Commissione europea).

 

Autore:

Prof. Dr. Javier Areitio Bertolín – E.Mail: Questo indirizzo email è protetto dagli spambot. È necessario abilitare JavaScript per visualizzarlo. Professore presso la Facoltà di Ingegneria dell'ESIDE. Direttore del Gruppo di Ricerca su Reti e Sistemi presso l'Università di Deusto.

 

 

Letteratura

- Areitio, J. “Sicurezza delle informazioni: reti, informatica e sistemi informativi”. Cengage Learning-Paraninfo. 2009.
- Areitio, J. “Analisi delle tecnologie per l’occultamento delle informazioni”. Rivista Conectrónica. N. 109. Luglio-agosto 2007.
- Areitio, J. “Analisi della sicurezza forense, delle tecniche antiforensi, della risposta agli incidenti e della gestione delle prove digitali”. Rivista Conectrónica. N. 125. Marzo 2009.
- Cranor, LF e Garfinkel, S. “Sicurezza e usabilità: progettare sistemi sicuri che le persone possano utilizzare”. O'Reilly. 2005.
- Lininger, R. e Vines, RD “Phishing: tagliare la linea del furto di identità”. Wiley. 2005.

Maggiori informazioni o un preventivo