+ All Categories
Home > Documents > PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro...

PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro...

Date post: 25-Jun-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
43
PENETRATION TESTING PROFESSIONAL VERSIONE 3 Il migliore corso online sul Pentration Testing eLearnSecurity è stata scelta dagli studenti di oltre 140 paesi nel mondo e da organizzazioni leader come:
Transcript
Page 1: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

PENETRATION TESTING PROFESSIONAL

VERSIONE 3

Il migliore corso online sul Pentration Testing

eLearnSecurity è stata scelta dagli studenti di oltre 140 paesi nel mondo e da organizzazioni leader come:

Page 2: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

OBIETTIVI DEL CORSO Il Penetration Testing Professional (PTP) è il percorso formativo online, in auto apprendimento, pensato con l'obiettivo di creare professionisti della Sicurezza IT esperti. Costruisce solide fondamenta tramite lezioni teoriche avanzate ed esercitazioni pratiche attraverso i più sofisticati laboratori virtuali del mondo. Alla fine del corso, gli studenti verranno messi alla prova con uno scenario di esame reale, dove lui/lei dovrà produrre un report di penetration testing di tipo commericale che identifica correttamente i punti deboli dell’ingaggio.

ORGANIZZAZIONE DEL CORSO Il percorso formativo è totalmente pratico con slide interattive e materiale video al quale gli studenti possono accedere online senza alcuna limitazione. Gli studenti hanno accesso a vita al materiale formativo. Gli student possono studiare da casa, ufficio, o dovunque sia presente una connessione internet. Sarà sempre possibile riprendere a studiare dall’ultima slide o video visualizzata. Il corso PTP è integrato con Hera Lab: il più sofisticato laboratorio virtuale di IT Security. Una quantità minima di 60 ore è consigliata. Mentre per un uso intensivo, 120 ore sono necessarie. Hera Lab fornisce infrastrutture vulnerabili on-demand, dove lo studente può mettere in pratica ogni argomento visto nel corso in scenari dedicati e isolati. Tutti i moduli sono disponibili in formato slide + video e PDF. I moduli possono essere visionati dall’area membri eLearnSecurity.

I laboratori sono indicati all'interno delle slide per suggerire il corretto percorso di apprendimento da seguire.

INTRODUZIONE

Page 3: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

TARGET AUDIENCE AND PRE-REQUISITES Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale nell’IT Security il cui lavoro dipende dalla loro capacità di difendere la propria organizzazione. Questo corso consente alle organizzazioni di tutte le dimensioni di valutare e mitigare il rischio a cui le loro applicazioni web sono esposte costruendo competenze interne forti e pratiche. Le società di penetration testing possono formare i loro team di sicurezza con un percorso formativo completo e pratico senza dover implementare laboratori interni, spesso obsoleti e non supportati da un solido materiale teorico. Lo studente disposto ad iscriversi al corso deve possedere una solida conoscenza delle applicazioni web e dei modelli di sicurezza delle applicazioni web. Non sono richieste capacità di programmazione. Tuttavia, una conoscenza di base delle reti, dei protocolli Internet, dei problemi di sicurezza IT e di penetration testing, nonché della capacità di leggere e comprendere il codice ridurrà notevolmente la curva di apprendimento di uno studente.

POSSO CERTIFICARE LE MIE COMPETENZE?

Il corso PTP permette di ottenere la certificazione eCPPT. La certificazione si ottiene completando con successo i requisiti di un esame 100% pratico che consiste nel penetration testing di una rete reale ospitata nei laboratori Hera Lab di eLearnSecurity.

Un voucher eCPPT è incluso nei piani Full ed Elite del corso PTP.

INTRODUZIONE

Page 4: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

ORGANIZZAZIONE DEI CONTENUTI

SEZIONE SYSTEM SECURITY La sezione System Security vi fornirà una conoscenza approfondita dell’architettura x86 e dei suoi punti deboli.

• Modulo 1: Introduzione • Modulo 2: Crittografia e Password Cracking • Modulo 3: Buffer Overflow • Modulo 4: Shellcoding • Modulo 5: Malware • Modulo 6: Programmazione di Rootkit

SEZIONE NETWORK SECURITY La sezione Network Security tratterà le metodologie, le tecniche e gli strumenti usati per testare la sicurezza di PC e I dispositive collegati in rete.

• Modulo 1: Information Gathering • Modulo 2: Scanning • Modulo 3: Enumeration • Modulo 4: Sniffing e attacchi MITM • Modulo 5: Exploitation • Modulo 6: Post-exploitation • Modulo 7: Anonymity • Modulo 8: Social Engineering

SEZIONE WEB APPLICATION SECURITY Un Penetration Tester non può non padroneggiare tecniche di attacco e difesa, relative ad applicazioni web: questa sezione, ricca di laboratory, ricopre una completa metodologia di penetration per applicazioni web.

• Modulo 1: Introduzione • Modulo 2: Information Gathering • Modulo 3: Vulnerability assessment • Modulo 4: Cross site scripting • Modulo 5: SQL Injection

INTRODUZIONE

Page 5: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

• Modulo 6: Advanced Web Attacks

SEZIONE RUBY PER PENTESTERS E METASPLOIT La sezione Ruby per Pentesters e Metasploit copre le tecniche di programmazione in Ruby, dale basi fino ad argomenti più avanzati di programmazione orientate al Peentration Testing. Una volt ache lo student conosce il linguaggio di programmazione e le sue caratteristiche, questa sezione copre argomenti come exploiting con Ruby di applicazioni vulnerabili, così come creare e modificare moduli di Metasploit.

• Modulo 1: Basi di Ruby: Installazione e fondamenta • Modulo 2: Basi di Ruby: Strutture di controllo • Modulo 3: Basi di Ruby: Metodi, variabili e scope • Modulo 4: Ruby avanzato: Classi, Moduli e Eccezioni • Modulo 5: Ruby avanzato: Classi, Moduli e Eccezioni • Modulo 6: Ruby per Pentesters: Input / Output • Modulo 7: Ruby per Pentesters: Network e interazione con il SO • Modulo 8: Ruby per Pentesters: Il Web • Modulo 9: Ruby per Pentesters: Exploitation con Ruby • Modulo 10: Ruby per Pentesters: Metasploit

SEZIONE SICUREZZA DELLE RETI WIFI La sezione Sicurezza delle reti Wi-Fi è una sezione estremamente dettagliata che copre le più importanti teciche di attacco usate contro le reti Wi-Fi. Lo student imparerà I meccanismi di sicurezza implementati nelle architetture Wi-Fi, così come le loro debolezze e come queste possono essere sfruttate.

• Modulo 1: Prerequisiti • Modulo 2: Configurazione dell’ambiente • Modulo 3: Standard e Reti Wireless • Modulo 4: Scoprire le reti Wi-Fi • Modulo 5: Analisi del traffico • Modulo 6: Attaccare reti Wi-Fi • Modulo 7: Wi-Fi come vettore d’attacco

INTRODUZIONE

Page 6: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 1: INTRODUZIONE In questo modulo lo studente imparerà le basi dei linguaggi di programmazione come C++ e ASM oltre che i fondamenti dell’architettura x86.

Nel corso del modulo saranno forniti esempi di codici sorgente C++ e Assembly in modo che lo studente possa acquisire familiarità con questi linguaggi.

Sfruttamento di Buffer Overflow avanzati, Shellcoding e la programmazione di Rootkit richiederanno compilatori e assemblatori con cui lo studente acquisterà familiarità durante questo modulo.

In questo modulo sono previsti laboratori pratici su Hera Lab 1. Introduzione

1.1. Dev-Cpp 1.1.1. Uso di Dev-Cpp 1.1.2. Video C++

1.2. Nasm Assembler 1.2.1. NasmX Assembler: Introduzione 1.2.2. Lo Stack X86 1.2.3. PUSH e POP 1.2.4. I registry EBP/ESP

1.3. Immunity Debugger 1.3.1. Driver Esempio 1.3.2. Compilazione del vostro Driver 1.3.3. Uso di un Driver 1.3.4. Driver Output

MODULO 2: CRITTOGRAFIA E PASSWORD CRACKING Questo modulo garantisce allo studente di essere al passo con le ultime tecnologie di crittografia e la conoscenza degli algoritmi più comuni.

Ci soffermeremo sugli algoritmi di generazione di password da Windows 98 a Windows 7, con un’analisi approfondita di tutte le debolezze esistenti.

I tool più utilizzati per il cracking delle password saranno ricoperti in dettaglio.

SYSTEM SECURITY

Page 7: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

2. Crittografia e Password Cracking 2.1. Introduzione 2.2. Classificazione 2.3. Funzioni Hash 2.4. Infrastruttura Public Key 2.5. PGP 2.6. Secure Shell (SSH)

2.6.1. SSH Tunneling 2.7. Attacchi Crittografici 2.8. Debolezze dei Sistemi Crittografici 2.9. Password di Windows

2.9.1. Hash LM e NT 2.9.2. SAM 2.9.3. Rubare gli hash – Remoto 2.9.4. Rubare gli hash – Locale 2.9.5. Rubare gli hash – Live host 2.9.6. Rubare gli hash – Offline 2.9.7. Pass the hash 2.9.8. Craccare gli hash

MODULO 3: BUFFER OVERFLOWS Lo studente in questo modulo imparerà a trovare e sfruttare buffer overflow in reali applicazioni 32bit.

Quello del Buffer Overflow è un argomento complesso reso facile da capire attraverso esempi spiegati passo passo, partendo dalle basi dello stack.

Armati di assemblatori, compilatori e debugger gli studenti impareranno ad assumere il controllo dell'esecuzione di applicazioni.

Al termine del modulo, lo studente verrà introdotto alle più moderne tecniche utilizzate per prevenire i buffer overflow e i metodi principali per bypassarli.

In questo modulo sono previsti laboratori pratici su Hera Lab 3. Buffer Overflows

3.1. Introduzione 3.2. Lo Stack

3.2.1. Esempi di Stack Frame X86

SYSTEM SECURITY

Page 8: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

3.3. Buffer Overflow 3.3.1. Acquisire il controllo dell’EIP 3.3.2. Procedura per generare Buffer Overflow

3.4. Trovare un Buffer Overflow 3.4.1. Fuzzing 3.4.2. Identificare Buffer overflow dopo un crash

3.5. Exploitation di un’applicazione reale 3.5.1. Exploitation del client 32Bit FTP

3.6. ASLR e DEP 3.6.1. ASLR – Brute forcing 3.6.2. ASLR – NOP Sled 3.6.3. ASLR – Non-randomized memory 3.6.4. DEP

MODULO 4: SHELLCODING Con questo modulo l'arte dello Shellcoding diventerà alla portata di chiunque attraverso esempi e scenari reali, facili da capire.

Una piccola parte di aspetti teorici introdurrà gli esempi pratici in cui lo studente creerà il proprio shellcode attraverso l'uso di compilatori e assemblatori.

Sono mostrate diverse tecniche in modo da dare allo studente la possibilità di creare il miglior shellcode per ogni situazione.

Tre esempi, con il rispettivo codice sorgente, saranno spigati riga per riga.

Al termine del modulo si introdurrà il Framework per la creazione di driver in Windows.

In questo modulo sono previsti laboratori pratici su Hera Lab 4. Shellcoding

4.1. Esecuzione di Shellcode 4.2. Tipi diShellcode 4.3. Codifica di Shellcode

4.3.1. Shellcode Null free 4.3.2. Shellcode alfanumerici 4.3.3. Percentage encoding

SYSTEM SECURITY

Page 9: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

4.4. Esempio 1: Shellcoding framework 4.5. Sleep() Shellcode 4.6. Scrittura di Shellcode universali per Windows

4.6.1. Trovare l’indirizzo di kernel32.ddl 4.6.2. Risoluzione dei riferimenti in fase di esecuzione

4.7. Esempio 2: Shellcode indipendenti dal SO 4.8. Esempio 3: Shellcode di Privilege escalation

4.8.1. Configurazione di Windows per il debugging 4.8.2. La logica dietro la Privilege Escalation 4.8.3. L’architettura di un Driver 4.8.4. Esempio di un Driver per Kernal privilege escalation

MODULO 5: MALWARE Una classificazione completa e dettagliata dei tipi di malware è l'introduzione di questo modulo contenenti le tecniche più avanzate, utilizzate dai moderni malware.

Il modulo è arricchito dalla spiegazione di ogni riga di codice sorgente, relativamente a tre malware: un Keylogger, un Trojan e un Virus. 5. Malware

5.1. Classificazione 5.2. Tecniche usate dai Malware

5.2.1. Streams 5.2.2. Hooking SSDT 5.2.3. Hooking IRP 5.2.4. Hiding su un processo 5.2.5. API Hooking

5.2.5.1. IAT Hooking 5.2.5.2. EAT Hooking 5.2.5.3. Inline Hooking

5.2.6. Metodi Anti-Debugging 5.2.7. Metodi Anti-Virtual machine 5.2.8. Offuscamento 5.2.9. Packers 5.2.10. Polimorfismo 5.2.11. Metamorfismo

5.2.11.1. Garbage Insertion 5.2.11.2. Scambio di registry

SYSTEM SECURITY

Page 10: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

5.2.11.3. Permutazione 5.3. Come si diffondono i malware

5.3.1. Null free shellcode 5.3.2. Shellcode alfanumerici 5.3.3. Percentage encoding

5.4. Esempi reali 5.4.1. Esempio 1: Keylogger 5.4.2. Esempio 2: Trojan 5.4.3. Esempio 3: Virus

MODULO 6: CODIFICA DI ROOTKIT Dai creatori del primo BIOS Rootkit per Windows 7, un modulo che affronta le basi e gli aspetti più importanti della programmazione di rootkit.

Dopo una breve classificazione, lo studente avrà la possibilità di scoprire le tecniche più avanzate utilizzate dai rootkit tramite tre frammenti di codice sorgente di rootkit reali.

Lo studente sarà in grado di codificare e comprendere rootkit in maniera autonoma, usando il Windows Driver Development Kit. 6. Rootkit

6.1. Classifiicazione di Rootkits 6.2. Esempio 1: Nascondere un processo 6.3. Esempio 2: Conrollare l’accesso ai file 6.4. Esempio 3: Nascondere file

SYSTEM SECURITY

Page 11: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 1: INFORMATION GATHERING L’Information Gathering è la fase più importante di tutto l’engagement di un pentester.

Così come fanno i criminali, un pentester utilizza le informazioni raccolte in questa fase per mappare la superficie di attacco e aumentare le possibilità di violare l'organizzazione.

eLearnSecurity propone una metodologia di indagine estremamente approfondita, che tenga conto sia del business che dell'infrastruttura del cliente.

Gli studenti impareranno a ottenere l'accesso a documenti sensibili e talvolta segreti, per mezzo di servizi gratuiti, database e motori di ricerca specializzati.

L’information gathering sulle infrastrutture coinvolge l’enumerazione di DNS, Domini, Netblock e altre attività web di proprietà dell’organizzazione.

In questo modulo sono previsti laboratori pratici su Hera Lab. Allo student viene inoltre richiesto di condurre una indagine per un caso reale: eLSFoo.

1. Information Gathering

1.1. Introduzione 1.2. OSINT / Motori di ricerca

1.2.1. Presenza sul Web 1.2.2. Trovare contratti governativi 1.2.3. Partners e terze parti 1.2.4. Annunci di lavoro 1.2.5. Informazioni finanziarie 1.2.6. Raccolta d’informazioni 1.2.7. Informazioni cashate

1.3. OSINT / Social Media 1.3.1. Ricerca di persone 1.3.2. Information Gathering di un caso reale: eLSFoo

1.4. Information gathering sull’infrastruttura 1.4.1. Domini

1.4.1.1. Enumerazione dei DNS 1.4.1.2. IP 1.4.1.3. Netblocks & ASs

1.4.2. Netblock

NETWORK SECURITY

Page 12: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

1.4.2.1. Host attivi 1.4.2.2. Enumerazione di DNS

1.5. Tool 1.5.1. DNS Enum 1.5.2. DNS Map 1.5.3. Fierce 1.5.4. Foca & Shodan

MODULO 2: SCANNING Questo modulo affronta uno dei passi più importanti nel pentest di una rete: lo scanning delle porte e la teoria che vi è dietro.

Armati di sniffer e di Hping2, forgeremo pacchetti in maniera manuale e studieremo, a tutti i livelli della pila OSI, le risposte da parte di host e server.

Successivamente verrà spiegato come usare i principali tool per il rilevamento di host, delle porte aperte e dei relativi servizi in esecuzione.

Attraverso Nmap e hping2, lo studente potrà imparare come trovare zombie da utilizzare per eseguire scansioni delle porte del target e rimanere completamente invisibili con tecniche di Idle Scan.

Infine verranno spiegate approfonditamente tecniche per il Passive/Active fingerprinting dei sistemi operativi.

In questo modulo sono previsti laboratori pratici su Hera Lab.

2. Scanning 2.1. Introduzione 2.2. Rilevare host attivi e porte aperte

2.2.1. Nmap 2.2.1.1. SYN scan 2.2.1.2. Conect scan 2.2.1.3. UDP scan 2.2.1.4. Idle scan 2.2.1.5. NULL / FIN / Xmas 2.2.1.6. ACK scan 2.2.1.7. IP scan

2.2.2. SuperScan

NETWORK SECURITY

Page 13: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

2.2.2.1. Win Enumeration 2.2.3. Hping2

2.3. Tecniche di bypass per Firewall/IDS 2.3.1.1. Fragmentation 2.3.1.2. Decoys 2.3.1.3. Timing 2.3.1.4. Usare le porte sorgenti

2.4. Determinare I servizi 2.4.1. Raccolta del Banner 2.4.2. Fingerprinting Attivo/Passivo

2.5. Altri tool 2.5.1. Amap 2.5.2. UnicornScan 2.5.3. P0f

MODULO 3: ENUMERAZIONE Lo scopo di questo modulo è di fornire le tecniche che i professionisti di penetration testing utilizzano per enumerare le risorse del target.

Lo studente sarà in grado di esplorare, enumerare e mappare la rete remota e i suoi servizi disponibili attraverso diversi strumenti sia per Windows che per Unix.

NetBIOS è l'oggetto della prima parte di questo Modulo: utilizzeremo esempi reali per mostrare le tecniche più importanti e gli strumenti principali per enumerare le risorse remote.

Lo studente potrà inoltre imparare a cercare sessioni NetBIOS “Null” che ancora oggi affliggono vecchie versioni di Windows.

Sarà spiegato il protocollo SNMP in tutte le sue parti fondamentali e I principali tool che consentono di sfruttarne ogni debolezza.

In questo modulo sono previsti laboratori pratici su Hera Lab. 3. Enumeration

3.1. Introduzione 3.2. NetBIOS

3.2.1. Che cosa è NetBIOS 3.2.2. Come funziona NetBIOS

NETWORK SECURITY

Page 14: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

3.2.3. Comandi NetBIOS e tool 3.2.3.1. NAT 3.2.3.2. Winfo 3.2.3.3. Winfingerprint 3.2.3.4. SID2USER / USER2SID

3.3. SNMP 3.3.1. Che cosa è 3.3.2. Come funziona (Agents, MIB, OID) 3.3.3. Comandi SNMP 3.3.4. Attacchi SNMP

3.3.4.1. Cracking delle community string 3.3.4.2. Snmpwalk 3.3.4.3. Snmpenum 3.3.4.4. Snmpset 3.3.4.5. Snmpbrute 3.3.4.6. Onesixtyone

MODULO 4: SNIFFING & MITM In questo modulo iniziamo con lo studiare ARP: come funziona e come può essere manipolato per creare attacchi di sniffing sofisticati.

Il Modulo ricopre basi di teoria delle reti, prima di presentare scenari reali da attaccare utilizzando i migliori strumenti disponibili.

Lo studente sarà in grado di capire come funziona lo Sniffing nei suoi aspetti più pratici ovvero le migliori tecniche di sniffing in ambiente switchato.

L'attacco Man-In-The-Middle è una delle tecniche di più utilizzate nei test di oggi: lo studente sarà in grado di creare un attacco MITM all'interno di reti locali e su Internet. 4. Sniffing & MITM

4.1. Che cosa è lo sniffing 4.2. Sniffing

4.2.1. Sniffing passivo 4.2.2. Sniffing attivo

4.2.2.1. MAC Flooding 4.2.2.2. ARP Poisoning 4.2.2.3. Basic of ARP

NETWORK SECURITY

Page 15: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

4.2.3. Tool 4.2.3.1. Dsniff 4.2.3.2. Wireshark 4.2.3.3. TCPDump 4.2.3.4. WinDump

4.3. Attachi Man in the middle (MITM) 4.3.1. Che cosa sono 4.3.2. ARP Poisoning per MITM 4.3.3. MITM locale e remoto 4.3.4. DHCP Poisoning 4.3.5. MITM nello scambio di Public Key 4.3.6. Come funziona (Agents, MIB, OID) 4.3.7. Commandi SNMP

4.4. Intercettare traffico SSL 4.4.1. SSLStrip & Ettercap

MODULO 5: VULNERABILITY ASSESSMENT & EXPLOITATION Questo Modulo insegnerà allo studente come padroneggiare Nessus, al fine di eseguire analisi approfondite e mirate anche di grandi reti.

I protocolli di autenticazione di Windows, da XP a 7, da Server 2003 a 2008 R2, verranno esaminati in grande dettaglio per mostrarne le principali debolezze e le relative tecniche di attacco.

Metasploit è principe di questo modulo e ricoperto in oltre due ore di materiale video su exploitation client-side e remota.

In questo modulo sono previsti laboratori pratici su Hera Lab.

5. VA & Exploitation 5.1. Vulnerability Assessment

5.1.1. Nessus 5.2. Low-Hanging Fruits

5.2.1. Cracking di servizi di rete: SSH, SMB, VNC, RDP, Telnet, FTP… 5.3. Exploitation

5.3.1. Introduzione a Metasploit 5.3.2. Debolezze di Windows LM/NTLM/NTLMv2

NETWORK SECURITY

Page 16: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

5.3.3. Utilizzo avanzato di Metasploit e SET: Client-Side exploitation contro machine Windows e Linux

5.3.4. Utilizza avanzato di Metasploit: Remote exploitation

MODULO 6: POST EXPLOITATION Frutto di anni di esperienza sul campo, gli istruttori di eLearnSecurity hanno definito una metodologia collaudata per quanto riguarda la fase di post- exploitation.

Una volta che lo studente ha preso confidenza con le più recenti tecniche di Exploitation, è pronto per la fase di Post Exploitation e le sue sotto fasi cicliche.

Questa è la fase in cui un attaccante si garantisce accesso con privilegi elevati alla rete remota, al fine di rubare documenti sensibili dell'organizzazione.

I penetration tester devono garantire di possedere la stessa conoscenza e gli stessi strumenti per verificare non solo la sicurezza, ma anche qualsiasi tipo di debolezza interna che coinvolge l'organizzazione.

Metasploit è impiegato in ogni fase della metodologia.

In questo modulo sono previsti laboratori pratici su Hera Lab.

6. Post Exploitation 6.1. Introduzione alla metodologia 6.2. Mantenere l’accesso e Privilege escalation

6.2.1. Privilege escalation 6.2.1.1. Migrazione e Getsystem 6.2.1.2. Privilege Escalation su Win Server 2008 e Windows 7

6.2.2. Mantenere l’accesso sulla macchina compromessa 6.2.2.1. Crack / Pass the hash 6.2.2.2. Backdoor 6.2.2.3. RDP / Telnet

6.3. Raccolta dati 6.3.1. Determinare il ruolo della macchina nella rete remota 6.3.2. Raccolta di documenti 6.3.3. Raccolta di credenziali memorizzate 6.3.4. Raccolta di dati di Browser Web 6.3.5. Keylogging

NETWORK SECURITY

Page 17: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

6.4. Mappare la rete interna 6.4.1. ARP Scanning 6.4.2. Pivoting 6.4.3. Port scanning della rete interna

6.5. Ulteriore exploitation via Pivoting 6.5.1. Pash the hash

MODULO 7: ANONIMITÀ Quando la simulazione di un attacco stealth è inclusa nell’ambito dei test, il penetration tester deve dar prova di saper ricoprire le proprie tracce.

Questo Modulo ricopre le migliori tecniche per eseguire un penetration test senza lasciar traccia. 7. Anonimità

7.1. Anonimità nella navigazione Web 7.1.1. Proxy HTTP 7.1.2. Rete Tor

7.2. Tunneling per anonimità 7.2.1. Creare tuttne SSH

7.3. Eliminare le tracce

MODULO 8: SOCIAL ENGINEERING Questo modulo guiderà lo studente nel mondo del Social Engineering attraverso le tecniche più moderne.

Saranno illustrati attacchi reali che sfruttano le potenzialità dei social network come Facebook, Twitter o Spokeo.

Quasi 1 ora di video vi insegnerà tutto ciò che c'è da sapere per padroneggiare il più importante software nell’ambito del SE: Social Engineering Toolkit. 8. Social Engineering

8.1. Che cosa è il Social Engineering 8.2. Tipi di Social Engineering

8.2.1. Pretexting 8.2.2. Phishing

NETWORK SECURITY

Page 18: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

8.2.3. Baiting 8.2.4. Physical

8.3. Esempi di attachi di Social Engineering 8.3.1. Lotteria Candese 8.3.2. FBI Email

8.4. Esempi di Pretexting 8.5. Ruolo nei Social Networks nel Social Engineering

8.5.1. Pipl 8.5.2. Spokeo

8.6. Social engineering toolkit (SET)

NETWORK SECURITY

Page 19: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 1: INTRODUZIONE Questo modulo vi introdurrà al mondo della sicurezza delle applicazioni web e alla sua terminologia di base.

Se vi affacciate in questo campo solo ora, non preoccupatevi, questo modulo riunisce tutte le competenze necessarie per comprendere al meglio il resto della sezione.

In questo modulo sono inclusi laboratory in Coliseum Lab WAS 36.

1. Introduzione alle Applicazioni Web 1.1. Introduzione

1.1.1. Sessioni 1.1.2. Header 1.1.3. Politica della stessa origine

1.2. Terminologia 1.3. Tool

1.3.1. Burp Suite

MODULO 2: INFORMATION GATHERING La raccolta d’informazioni riguardanti le applicazioni Web è un processo lungo e complesso. Ci vuole intuizione e perseveranza.

Imparerete le migliori metodologie per raccogliere e memorizzare le informazioni sulle attività web del vostro target.

Queste informazioni saranno utilizzate in fasi successive durante il processo di exploitation.

Al termine di questo modulo lo studente sarà in grado di avere così tante informazioni sull’obiettivo che la fase di exploitation sarà facile e divertente.

In questo modulo sono previsti laboratori in Coliseum Lab WAS 360. 2. Raccolta d’informazioni

2.1. Ottenere informazioni sul Target 2.1.1. Trovare il proprietario, indirizzi IP e Indirizzi email

WEB APPLICATION SECURITY

Page 20: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

2.1.1.1. Tool WHOIS 2.1.1.2. Query DNS e zone transfer 2.1.1.3. Usare Nslookup

2.2. Infrastruttura 2.2.1. Fingerprinting del Webserver

2.2.1.1. Fingerprinting di moduli del Webserver 2.2.1.2. Servizi HTTP

2.3. Fingerprinting di Frameworks e Applicazioni 2.3.1. Fingerprinting di Add-on di terze parti

2.4. Fingerprinting di applicazioni personalizzate 2.4.1. Mappare la superficie d’attacco

2.5. Enumerazione di risorse 2.5.1. Crawling del sito web 2.5.2. Trovare file nascosti

2.5.2.1. Trovare file di back-up e codici sorgenti 2.5.3. Enumerazione di account utente con Burp Proxy

2.6. Recuper d’informazioni attraverso errori di configurazione 2.6.1. Directory Listing 2.6.2. Log e file di configurazione

2.7. Google Hacking

MODULO 3: VULNERABILITY ASSESSMENT Il Vulnerability Assessment è il processo attraverso il quale potrete scoprire tutte le vulnerabilità nell’applicazione web.

Questo passaggio è assolutamente necessario quando il server web remoto fa parte dello scopo dei test o quando il target usa applicazioni web create da terzi.

Alla fine di questo modulo lo studente sarà in grado di padroneggiare i due strumenti gratuiti più utilizzati: Nessus e Nikto.

In questo modulo sono previsti laboratori in Coliseum Lab WAS 360.

3. Vulnerability Assessment 3.1. Vulnerability Assessment

3.1.1. Vulnerability assessment VS Penetration testing 3.2. Assessing vulnerabilities con Nessus 3.3. Nikto

3.3.1. Creare moduli in Nikto

WEB APPLICATION SECURITY

Page 21: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 4: CROSS-SITE SCRIPTING La più diffusa vulnerabilità delle applicazioni web sarà studiata in tutte le sue parti.

In un primo momento sarà fornita una spiegazione teorica. Questo vi aiuterà nell’exploitation e nel processo di remediation.

Più avanti lo studente podroneggierà tutte le tecniche per trovare le vulnerabilità XSS attraverso test black box e analisi di codice PHP.

Il Modulo terminerà con alcuni esempi reali di exploitation: Rubare cookie di sessione, modificare il DOM del sito web ed eseguire attacchi avanzati di phishing.

In questo modulo sono previsti laboratori in Coliseum Lab WAS 360.

4. XSS 4.1. Cross-Site Scripting

4.1.1. Le basi 4.2. Anatomia di un XSS 4.3. Tre tipi di XSS

4.3.1. XSS Riflesso 4.3.2. XSS Persistente 4.3.3. DOM-based XSS

4.4. Trovare XSS 4.4.1. Trovare XSS in codice PHP

4.5. Exploitation di XSS 4.5.1. XSS, Browser e politica della stessa orgine 4.5.2. Attacchi reali

4.5.2.1. Rubare cookie tramite XSS 4.5.2.2. Defacement 4.5.2.3. Attacchi Phishing avanzati

MODULO 5: SQL INJECTION Questo modulo contiene le tecniche più avanzate per trovare e sfruttare SQL Injections. Si va dalla spiegazione delle SQL Injection più semplici fino a quelle più complicate, con un elevato grado di dettaglio.

WEB APPLICATION SECURITY

Page 22: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

Verrano insegnati metodi avanzati tramite l’ausilio di esempi reali e dei migliori tool disponibili.

Lo studente sarà in grado di eseguire il dump di database remoti, ma anche di ottenere privilegi di root sulla macchina remota attraverso tecniche avanzate di SQL Injection.

La spiegazione dettagliata dei tool e una tassonomia aiuterà lo studente a scegliere gli strumenti giusti, a seconda dell'ambiente e dello scenario che si troveranno ad affrontare durante incarichi reali.

In questo modulo sono inclusi laboratori in Coliseum Lab WAS 360.

5. SQL Injection 5.1. Introduzione alle SQL Injection

5.1.1. Pericoli di una SQL Injection 5.1.2. Come le SQL Injection funzionano

5.2. Come trovare le SQL injection 5.2.1. Come trovare SQL injection 5.2.2. Trovare le Blind SQL Injection

5.3. Exploit di SQL Injection 5.3.1. Exploit di Union SQL Injection

5.4. Exploit di Error Based SQL Injection 5.4.1. Recuperare dati dal database 5.4.2. Leggere file sul sistema remoto 5.4.3. Accedere all rete remota

5.5. Exploit di Blind SQL Injection 5.5.1. Blind SQL Injection ottimizzate 5.5.2. Time Based SQL Injection

5.6. Tool 5.6.1. SQLmap, BSQL, Hacker, Pangolin 5.6.2. Tassonomia dei Tool

MODULO 6: ATTACCHI WEB AVANZATI I più moderni attacchi alle applicazioni web saranno oggetto di questo modulo.

Session Fixation e CSRF sono vulnerabilità talvolta trascurate, ma non per noi, che in questo le abbiamo trattate con dovizia di particolari ed esempi reali.

WEB APPLICATION SECURITY

Page 23: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

Un exploit funzionante di CSRF verrà creato passo dopo passo, per dimostrare una vulnerabilità CSRF trovata in un famoso CMS.

Importantissime tecniche di attacco quali LFI e RFI saranno dimostrate in maniera pratica.

Ultimo ma non meno importanti saranno le tecniche di analisi relative ad applicazioni che fanno utilizzo di Ajax.

In questo modulo sono inclusi laboratori in Coliseum Lab WAS 360. 6. Attacchi Web Avanzati

6.1. Introduzione 6.2. Attacchi alla sessione

6.2.1. HTTP Session Fixation 6.2.2. Prevenire le Session Fixation

6.3. CSRF 6.3.1. Trovare i CSRF 6.3.2. Exploit di CSRF 6.3.3. Prevenire i CSRF

6.4. Vulnerabilità Inclusione di File 6.4.1. Local File Inclusion 6.4.2. Remote File Inclusion

6.5. Attacchi Web 2.0 6.5.1. Come funziona Ajax 6.5.2. Bypassare httpOnly – XST & Ajax 6.5.3. Ajax API 6.5.4. Reverse engineering della logica delle applicazioni Ajax 6.5.5. Funzioni amministrative esposte

WEB APPLICATION SECURITY

Page 24: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 1: INSTALLAZIONE E FONDAMENTA In questo primo modulo della sezione Ruby, lo studente vedrà come installar e configurare l’ambiente in modo da lavorare con Ruby.

Una volta che l’ambiente è stato configurato, lo studente imparerà i concetti base come: avviare e scrivere script, usare l’interprete, installare gemme e molto altro. Lo studente imparerà anche i concetti base di Ruby come tipi di dati, variabili e altro ancora.

È possibile scaricare gli script utilizzati per questo modulo.

1. Installazione e fondamenta 1.1. Installazione & Primo utilizzo

1.1.1. Installazione 1.1.1.1. Windows 1.1.1.2. Altri sistemi 1.1.1.3. Suggerimenti

1.1.2. Primi passi in Ruby 1.1.2.1. Ruby da file 1.1.2.2. Ruby da linea di comando 1.1.2.3. Ruby interattivo 1.1.2.4. Suggerimenti

1.1.3. Il potere di Ruby 1.1.3.1. Calcolatrice interattiva 1.1.3.2. Ruby one liner 1.1.3.3. Suggerimenti

1.1.4. Librerie 1.1.4.1. Gemme di Ruby

1.2. Tipi di dati 1.2.1. Numeri

1.2.1.1. Integer 1.2.1.2. Float 1.2.1.3. Numeric 1.2.1.4. Anticipazioni 1.2.1.5. Commenti

1.2.2. Stringhe 1.2.2.1. Apici singoli o doppi? 1.2.2.2. Alternative agli apici 1.2.2.3. Informazioni sulle stringhe 1.2.2.4. Notazione Here document

RUBY PER PENTESTERS E METASPLOIT

Page 25: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

1.2.2.5. Aritmetica delle stringhe 1.2.2.6. Interpolazione 1.2.2.7. Metodi utili

1.2.3. Array 1.2.3.1. Creazione di Array 1.2.3.2. Accedere agli elementi degli array 1.2.3.3. Array Multi-type 1.2.3.4. Array multi-dimensionali 1.2.3.5. Variabili e array 1.2.3.6. Inserimento 1.2.3.7. Cancellazione 1.2.3.8. Operazioni tra array 1.2.3.9. Stack 1.2.3.10. Metodi utili 1.2.3.11. Array e Stringhe

1.2.4. Ranges & Hashe 1.2.4.1. Ranges (fundamenta) 1.2.4.2. Ranges (metodi) 1.2.4.3. Ranges e variabili 1.2.4.4. Hashes (fundamenta) 1.2.4.5. Hashes (methodi)

MODULO 2: STRUTTURE DI CONTROLLO Una delle più importanti strutture che un programmatore deve padroneggiare sono le “strutture di controllo di flusso”.

In questo modulo lo studente imparerà a scrivere e definire diversi tipi di strutture di controllo. Questo permetterà allo studente di creare script e programmi che non sono limitati a un’esecuzione lineare.

È possibile scaricare gli script utilizzati per questo modulo.

2. Strutture di controllo 2.1. Operatori di comparazione 2.2. Operatori di condizione

2.2.1. if 2.2.2. unless 2.2.3. case 2.2.4. Operatori tenari

RUBY PER PENTESTERS E METASPLOIT

Page 26: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

2.3. Loop 2.3.1. while 2.3.2. until 2.3.3. for

2.4. Iteratori e enumeratori 2.4.1. Iteratori 2.4.2. Oggetti enumerabili 2.4.3. Enumeratori 2.4.4. Iteratori esterni 2.4.5. Conclusioni

2.5. Alterare il flusso della struttura di controllo 2.5.1. break 2.5.2. next 2.5.3. redo 2.5.4. Alcune considerazioni

2.6. BEGIN / END

MODULO 3: METODI, VARIABILI E SCOPE Ogni programma deve essere pulito e avere del codice riutilizzabile.

In questo modulo lo studente imparerà a definire e usare i metodi, blocchi, alias e molto altro. Questo è utile per creare tool e script molto potenti.

Con l’introduzione ai metodi e ai blocchi, un argomento molto importante deve essere spiegato: lo scope.

È possibile scaricare gli script utilizzati per questo modulo. 3. Metodi, variabili e scope

3.1. Metodi 3.1.1. Definizione di metodi 3.1.2. Parentesi 3.1.3. Alias 3.1.4. Valori di default dei parametri 3.1.5. Lunghezza argomenti variabile 3.1.6. Hash come argomenti 3.1.7. Argomenti di blocchi 3.1.8. Metodo bang 3.1.9. Valori di ritorno

RUBY PER PENTESTERS E METASPLOIT

Page 27: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

3.2. Variabili e scope 3.2.1. Tipi di variabili 3.2.2. Variabili locali 3.2.3. Variabili globali 3.2.4. Istanze e variabili di classe 3.2.5. Constanti 3.2.6. Alcuni suggerimenti

MODULO 4: CASSI, MODULI ED ECCEZIONI Ruby è un linguaggio di programmazione orientato agli oggetti. Detto questo un programma OO include classi e oggetti.

In questo modulo inizieremo coprendo argomenti più avanzati e vedremo come definire classi, funzioni, moduli, mixin, namespace e molto altro.

Insieme a questi argomenti, vedremo anche come gestire le eccezioni; le eccezioni sono molto utili e saperle utilizzare permette di prendere il controllo del comportamento dei programmi.

È possibile scaricare gli script utilizzati per questo modulo. 4. Classi, moduli ed eccezioni

4.1. Classi 4.1.1. Una semplice classe 4.1.2. Variabili d’istanza 4.1.3. Getter/Setter tramite Metaprogramming 4.1.4. La classe Methods 4.1.5. La classe Variables 4.1.6. Constanti 4.1.7. Qualcosa in più sulle classi 4.1.8. Classi aperte 4.1.9. Metodi per operare sulle classi 4.1.10. Valori

4.2. Visibilità dei metodi 4.2.1. Metodi privati 4.2.2. Metodi protetti 4.2.3. Ricapitoliamo

4.3. Sottoclassi & eredità 4.3.1. Estensioni

RUBY PER PENTESTERS E METASPLOIT

Page 28: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

4.3.2. Sovrascrivere i metodi 4.3.3. Specializzare un metodo 4.3.4. Istanze e variabili di classi 4.3.5. Costanti 4.3.6. Metodi privati 4.3.7. Metodi protetti

4.4. Moduli 4.4.1. Namespace 4.4.2. Mixin

4.4.2.1. Namespace e Mixin 4.5. Eccezioni

4.5.1. Raise 4.5.1.1. RuntimeError 4.5.1.2. Other Errors 4.5.1.3. CustomError

4.5.2. Rescue 4.5.2.1. Rescue 4.5.2.2. Oggetti Exception 4.5.2.3. Gestion delle eccezioni 4.5.2.4. Rescue di un modificatore

4.5.3. Altre clausole 4.5.3.1.1. retry 4.5.3.1.2. else 4.5.3.1.3. ensure

4.5.4. Metodi, classi e moduli 4.6. Conclusioni

MODULO 5: PREREQUISITI PER PENTESTERS Ruby è un linguaggio di programmazione molto potente e grazie alle sue tante funzionalità, può essere usato per scopi differenti.

Da questo modulo in poi, ci focalizzeremo su come usare Ruby in maniera orientate al penetration testing. Uno dei primi argomenti che studieremo sono le ‘Regular Expression’

• Espressioni regolari.

Le regex sono molto utilizzate nel campo della sicurezza, ad esempio per trovare informazioni importanti salvate nei file, pagine web, comunicazioni di rete e cosi via.

RUBY PER PENTESTERS E METASPLOIT

Page 29: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

Una buona conoscenza di come usare e definire le regex, è necessaria per un buon penetration tester!

Durante lo studio di questo modulo, lo studente imparerà anche come usare le classi date e time, cosi come gestire ed interagire con file e cartelle: lettura, scrittura, cancellazione e così via.

È possibile scaricare gli script utilizzati per questo modulo. 5. Prerequisiti per Pentesters

5.1. Espressioni regolari 5.1.1. Concetti base

5.1.1.1. Un esempio 5.1.1.2. Oggetto Regexp 5.1.1.3. Modificatore Regexp 5.1.1.4. Metodo Match 5.1.1.5. Caratteri speciali

5.1.2. Sintassi delle espressioni regolari 5.1.2.1. Classe character 5.1.2.2. Sequenze 5.1.2.3. Alternative 5.1.2.4. Gruppi 5.1.2.5. Ripetizioni 5.1.2.6. Ancore 5.1.2.7. Un esempio reale 5.1.2.8. Qualcosa in più sulle regex

5.1.3. Espressioni regolari in Ruby 5.1.3.1. Variabili globali 5.1.3.2. Lavorare con le stringhe

5.2. Date e time 5.2.1. Classe Time

5.2.1.1. Creare un’istanza time 5.2.1.2. Componenti del time 5.2.1.3. Predicati e conversioni 5.2.1.4. Aritmetica 5.2.1.5. Confronto 5.2.1.6. Da time a stringa

5.2.2. Altre classi 5.3. File e Cartelle

5.3.1. Cartelle

RUBY PER PENTESTERS E METASPLOIT

Page 30: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

5.3.1.1. Cartella corrente 5.3.1.2. Cambiare cartella 5.3.1.3. Creazione / eliminazione 5.3.1.4. Elencare cartelle 5.3.1.5. Provare la cartelle 5.3.1.6. Oggetto Dir 5.3.1.7. Esempio: Windows application directory listing

5.3.2. File 5.3.2.1. Provare i file 5.3.2.2. Lavorare con i nomi 5.3.2.3. Creare/cancellare/rinominare 5.3.2.4. Cambiare permessi

5.4. Conclusioni

MODULO 6: INPUT / OUTPUT In questo modulo lo studente imparerà come utilizzare differenti meccanismi e tecniche di input/output in modo da trovare (leggere) o memorizzare (scrivere) informazioni sui file.

Vedremo diversi esempi e script che possono essere usati insieme ad altri tool (i.e. nmap) in modo da ottenere, filtrare e memorizzare informazioni importanti.

È possibile scaricare gli script utilizzati per questo modulo. 6. Input / Output

6.1. File Stream 6.1.1. Leggere da file 6.1.2. Scrivere su file

6.2. Lavorare con file di NMap Files 6.2.1. Estrazione di IP

6.2.1.1. Formato Normal 6.2.1.2. Formato Grepable 6.2.1.3. Formato XML 6.2.1.4. Tutto insieme

6.2.2. Estrazione porte aperte 6.2.2.1. Formato Normal 6.2.2.2. Formato Grepable 6.2.2.3. Formato XML 6.2.2.4. Tutto insieme

RUBY PER PENTESTERS E METASPLOIT

Page 31: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

6.3. Conclusione

MODULO 7: NETWORK AND OS INTERACTION Un altro argomento molto importante che un penetration tester deve padroneggiare sono le “comunicazioni di rete”.

In questo modulo lo studente imparerà come usare Ruby per creare, forgiare e intercettare le comunicazioni di rete.

Grazie ai tanti esempi e script, lo studente imparerà come creare raw socket, forgiare pacchetti, scanner TCP/UDP e molto altro.

Nel modulo seguente vedremo inoltre come interagire con il sistema operativo in remoto e in locale.

Questo, assieme alle comunicazioni di rete, può essere molto utile per la creazione di potenti tool (ad esempio backdoor che sono in grado di recuperare informazioni dal sistema remoto, così come inviare o eseguire specifici comandi).

È possibile scaricare gli script utilizzati per questo modulo.

Laboratori di Hera sono inclusi in questo modulo. 7. Interazione con la rete e il SO

7.1. La rete 7.1.1. Le basi dei Socket

7.1.1.1. Client TCP 7.1.1.1.1. RFC868 7.1.1.1.2. Connessioni 7.1.1.1.3. Gestire I risultati 7.1.1.1.4. Sockets e blocchi 7.1.1.1.5. Vista in Wireshark 7.1.1.1.6. Più nel dettaglio

7.1.1.2. Client UDP 7.1.1.2.1. RFC868 7.1.1.2.2. Datagram inviare/ricevere 7.1.1.2.3. Gestire i risultati 7.1.1.2.4. Vista in Wireshark 7.1.1.2.5. Comportamento UDP

RUBY PER PENTESTERS E METASPLOIT

Page 32: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

7.1.1.2.6. Più nel dettaglio 7.1.1.3. Servizio Client/Server TCP

7.1.1.3.1. Il Server 7.1.1.3.2. Il Client 7.1.1.3.3. Esecuzione

7.1.2. Attività di Penetration testing 7.1.2.1. Ping sweep

7.1.2.1.1. Net-Ping Gem 7.1.2.1.2. Lo script

7.1.2.2. Port scan - TCP 7.1.2.2.1. Strategia 7.1.2.2.2. Lo script

7.1.2.3. Port scan - UDP 7.1.2.3.1. Strategia 7.1.2.3.2. Lo script

7.1.3. Raw Sockets 7.1.3.1. PacketFu

7.1.3.1.1. Installazione 7.1.3.1.2. Uso 7.1.3.1.3. Forgiare un pacchetto personalizzato 7.1.3.1.4. Forgiare un pacchetto (il modo migliore)

7.1.3.2. TCP SYN port scanner 7.1.3.2.1. Strategia 7.1.3.2.2. Lo Script

7.1.4. Conclusioni 7.2. Interazione con il SO

7.2.1. Kernel exec 7.2.2. Kernel system 7.2.3. Kernel backticks 7.2.4. IO popen 7.2.5. Open3 popen3

RUBY PER PENTESTERS E METASPLOIT

Page 33: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 8: IL WEB Nel modulo precedente lo studente ha visto come creare delle connessioni di rete e come interagire con il SO. Ora è arrivato il momento di focalizzarci sulle applicazioni web.

Vedremo come creare e intercettare richieste e risposte HTTP/HTTPS, così come inviare/ricevere parametri GET e POST, e molto altro.

Insieme a questi argomenti, allo studente saranno anche mostrati alcuni script e casi d’uso, utili per eseguire attacchi contro le applicazioni web e identificare vulnerabilità come XSS.

È possibile scaricare gli script utilizzati per questo modulo.

Laboratori di Hera sono inclusi in questo modulo.

8. Il Web 8.1. Punto d’inizio

8.1.1. Protocolli HTTP 8.1.2. Alternative di Ruby

8.1.2.1. Usare socket 8.1.2.2. Libreria Net::HTTP 8.1.2.3. Libreria Open-uri 8.1.2.4. Oggetto URI

8.2. Richieste e risposte 8.2.1. Classe e istanze di Net::HTTP 8.2.2. GET

8.2.2.1. Net::HTTP get 8.2.2.2. Net::HTTP get_response 8.2.2.3. Oggetto HTTPResponse

8.2.2.3.1. Status 8.2.2.3.2. Headers 8.2.2.3.3. Body 8.2.2.3.4. Tipi di oggetti di risposta

8.2.2.4. Parametri 8.2.2.4.1. Url encapsulation 8.2.2.4.2. Parametri dinamici

8.2.2.5. Istanza Net::HTTP 8.2.2.5.1. Usare il metodo get Instance

RUBY PER PENTESTERS E METASPLOIT

Page 34: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

8.2.2.5.2. Usare Http::Get 8.2.2.5.3. URI e parametri

8.2.2.6. Header di richiesta 8.2.2.6.1. Usare il metodo get Instance 8.2.2.6.2. Usare Http::Get

8.2.2.7. Lavorare con Open-uri 8.2.2.7.1. Metodi aperti 8.2.2.7.2. Header di richiesta

8.2.3. POST 8.2.3.1. Usare Net::HTTP post_form

8.2.3.1.1. Sessions e cookie 8.2.3.2. Using HTTP::Post request object 8.2.3.3. Header di richiesta

8.2.3.3.1. Usare metodo post Instance 8.2.3.3.2. Usare Http::Post

8.2.3.4. Esempio: Post flooding 8.2.4. Connessioni persistenti

8.2.4.1. Esempio: Bruteforce form di login 8.2.4.1.1. Identificazione delle risposte 8.2.4.1.2. Trovare una UserName 8.2.4.1.3. Usare un dizionario 8.2.4.1.4. Usare un generatore di stringhe

8.2.5. HTTPS 8.2.6. Reindirizzamenti

8.2.6.1. Identificazione 8.2.6.2. Seguire la catena

8.2.7. Proxy 8.2.7.1. HTTP Proxy 8.2.7.2. HTTPS Proxy

8.2.8. Altri verbi 8.2.8.1. OPTIONS 8.2.8.2. HEAD 8.2.8.3. Others

8.2.9. Conclusioni 8.3. Estrazione di dati

8.3.1. Espressioni regolari 8.3.1.1. Esempio: estrazione di email

8.3.2. Analisi di documenti 8.3.2.1. Nokogiri

8.3.2.1.1. Installazione

RUBY PER PENTESTERS E METASPLOIT

Page 35: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

8.3.2.1.2. Documentazione e tutorial 8.3.2.2. Esempio: estrazione dei form 8.3.2.3. Esempio: Identificare XSS Riflessi

8.3.2.3.1. Usare l’interprete 8.3.2.3.2. Un semplice tool

8.4. Esercizi 8.4.1. Identificazione CMS 8.4.2. File nascosti 8.4.3. Indexing & Crawling 8.4.4. Enumerazioni dei sottodomini

MODULO 9: EXPLOITATION CON RUBY Durante lo studio del modulo precedente, lo studente dovrebbe aver acquisito le giuste competenze di programmazione in Ruby.

È ora tempo di sfruttare queste conoscenze e usare Ruby in modo da scrivere ed exploitare servizi vulnerabili.

In questo modulo vi presenteremo un’applicazione vulnerabile, che può essere utilizzata dallo studente per imparare a scrivere un exploit funzionante in Ruby.

È possibile scaricare gli script utilizzati per questo modulo.

Laboratori di Hera sono inclusi in questo modulo. 9. Exploitation con Ruby

9.1. ELS Echo Server 9.1.1. Il servizio 9.1.2. Identificazione di bug

9.2. L’exploit 9.2.1. Identificare lo spazio del buffer overflow

9.2.1.1. Fuzzing 9.2.1.2. Usare un debugger

9.2.2. Scrivere il payload 9.2.2.1. Preambolo 9.2.2.2. Indirizzo di ritorno 9.2.2.3. Il payload

9.2.3. Exploitation

RUBY PER PENTESTERS E METASPLOIT

Page 36: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

9.2.3.1. L’intero codice 9.2.3.2. Exploit

9.2.4. Shell sulla vittima 9.2.4.1. Creazione del payload 9.2.4.2. Scrivere lo script 9.2.4.3. Exploitation

9.3. Conclusione

MODULO 10: METASPLOIT Ora che lo studente padroneggia Ruby e le sue funzionalità, è il momento di iniziare a lavorare con il più potente tool scritto in Ruby: Metasploit.

In questo modulo lo studente vedrà l’architettura di Metasploit ed imparerà a creare, aggiungere o modificare i moduli di Metasploit.

Grazie ai nostri laboratori virtuali, lo studente può anche provare i propri moduli su vere macchine virtuali.

È possibile scaricare gli script utilizzati per questo modulo.

Laboratori di Hera sono inclusi in questo modulo. 10. Metasploit

10.1. Introduzione 10.2. ELS Echo Server

10.2.1. Il service 10.2.2. La vulnerabilità 10.2.3. Exploitation con Metasploit

10.3. Architettura e Framework 10.3.1. Architettura

10.3.1.1. Descrizione sintetica 10.3.1.2. File e cartelle

10.3.2. Interfacce 10.3.2.1. MSFConsole 10.3.2.2. MSFCli 10.3.2.3. Interfaccia Web 10.3.2.4. Altre

10.3.3. Librerie 10.3.3.1. Rex

RUBY PER PENTESTERS E METASPLOIT

Page 37: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

10.3.3.2. Libreria Core 10.3.3.3. Libreria Base

10.3.4. Moduli 10.3.4.1. Exploit 10.3.4.2. Auxiliary 10.3.4.3. Payloads 10.3.4.4. Nops, Encoders 10.3.4.5. Post

10.3.5. Plugins 10.3.6. Tools 10.3.7. Alcune considerazioni

10.4. Esplorare e scrivere il modulo ELS Echo 10.4.1. Posizione e tipo del modulo 10.4.2. Struttura ad alto livello del modulo 10.4.3. Informazioni del modulo 10.4.4. Il metodo check 10.4.5. Il metodo exploit 10.4.6. Considerazioni sui target 10.4.7. Conclusioni

10.5. Meterpreter scripting 10.5.1. API base di Meterpreter 10.5.2. Meterpreter scripts

RUBY PER PENTESTERS E METASPLOIT

Page 38: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 1: PREREQUISITI Nel primo modulo della sezione Wi-Fi vedremo quali sono i prerequisiti hardware e software del corso. 1. Prerequisiti

1.1. Software 1.2. Hardware

1.2.1. Antenne 1.2.2. Una nota sulla potenza di segnale 1.2.3. Conclusioni

MODULO 2: CONFIGURAZIONE DELL’AMBIENTE In questo modulo lo studente imparerà come configurare in maniera corretta l’ambiente di test, in modo da ottenere il miglior risultato dai moduli successivi. 2. Configurazione dell’ambiente

2.1. Introduzione 2.1.1. Considerazioni sui driver Linux

2.2. Configurazione del dispositivo 2.2.1. Provare la configurazione

MODULO 3: STANDARD E RETI WIRELESS Nel modulo seguente lo studente imparerà i concetti alla base delle infrastrutture Wi-Fi.

Vedremo quali tipi di configurazioni Wi-Fi esistono, come funzionano e quali sono le misure e i meccanismi di sicurezza implementati.

Presenteremo inoltre una panoramica delle più importanti debolezze che affliggono i differenti tipi d’infrastruttura e protocolli Wireless.

È possibile scaricare gli script utilizzati per questo modulo. 3. Standard e Reti Wireless

3.1. Standard IEEE 802.11 3.2. Tipi di rete Wireless

WI-FI SECURITY

Page 39: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

3.2.1. Rete Infrastructure 3.2.2. Rete Ad-Hoc

3.3. Frame Wireless 3.3.1. Frame di gestione

3.3.1.1. Beacon 3.3.1.2. Probe requests 3.3.1.3. Probe responses 3.3.1.4. Autenticazione 3.3.1.5. Richiesta di associazione 3.3.1.6. Risposta di associazione 3.3.1.7. Frame di disassociazione 3.3.1.8. Frame di deautenticazione 3.3.1.9. Richieste e risposte di riassociazione

3.4. Caratteristiche di sicurezza 3.4.1. Cifratura

3.4.1.1. WEP 3.4.1.1.1. Initialization vector 3.4.1.1.2. RC4 3.4.1.1.3. Integrity Check value

3.4.1.2. Debolezze WEP 3.4.1.2.1. Paradosso Birthday (compleanno) 3.4.1.2.2. Riuso del Keystream 3.4.1.2.3. Attacco known plaintext 3.4.1.2.4. CRC-32 3.4.1.2.5. Attaco Bit-flipping 3.4.1.2.6. Attacco FSM 3.4.1.2.7. KoreK 3.4.1.2.8. PTW

3.4.1.3. WPA 3.4.1.3.1. Protocollo Temporal Key Integrity 3.4.1.3.2. CCMP/AES

3.4.1.4. WPA2 3.4.2. Autenticazione

3.4.2.1. Open System 3.4.2.2. Shared Key Authentication

WI-FI SECURITY

Page 40: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 4: SCOPRIRE RETI WI-FI Il primo passo quando eseguiamo un penetration test su reti Wi-Fi è di scoprire e identificare il nostro target.

In questo modulo vedremo come farlo tramite una serie di tool disponibili per piattaforme differenti.

È possibile scaricare gli script utilizzati per questo modulo. 4. Scoprire reti Wi-Fi

4.1. Tool 4.1.1. inSSIDer 4.1.2. Kismet 4.1.3. Airodump-ng

4.2. SSID nascosti 4.2.1. Network de-cloaking

MODULO 5: ANALISI DEL TRAFFICO Dopo che la rete target è stata identificata, il passo successivo è di configurare i nostri tool in modo da sniffare e intercettare il traffico.

Questo è un passaggio molto importante per tutti gli attacchi che si eseguiranno da questo momento in poi.

È possibile scaricare gli script utilizzati per questo modulo. 5. Analisi del traffico

5.1. Cattura del traffico 5.2. Monitor mode 5.3. Channel Hopping 5.4. Filtri Wireshark 5.5. Decifrare il traffico

WI-FI SECURITY

Page 41: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

MODULO 6: ATTACCHI A RETI WI-FI Il seguente modulo si concentra sugli attacchi che possono essere eseguiti su reti Wi-Fi.

Dipendentemente dalla configurazione e dei meccanismi di sicurezza implementati, lo studente imparerà come attaccare e accedere a reti Wi-Fi remote, ottenere le chiavi, le password e molto altro.

Inizieremo esplorando gli attacchi contro WEP e poi focalizzeremo i nostri test su reti più sicure: WPA, WPA2 e WPS.

È possibile scaricare gli script utilizzati per questo modulo.

6. Attaccare reti Wi-Fi 6.1. WEP

6.1.1. Panoramica e configurazione 6.1.2. Attacco di deautenticazione 6.1.3. Attacco ARP replay 6.1.4. Cracking delle chiavi con aircrack-ng

6.1.4.1. Attacco PTW con aircrack-ng 6.1.4.2. Attacco KoreK

6.1.5. Cracking WEP senza client 6.1.6. Bypassare la Shared Key Authentication 6.1.7. Attaccare il client

6.1.7.1. Caffe-Latte 6.1.7.2. Attacco Caffe-Latte

6.2. WPA e WPA2 6.2.1. Il Four-Way Handshake 6.2.2. Catturare l’handshake 6.2.3. Usare aircrack-ng contro l’handshake

6.2.3.1. Creare una wordlist con crunch 6.2.3.2. Una nota sulla velocità di cracking

6.2.4. Sfruttare la potenza delle GPU 6.2.4.1. oclHashCat

6.2.5. Cracking as a Service 6.2.5.1. CloudCracker

6.2.6. Space-time tradeoff 6.2.6.1. Pyrit 6.2.6.2. Pre-built hash

WI-FI SECURITY

Page 42: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Home page del corso: www.elearnsecurity.it/ptp

6.3. WPS 6.4. Conclusioni

MODULO 7: WI-FI COME VETTORE D’ATTACCO Nell’ultimo modulo di questa sezione, lo studente imparerà come usare Wi-Fi come vettore d’attacco.

Questo significa che non si eseguiranno degli attacchi alle reti Wi-Fi, piuttosto si utilizzerà Wi-Fi in modo da creare false reti, ottenere credenziali, eseguire attacchi MitM e molto altro. 7. Wi-Fi come vettore d’attacco

7.1. Rogue AP 7.1.1. Scenario tipo di Rogue AP 7.1.2. Recuperare PRGA con un rogue AP 7.1.3. Inizializzare un handshake WPA/WPA2 7.1.4. Attacco Man in the Middle

7.2. Wardriving

WI-FI SECURITY

Page 43: PENETRATION TESTING PROFESSIONAL VERSIONE 3 · Il corso di formazione PTP è vantaggioso per coloro che desiderano fare carriera come professionisti del penetration testing o personale

Noi siamo eLearnSecurity. Con sede a Santa Clara, California, e uffici a Pisa (Italia) e Dubai (UAE), Caendra Inc è una fonte affidabile di competenze in ambito di IT Security per professionisti e aziende di tutte le dimensioni. Caendra Inc. è la società con sede nella Silicon Valley che detiene il marchio eLearnSecuity. eLearnSecurity ha dimostrato di essere un leader innovativo nel campo della formazione pratica in ambito di sicurezza, con la migliore tecnologia di virtualizzazione, progetti interni come Coliseum Web Application Security Framework e Hera Network Security Lab, ha cambiato il modo con cui gli studenti apprendono e mettono in pratica nuove competenze. Per maggiori informazioni visitate http://www.elearnsecurity.it. Contatti: www.elearnsecurity.it [email protected]


Recommended