Modalità di lettura

Creazione di uno shellcode custom in ASM con Keystone-Engine

Introduzione In questo articolo vedremo come creare uno shellcode custom in ASM in Windows x86 tramite l’utilizzo di keystone-engine. Partendo dalle basi creeremo il template, per poi via via aumentare le istruzioni che andremo ad eseguire fino ad avere una reverse shell completa. Consiglio di leggere prima gli scorsi articoli sul Buffer Overflow, certe cose le darò per scontato (specialmente su WinDBG e l’assembly). Per chi non conoscesse l’assembly consiglio Assembly Crash Course e OpenSecurity Training.
  •  

Linee guida per la Certificazione OSED

Negli scorsi articoli, come avrete notato, ho pubblicato solo articoli inerenti al Buffer Overflow, partendo dai semplici Stack Overflow per poi via via arrivare alla tecnica ROP e al bypass di DEP. Il motivo principale è perchè stavo preparando la certificazione OSED, che ho superato con successo qualche giorno fa! Windows User Mode Exploit Development (EXP-301) è un corso che insegna agli studenti le basi dello sviluppo di exploit, basato interamente su Windows x86.
  •  

DEP Bypass III - Cloud Me 1.11.2 - VirtualAlloc

Introduzione Terzo articolo della serie DEP Bypass, target: Cloud Me 1.11.2. Altri post in questa serie: DEP Bypass I - Vulnserver TRUN DEP Bypass II - DEP Bypass II - EasyRMtoMP3Converter L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine. Lab Setup Per avere un ambiente ad hoc serve: VM con Windows 10 a 32 bit, potete trovarlo qui (se accedete con un computer Windows dovete cambiare l’user agent con Linux/Mac).
  •  

DEP Bypass II - EasyRMtoMP3Converter

Introduzione Secondo articolo della serie DEP Bypass, target: EasyRMtoMP3Converter. Altri post in questa serie: DEP Bypass I - Vulnserver TRUN L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine. Lab Setup Per avere un ambiente ad hoc serve: VM con Windows 10 a 32 bit, potete trovarlo qui (se accedete con un computer Windows dovete cambiare l’user agent con Linux/Mac).
  •  

DEP Bypass I - Vulnserver TRUN

Introduzione La Data Exectution Prevention (DEP) è una funzione di protezione della memoria inserita da Windows XP in poi e consente al sistema di contrassegnare una o più pagine di memoria come non eseguibili. Ciò significa che il codice non può essere eseguito da quella regione di memoria, il che rende più difficile lo sfruttamento di buffer overflow. Se un’applicazione tenta di eseguire codice da una pagina di dati protetta, si verifica un’eccezione di violazione dell’accesso alla memoria e, se l’eccezione non viene gestita, il processo chiamante viene terminato.
  •  

Egghunter V - Sysax 5.53

Introduzione Quinto articolo della serie Egghunter Buffer Overflow, target Sysax 5.53 Altri post in questa serie: Egghunter I - Vulnserver GMON Egghunter II - freeFTPd 1.0.10 Egghunter III - Vulnserver KSTET Egghunter IV - TFTP Server 1.4 Egghunter V - Sysax 5.3 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Egghunter IV - TFTP Server 1.4

Introduzione Quarto articolo della serie Egghunter Buffer Overflow, target TFTP Server 1.4 Altri post in questa serie: Egghunter I - Vulnserver GMON Egghunter II - freeFTPd 1.0.10 Egghunter III - Vulnserver KSTET Egghunter IV - TFTP Server 1.4 Egghunter V - Sysax 5.3 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Egghunter III - Vulnserver KSTET

Introduzione Terzo articolo della serie Egghunter Buffer Overflow, target Vulnserver. Altri post in questa serie: Egghunter I - Vulnserver GMON Egghunter II - freeFTPd 1.0.10 Egghunter III - Vulnserver KSTET Egghunter IV - TFTP Server 1.4 Egghunter V - Sysax 5.3 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Egghunter II - freeFTPd 1.0.10

Introduzione Secondo articolo della serie Egghunter Buffer Overflow, target freeFTPd 1.0.10 Altri post in questa serie: Egghunter I - Vulnserver GMON Egghunter II - freeFTPd 1.0.10 Egghunter III - Vulnserver KSTET Egghunter IV - TFTP Server 1.4 Egghunter V - Sysax 5.3 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Egghunter I - Vulnserver GMON

Introduzione Una delle sfide durante la scrittura di un exploit è la gestione dello spazio che serve per inserire lo shellcode malevolo. Certe volte si trovano Stack Buffer Overflow, ma ci sono talmente pochi byte per l’inserimento dello shellcode che è necessario trovare un metodo alternativo. L’egghunter (letteralmente “cacciatore di uova”) è una piccola porzione di codice che, una volta inserito, andrà alla ricerca di una particolare stringa (l’uovo appunto) in tutta la memoria del programma.
  •  

Reverse Engineering di un eseguibile - Vulnserver

Introduzione Il Reverse engineering indica l’analisi delle funzioni, dell’impiego e della modellazione di un software. Di fatto è l’atto di scomporre un software al fine di capirne il funzionamento senza avere però il codice sorgente. Il software che utilizzeremo come esempio è vulnserver, software che abbiamo già visto in altri articoli. Senza utilizzare le informazioni online, analizzeremo manualmente il software con WinDBG e IDA al fine di trovare una vulnerabilità in esso.
  •  

SEH Overflow IV - DocPrint Pro 8.0

Introduzione Quarto articolo della serie SEH Buffer Overflow, target: DocPrint Pro 8.0, exploit. Altri post in questa serie: 5. SEH Overflow I - Vulnserver GMON 5. SEH Overflow II - EFS Easy Chat Server 3.1 5. SEH Overflow III - Easy File Sharing Web Server 7.2 5. SEH Overflow IV - DocPrint Pro 8.0 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti.
  •  

SEH Overflow III - Easy File Sharing Web Server 7.2

Introduzione Terzo articolo della serie SEH Buffer Overflow, target: Easy File Sharing Web Server 7.2 Altri post in questa serie: 5. SEH Overflow I - Vulnserver GMON 5. SEH Overflow II - EFS Easy Chat Server 3.1 5. SEH Overflow III - Easy File Sharing Web Server 7.2 5. SEH Overflow IV - DocPrint Pro 8.0 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti.
  •  

SEH Overflow II - EFS Easy Chat Server 3.1

Introduzione Secondo articolo della serie SEH Buffer Overflow, target: EFS Easy Chat Server 3.1 Altri post in questa serie: 5. SEH Overflow I - Vulnserver GMON 5. SEH Overflow II - EFS Easy Chat Server 3.1 5. SEH Overflow III - Easy File Sharing Web Server 7.2 5. SEH Overflow IV - DocPrint Pro 8.0 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti.
  •  

SEH Overflow I - Vulnserver GMON

Introduzione Con questo articolo continuiamo la serie Stack Overflow passando ad un nuovo argomento, ossia il SEH Structured exception handling. Un gestore di eccezioni è un costrutto di programmazione utilizzato per fornire un modo strutturato per gestire le condizioni di errore a livello di sistema e di applicazione. A livello di codice solitamente si trova sotto forma di un costrutto di questo tipo try { //fai qualcosa } catch { //se va in errore fai altro } Ogni volta che viene incontrato un try block, un puntatore al corrispondente exception handler è salvato sullo stack nella struttura _EXCEPTION_REGISTRATION_RECORD.
  •  

Stack Buffer Overflow V - Disk Sorter Enterprise 9.5.12

Introduzione Quinto articolo della serie Buffer Overflow, target: Disk Sorter Enterprise 9.5.12. Altri post in questa serie: Stack Buffer Overflow I - Vulnerserver TRUN Stack Buffer Overflow II - Brainpan Stack Buffer Overflow III - dostackbufferoverflowgood Stack Buffer Overflow IV - EasyRMtoMP3Converter Stack Buffer Overflow V - Disk Sorter Enterprise 9.5.12 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti.
  •  

Stack Buffer Overflow IV - EasyRMtoMP3Converter

Introduzione Quarto articolo della serie Buffer Overflow, target: EasyRMtoMP3Converter Altri post in questa serie: Stack Buffer Overflow I - Vulnerserver TRUN Stack Buffer Overflow II - Brainpan Stack Buffer Overflow III - dostackbufferoverflowgood Stack Buffer Overflow IV - EasyRMtoMP3Converter Stack Buffer Overflow V - Disk Sorter Enterprise 9.5.12 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Stack Buffer Overflow III - dostackbufferoverflowgood

Introduzione Terzo articolo della serie Buffer Overflow, target: dostackbufferoverflowgood Altri post in questa serie: Stack Buffer Overflow I - Vulnerserver TRUN Stack Buffer Overflow II - Brainpan Stack Buffer Overflow III - dostackbufferoverflowgood Stack Buffer Overflow IV - EasyRMtoMP3Converter Stack Buffer Overflow V - Disk Sorter Enterprise 9.5.12 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Stack Buffer Overflow II - Brainpan

Introduzione Secondo articolo della serie Buffer Overflow, target: Brainpan Altri post in questa serie: Stack Buffer Overflow I - Vulnerserver TRUN Stack Buffer Overflow II - Brainpan Stack Buffer Overflow III - dostackbufferoverflowgood Stack Buffer Overflow IV - EasyRMtoMP3Converter Stack Buffer Overflow V - Disk Sorter Enterprise 9.5.12 L’ordine non è casuale, se non viene spiegato qualche dettaglio è perchè è stato spiegato in articoli precedenti. Consiglio di partire dal primo e proseguire in ordine.
  •  

Stack Buffer Overflow I - Vulnerserver TRUN

Con questo articolo daremo il via ad una serie di post che si concentreranno sulle vulnerabilità di tipo Buffer Overflow, partendo dallo Stack, passando da SEH e Egghunter fino ad arrivare al bypass di DEP/ASLR e altre protezioni che sono state introdotte nel corso degli anni su Windows. Tempo fa ho scritto un’articolo che può servire come ripasso, Introduzione al Buffer Overflow e per chi vuole approfondire il discorso su Linux trova tutto qui.
  •  

Penetration Test di Thick Client Parte 5 - Hooking con Frida

Introduzione I Thick Clients sono software che forniscono funzionalità sia locali sia remote, in quanto vengono installati localmente ma effettuano anche richieste di rete. Essi possono essere per esempio client di messaggistica, client di posta elettronica, software di antivirus, e via discorrendo. Il Penetration Test di un Thick Client è particolarmente interessante dal punto di vista di un attaccante, in quanto essi hanno una superficie di attacco notevolmente maggiore rispetto alle classiche applicazioni web o mobile.
  •  

Intercettare Traffico Mobile - Android&iOS

L’intercettazione del traffico HTTPS durante un’attività di Penetration Test Mobile è una fase fondamentale per la buona riuscita di un PT, in quanto se non si riescono a vedere le API chiamate dall’applicazione è praticamente impossibile proseguire e identificare le vulnerabilità che affliggono le API. In questo articolo andremo a vedere i principali metodi per intercettare il traffico, bypassare eventuali pinning e come avere un buon setup per intercettare senza troppi problemi di sorta.
  •  

Penetration Test di Thick Client Parte 4 - La GUI

Introduzione I Thick Clients sono software che forniscono funzionalità sia locali sia remote, in quanto vengono installati localmente ma effettuano anche richieste di rete. Essi possono essere per esempio client di messaggistica, client di posta elettronica, software di antivirus, e via discorrendo. Il Penetration Test di un Thick Client è particolarmente interessante dal punto di vista di un attaccante, in quanto essi hanno una superficie di attacco notevolmente maggiore rispetto alle classiche applicazioni web o mobile.
  •  

DLL Injection

Introduzione La DLL Injection è una tecnica di Code Injection per eseguire del codice all’interno di un processo forzandolo a caricare una libreria DLL esterna. Non è da confondere con il DLL Hijacking. Essa viene solitamente eseguita scrivendo il percorso di una DLL nello spazio degl indirizzi virtuali del processo target prima di caricare la DLL invocando un nuovo thread. Questa injection può essere eseguita con chiamate API native di Windows come VirtualAllocEx e WriteProcessMemory, poi invocata con CreateRemoteThread (che chiama l’API LoadLibrary responsabile del caricamento della DLL).
  •  

Penetration Test di Thick Client Parte 3 - Decompiler

Introduzione I Thick Clients sono software che forniscono funzionalità sia locali sia remote, in quanto vengono installati localmente ma effettuano anche richieste di rete. Essi possono essere per esempio client di messaggistica, client di posta elettronica, software di antivirus, e via discorrendo. Il Penetration Test di un Thick Client è particolarmente interessante dal punto di vista di un attaccante, in quanto essi hanno una superficie di attacco notevolmente maggiore rispetto alle classiche applicazioni web o mobile.
  •  

Process Injection

Introduzione La Process Injection è un metodo per eseguire del codice all’interno di un’altro processo in esecuzione (nel suo spazio degli indirizzi) in modo da eludere alcune delle difese degli Antivirus. L’esecuzione di codice all’interno di un altro processo può consentire l’accesso alla memoria del processo, alle sue risorse e soprattutto eludere il rilevamento da parte di AV, in quanto il nostro shellcode viene mascherato sotto le spoglie di un processo benevolo.
  •  

Penetration Test di Thick Client Parte 2 - Network

Introduzione I Thick Clients sono software che forniscono funzionalità sia locali sia remote, in quanto vengono installati localmente ma effettuano anche richieste di rete. Essi possono essere per esempio client di messaggistica, client di posta elettronica, software di antivirus, e via discorrendo. Il Penetration Test di un Thick Client è particolarmente interessante dal punto di vista di un attaccante, in quanto essi hanno una superficie di attacco notevolmente maggiore rispetto alle classiche applicazioni web o mobile.
  •  

Eseguire uno Shellcode in memoria con Powershell

Introduzione Le tecnica presentata nello scorso articolo è buona, ma non ottimale. Il problema principale deriva dal fatto che una volta che viene chiuso Word la nostra shell verrà chiusa di conseguenza, in quanto è un processo dipendente da Word. Per ovviare a questo problema si potrebbe inserire all’interno del documento Word un downloader che scarica un file esterno in Powershell e che viene eseguito in memoria, sempre per diminuire la possibilità di essere identificato da un Antivirus.
  •  

Eseguire uno Shellcode in memoria con VBA

Introduzione Nello scorso articolo abbiamo parlato di macro di Word e di come exploitare tramite le macro un computer windows. Il problema di questo approccio è che lo shellcode viene salvato sul computer della vittima e potrebbe essere rilevato dagli antivirus presenti o da eventuali IDS. L’obiettivo di questo articolo è quello di riuscire ad eseguire il codice solamente nella memoria del computer, in modo da evitare di scrivere sul disco e diminuire le possibilità di essere identificati da un antivirus.
  •  

Penetration Test di Thick Client Parte 1 - Information Gathering

Introduzione I Thick Clients sono software che forniscono funzionalità sia locali sia remote, in quanto vengono installati localmente ma effettuano anche richieste di rete. Essi possono essere per esempio client di messaggistica, client di posta elettronica, software di antivirus, e via discorrendo. Il Penetration Test di un Thick Client è particolarmente interessante dal punto di vista di un attaccante, in quanto essi hanno una superficie di attacco notevolmente maggiore rispetto alle classiche applicazioni web o mobile.
  •  

Penetration Test su Adobe AEM

Introduzione Recentemente mi è capitato un Penetration Test su Adobe Experience Manager, una piattaforma di gestione dei contenuti Web che consente di offrire ai clienti esperienze digitali coerenti su vari canali.* Poiché non mi era mai capitato sotto mano, ci è voluto un po' di tempo per capirne bene le funzionalità, l’architettura e soprattutto come trovare le vulnerabilità. In questo articolo vedremo come funziona e come poter exploitare l’applicativo.
  •  

Creare Macro VBA malevola con Windows

In un vecchio articolo mi sono occupato di analizzare una macro malevola al fine di identificare le funzionalità e i danni che avrebbe potuto causare al sistema. Oggi (e nei prossimi articoli probabilmente), ci occuperemo di capire come funzionano le Macro, come sviluppare in Visual Basic for Application e successivamente exploitare tramite le macro un computer windows. Ma andiamo con ordine. Visual Basic for Applications Secondo Wikipedia, Visual Basic for Applications (VBA) è un’implementazione di Visual Basic inserita all’interno di applicazioni Microsoft, è un linguaggio di programmazione ad alto livello composto da oggetti che possono essere:
  •  

Penetration Test di un'Applicazione Mobile – Android

Ammetto di non aver mai approfondito in maniera adeguata la sicurezza delle applicazioni Mobile sul blog, sia per poco interesse da parte mio, sia per mancanza di tempo, ma ho deciso di scrivere una mini guida abbastanza approfondita in modo che chiunque possa iniziare a capirne il funzionamento, la metodologia e chissà, magari appassionarsi all’argomento. Per chi non avesse nessun’infarinatura, consiglio Come Funziona un’applicazione Android e Introduzione alla sicurezza di un’applicazione Android, anche se ne potete trovare altri nella categoria Mobile.
  •  

Attacchi pratici ad OAuth 2.0 (e come difendersi)

Introduzione OAuth 2.0 è un protocollo che dà ad un client API un accesso limitato ai dati degli utenti su un server web. Ad esempio, viene utilizzato dalle API di GitHub, Google e Facebook. Esso si basa su scenari di autenticazione chiamati flussi, che permettono al proprietario della risorsa (l’utente) di condividere il contenuto protetto dal server della risorsa senza condividere le proprie credenziali. A tale scopo, un server OAuth 2.
  •  

Violare Apache Karaf con tre diverse metodologie

Apache Karaf è un contenitore di applicazioni, può essere utilizzato come contenitore autonomo, supportando una vasta gamma di applicazioni e tecnologie. Supporta anche il concetto “run anywhere” (su qualsiasi macchina con Java, cloud, immagini docker, …) utilizzando la modalità embedded. Karaf viene principalmente utilizzato per microservizi, integrazione di sistemi, grandi dati ed è alimentato da OSGi. Molte volte, durante un assessment infrastrutturale, mi è capitato di incontrarlo, e nel 90% dei casi viene implementato in maniera insicura, lasciando la possibilità ad un attaccante di compromettere completamente il sistema.
  •  

Protostar – Heap Buffer Overflow – Heap 3

In questo ultimo articolo andremo ad approfondire il funzionamento completo dell’heap, i suoi metadati e come è possibile sfruttarli per superare l’ultimo esercizio. Sarà fortemente teorico e tecnico ma per comprenderlo è necessario avere delle forti basi della materia. Ciò che andremo a fare sarà carpire le informazioni principali dei vari articoli pubblicati nel corso degli anni, farci un’idea di come è possibile exploitare l’esercizio tre ed infine, effettuare l’exploit vero e proprio.
  •  

RoyalTS SSH Tunnel - Authentication Bypass [CVE-2020-13872]

Description During a recent assessment I had to use the software in question (RoyalTS v4.3.61328 for Windows) to reach some servers via port forwarding. The software uses a “Secure Gateway” to create an authenticated tunnel (created by Royal Server), installed on a bridge server. Once installed, all you have to do is create an SSH connection to the target server and enter the IP address of the bridge server as Secure Gateway.
  •  

Protostar – Heap Buffer Overflow – Heap 2

Proseguiamo con un altro esercizio della serie Protostar. Questa volta andremo ad analizzare una vulnerabilità presente nell’heap quando un programma continua ad utilizzare un puntatore dopo che è stato liberato (con l’istruzione free), Use-After-Free appunto. Il puntatore originale alla memoria liberata viene utilizzato di nuovo e punta ad un punto all’interno della nuova allocazione. Man mano che i dati vengono modificati, questo corrompe la memoria e può portare ad un comportamento indefinito nel processo e, in condizioni ideali (per noi), ad un’esecuzione di comandi.
  •  

Protostar – Heap Buffer Overflow – Heap 1

Rispetto al precedente livello, in questo caso il focus inizia ad essere sullo heap e sulla sua struttura, ed andremo quindi a comprendere meglio come è fatto e come è possibile, ovviamente, exploitarlo. Heap 1 Codice Heap 1 Come per lo scorso esercizio, andiamo ad inserire un breakpoint alla fine del codice (riga 35) e eseguiamo dentro gdb con il comando r AA BB. Dopodiché analizziamo lo heap Contenuto dello heap Si può notare che al suo interno abbiamo:
  •  

Protostar – Heap Buffer Overflow - Heap 0

Continuando con la serie Protostar, in questo articolo andremo ad analizzare una tecnica più avanzata rispetto allo Stack Buffer Overflow. Per questo motivo ho deciso di dividere in più articoli la serie Heap, facendo un livello per articolo. Introduzione Quando un programma viene eseguito, viene allocata dinamicamente della memoria per contenere i dati dello stesso. Lo heap è quindi un blocco di memoria assegnato ad un processo di dimensione definita a run-time.
  •  

Trojan:Win32/Trickbot - Analisi dinamica (parte 2)

Nella seconda parte del presente articolo viene descritta un’analisi del processo maligno del malware Trickbot mediante l’utilizzo di Process Monitor di Sysinternals e un assessment del file eseguibile. Process Monitor è un tool gratuito che permette di visualizzare con un altissimo livello di dettaglio tutte le operazioni e gli handles dei processi che sono attivi all’interno del sistema operativo. Una funzione molto interessante di Process Monitor è quella che permette di effettuare un’analisi mirata attraverso dei filtri, che permettono di filtrare tutti gli eventi e i processi a seconda di diversi parametri specifici, come ad esempio il PID, il nome del processo, ecc.
  •  

Protostar - Stack Buffer Overflow

Già in altri articoli ci eravamo occupati di buffer overflow, e, per continuare la serie, ho deciso che nelle prossime settimane mi occuperò di diverse tipologie, partendo dallo Stack Buffer Overflow, passando poi all’Heap Overflow, Use After Free ed alcune tecniche di difesa che sono in atto ai giorni nostri. Per chi abbia bisogno di un ripasso generico, ricordo l’articolo Introduzione al Buffer Overflow che consiglio vivamente (oltre che ai soliti approfondimenti a fondo pagina).
  •  

Trojan:Win32/Trickbot - Analisi dinamica (parte 1)

In questa prima parte del presente articolo verrà eseguita un’analisi dinamica con FRST e un’analisi di network activity di un sample Trojan:Win32/Trickbot. In generale la famiglia di malware Trickbot è costituita da malware threats che effettuano attività di scheduled tasks setup, crittografia e che hanno molto spesso connessioni a host remoti (URLs o IP) e vengono sfruttati eventualmente per sottrarre dati alle vittime. Un’analisi malware dinamica viene effettuata per comprendere a fondo, senza effettuare un’analisi del codice sorgente di un malware, i danni al sistema e ai dati di una vittima che può creare un’infezione.
  •  

Attacco Cross Site Request Forgery (CSRF)

Spulciando il blog mi sono accorto di non aver mai parlato di questa tipologia di attacco, che, sebbene non sembri nulla di chè, potrebbe risultare in una completa compromissione di un sito web o di un account presente su un applicativo Web. In questo articolo andremo ad analizzarlo, cercando di capirne il funzionamento, i possibili attacchi e le eventuali remediation da mettere in campo per difendersi. Descrizione Secondo Wikipedia, il CSRF “è una vulnerabilità a cui sono esposti i siti web dinamici quando sono progettati per ricevere richieste da un client senza meccanismi per controllare se la richiesta sia stata inviata intenzionalmente oppure no”.
  •  

Rimozione di un malware sample - AgentTesla

Nel presente articolo viene eseguita una rimozione di un malware Trojan AgentTesla. Il sample analizzato in questo articolo ha il seguente hash: È stato eseguito il malware come confermato dal processo maligno catturato mediante Process Hacker 2: A questo punto è stato utilizzato Farbar Recovery Scan Tool per esaminare possibili danni e problematiche del sistema derivanti dall’infezione. Per avviare la scansione dei danni causati dal malware è necessario eseguire FRST come amministratore, aspettare che il backup del registro da parte del tool e la verifica di eventuali aggiornamenti vengano completati.
  •  

Analisi statica di un Ransomware - Kekw

In questo articolo verrà analizzata un nuova minaccia ransomware sviluppata in .NET che chiede il riscatto per la decriptazione dei files tramite pagamento Bitcoin: Kekw ransomware. Il file, già conosciuto dai principali antivirus, una volta eseguito cifra file e cartelle del sistema ospite, chiedendo un riscatto al malcapitato. Analisi Statica Attraverso l’analisi dell’entropia del sample possiamo vedere come esso non sia packed. Si può notare come il livello di entropia sia circa del 59 %.
  •  

WebSocket Penetration Test

Durante un Penetration Test è possibile che capiti un applicativo che, invece del classico protocollo HTTP, cambi protocollo e inizi a comunicare tramite WebSocket. Questo può capitare per vari motivi, sia per questione di efficenza, poiché è una connessione full-duplex, sia per questione di velocità, in quanto in certi casi serve una conversazione real time e quest’ultime sono particolarmente adatte. Ma questo non implica che non possano essere affette da vulnerabilità e le richieste non debbano essere sanitizzate tanto quanto delle normali richieste HTTP.
  •  

Guida alla Privilege Escalation nei sistemi Windows

In questo articolo andrò ad elencare alcune tra le principali tecniche di Privilege Escalation nei sistemi operativi Windows. Per chi non sapesse cosa sia, la privilege escalation (intesa come sorpasso delle autorizzazioni) è l’aumento di privilegi che si possiedono tramite particolari tecniche, come lo sfruttamento di un exploit o di un bug, al fine di poter eseguire azioni che prima non si potevano effettuare. Esistono due tipologie di privilege escalation:
  •  

Guida alla Privilege Escalation nei sistemi Linux

In questo articolo andrò ad elencare alcune tra le principali tecniche di Privilege Escalation nei sistemi operativi Linux. Per chi non sapesse cosa sia, la privilege escalation (intesa come sorpasso delle autorizzazioni) è l’aumento di privilegi che si possiedono tramite particolari tecniche, come lo sfruttamento di un exploit o di un bug, al fine di poter eseguire azioni che prima non si potevano effettuare. Esistono due tipologie di privilege escalation:
  •  

Linee guida per la Certificazione OSCP

Update: questa guida è della vecchia versione dell’OSCP. Può essere seguita ma ci sono alcuni argomenti che mancano, come l’Active Directory. Il syllabus aggiornato lo trovate a questo indirizzo. Qualche giorno fa ho superato con successo l’esame dell’Offensive Security, riuscendo ad ottenere la certificazione OSCP! Negli scorsi articoli, in cui accennavo al fatto che la stessi preparando, ho ricevuto parecchie mail in cui mi si chiedevano consigli per la preparazione, vediamo di riassumerli nel seguente articolo.
  •  

Vulnhub: unknowndevice64

Durante la mia preparazione per la certificazione OSCP inizierò a testare un pò di macchine di Vulnhub per esercitarmi e cercare di violare quanti più sistemi possibili per imparare il più possibile, questa è solo la prima della lista! Come sempre, per chi fosse la prima volta che legge un Walkthrough di questo genere, consiglio Kioptrix 1, in cui vengono elencati i passi fondamentali da compiere per violare un dispositivo di questo tipo.
  •  

Enumerazione sistemi Windows

Nella preparazione per l’esame all’OSCP mi sono accorto che raramente mi è capitato di esercitarmi ad exploitare macchine Windows, scontrandomi quindi con il fatto di essere abbastanza ignorante su tutto l’ecosistema che ci gira intorno, come powershell, wmic, processi e quant’altro. In questo articolo farò una panoramica sull’enumerazione dei servizi, file ed in generale sulla post-exploitation di un computer Windows (quindi in seguito all’ottenimento di una connessione diretta tramite una vulnerabilità).
  •  

Trasferire file tra due host (Linux-Linux e Linux-Windows)

Dopo parecchi tentativi siamo finalmente riusciti ad ottenere un shell completa sull’host da compromettere, riusciamo ad eseguire comandi e compilare i programmi, ma la vittima non ha accesso a internet e dobbiamo passare file sulla macchina compromessa. Come ci comportiamo? Durante dei penetration test è possibile che capiti di dover trasferire file sull’host compromesso, ad esempio backdoor, exploit o tool che ci possono servire per analizzare e compromettere delle reti interne.
  •  

Violare Tomcat tramite upload di un file war malevolo con tre diverse metodologie

VIOLARE TOMCAT TRAMITE UPLOAD DI UN FILE WAR MALEVOLO CON TRE DIVERSE METODOLOGIE by TheInnocent Introduzione Tomcat è un web server opensource tra i più utilizzati al mondo, è sviluppato da Apache e supporta l’esecuzione di Java Servlet e, dunque, di tutte le tecnologie che su di esse si basano. Essendo tanto diffuso, le tecniche di seguito illustrate possono essere applicate in una serie praticamente infinita di frangenti, rendendo la seguente trattazione, un’ottima guida introduttiva per ogni attacco a server Tomcat.
  •  

Cercare, identificare e segnalare proattivamente siti di Phishing

Negli ultimi tempi ho avuto l’opportunità di occuparmi, tra le varie cose, della protezione contro il phishing per determinate aziende. È stata la prima volta che mi sono davvero interessato all’argomento, andando ad approfondire le varie tematiche e modalità per identificare (e segnalare) pagine di phishing prima che esse vengano inviate ai malcapitati. In questo articolo vedremo una panoramica delle tecniche che ritengo particolarmente importanti. Cercare siti di phishing La prima azione da fare è la ricerca proattiva dei siti malevoli, cercando di bloccare in tempo la propagazione delle mail contenenti la truffa segnalando il sito alle autorità competenti.
  •  

Trovare file e cartelle nascoste in un sito web

Durante la fase iniziale di enumerazione di un applicazione web, uno dei primi passi dovrebbe essere quello di mappare in maniera efficace la superficie della stessa, includendo, oltre che tutti i puntamenti, anche possibili cartelle o file nascosti. In questo articolo andremo a visionare i principali software che permettono di effettuare un bruteforce per verificare la presenza di file altrimenti non visibili con un crawl classico. Photon Photon, liberamente disponibile su Github, sembrerebbe un classico crawler a prima vista, ma tra i tanti che ho provato è quello che mi ha convinto maggiormente.
  •  

Effettuare Penetration test di reti interne tramite Port Forwarding

Durante un Penetration test è possibile che, dopo esser riusciti ad ottenere i privilegi di amministrazione su un host, esso abbia accesso ad una rete interna non accessibile dall’esterno. Non potendo fare scansioni in modo diretto, bisogna fare in modo di usare la propria macchina per identificare gli altri host presenti e le possibili vulnerabilità che potrebbero avere. Concatenazione di reti interne La tecnica da utilizzare viene detta Port Forwarding, ed è, citando Wikipedia, l’operazione che permette il trasferimento di dati da un computer ad un’altro tramite una specifica porta di comunicazione.
  •  

Tenere traccia delle attività durante un Penetration Test con Faraday

Recentemente ho avuto la fortuna di avere accesso ad un laboratorio pratico simile a quello dell’OSCP. Esso contiene una ventina di macchine Windows e Linux e l’obiettivo finale è exploitarne la maggior parte, con punteggi diversi in base alla difficoltà. Inizialmente tenevo carta e penna per segnarmi i vari finding e possibili indizi, ma dopo qualche computer pwnato ho iniziato a perdermi e mi sono messo a cercare un qualche software che mi permettesse di automatizzarne il processo.
  •  

Perchè la Responsible Disclosure funziona

Da qualche anno, il concetto di hacking etico ha iniziato a prendere una nuova forma, grazie a programmi di Bug Bounty, Responsable Disclosure e possibilità di segnalare vulnerabilità (ad alcuni enti) senza dover avere il timore di una denuncia per accesso abusivo ad un sistema informatico. Come ben si è capito, essere sicuri al 100% non è possibile. Chiunque, dopo un Penetration Testing o un Vulnerability Assesments, assicuri un rischio di essere attaccati e vedersi violati i sistemi pari a zero, non ha capito ancora nulla di sicurezza informatica.
  •  

Cosa è e come funziona un attacco Distributed Denial of Service

Come anticipato nello scorso articolo, eccoci qui ad introdurre gli attacchi DDoS, attacchi che hanno preso una piega sempre peggiore negli ultimi anni, a causa di una massiccia presenza di device connessi e interconnessi tra di loro, capacità di banda che aumenta esponenzialmente e, come sempre, vulnerabilità non patchate o mal gestite. Cosa è un attacco DDoS Tipico attacco DDoS Gli Attacchi Distributed Denial of Service sono appunto attacchi Denial of Service distribuiti, cioè composti da diversi host (detti anche zombie, a causa del fatto che ignorano di far parte dell’attacco) I quali, a causa di malconfigurazioni, vengono utilizzati dagli attaccanti per colpire una vittima.
  •  

Tecniche di Hacking DNS

I server DNS (Domain Name System), sono una componente fondamentale dell’architettura del web, responsabile della traduzione di nomi facili da ricordare per l’uomo, come ad esempio google.com,in sequenze di numeri facili da processare per i computer, ovvero gli IP (Internet Protocol address). Grazie ai server DNS, infatti, non siamo costretti a ricordare l’IP di ogni sito web che vogliamo visitare, ma solo il suo nome, giacchè ci pensa il sistema DNS a rendere possibile il passaggio dall’uno, digitato nella barra degli indirizzi del nostro browser, all’altro.
  •  

Cosa è e come funziona un attacco Denial of Service

In questo articolo andremo a trattare un argomento che non ho mai approfondito, sia a causa di poco interesse, sia a causa del fatto che è una metodologia di attacco che poco si addice ad un hacking prettamente etico. Non tratterò come di consueto le metodologie di attacco, in quanto sono profondamente contrario all’attuazione dello stesso, per cui se siete qui per scoprire come eseguire un attacco DoS avete sbagliato articolo (e sito).
  •  

Aggirare la sanitizzazione di JavaScript per attacchi XSS in applicazioni Web

Nell’analisi di applicazioni web spesso ci troviamo di fronte a situazioni nuove, mai viste e che necessitano di essere capite per poter identificare la presenza di bug o problemi nel codice del server. In questo articolo andremo a vedere come evadere una serie di filtri JavaScript, il che ci potrà essere utile in diverse situazioni. Il primo segnale, da parte di un’applicazione web, di una possibile vulnerabilità di tipo XSS (Cross-Site-Scripting), è la presenza, nelle risposte emesse dal server, di stringhe che l’utente genera in input.
  •  

Passi da seguire per una corretta e responsabile Vulnerability Disclosure

Ieri diverse testate hanno fatto sapere che Evariste Gal0is è formalmente indagato con l’accusa di accesso abusivo a sistema informatico, a causa della disclosure fatta ai danni del M5S l’estate scorsa. In quel periodo Evariste, dopo aver trovato delle vulnerabilità nel sito del partito, avvisò via mail i gestori dei problemi trovati rendendo successivamente pubblica la notizia. L’aver scoperto (e reso pubblica) una vulnerabilità di un partito politico (il movimento della rete!
  •  

Analizzare con bash lunghe liste di siti via terminale

Quando si ha a che fare con lunghe liste di domini e sottodomini, è utile trovare il modo per velocizzare la procedura di verifica dell’esistenza del sito e dei servizi che offre lo stesso. Ciò che, da sempre, cercano di fare gli informatici d’altronde è l’automatizzare, tramite linguaggi di scripting (bash, python, perl), qualsiasi azione noiosa e ripetitiva. Verifica esistenza dominio Una volta ottenuta una lista di sottodomini (alcuni metodi in questo articolo), è possibile che lo stesso utilizzi wildcard, o abbia centinaia di sottodomini esistenti, rendendo un footprinting infinito e, di fatto, noioso.
  •  

Creare Android Virtual Device da terminale

Nell’articolo Creare sistema ad-hoc per analizzare applicazioni Android avevo introdotto l’analisi di applicazioni sfruttando le immagini messe a disposizione da Google per la creazione di macchine virtuali Android. Purtroppo hanno deciso bene di deprecare la creazione di dispositivi virtuali via interfaccia grafica, per cui questo articolo è incentrato solamente sulla creazione degli stessi dispositivi tramite terminale. Per quanto riguarda l’installazione di Android Studio, il procedimento è identico: basta collegarsi alla pagina di download e scaricare la versione adatta alle proprie esigenze.
  •  

Vulnerabilità Open Redirect

Recentemente sono incappato in un sito abbastanza noto che presenta una vulnerabilità di redirezione automatica aperta e consentiva, con opportuno link, di redirezionare l’utente vittima in qualunque sito scelto dall’attaccante. Al momento non hanno ancora risposto, ma, non avendo ancora trattato l’argomento sul blog, mi sembrava un buon articolo per riprendere con la pubblicazione! Dettagli vulnerabilità Quasi tutte le applicazioni web hanno funzioni di redirezione verso proprie pagine o altri link in uscita, solitamente filtrati e selezionati da apposite liste.
  •  

Cookies e tracciamento di terze parti

Sabato 28 si è tenuta L’edizione 2017 del Linux Day, quest’anno dedicata alla privacy e alla riservatezza individuale. Perché tutti abbiamo qualcosa da nascondere: i fatti nostri. Il Linux Day è una manifestazione nazionale articolata in eventi locali che ha lo scopo di promuovere GNU/Linux e il software libero. Il Linux Day è promosso da ILS (Italian Linux Society) e organizzato localmente dai LUG italiani e dagli altri gruppi che condividono le finalità della manifestazione.
  •  

Enumerazione SMTP

Simple Mail Transfer Protocol è il protocollo standard utilizzato per la trasmissione via internet di e-mail. Durante una scansione delle porte di un server è facile trovare il servizio aperto, ma non è altrettanto facile trovarne vulnerabilità. In questo articolo vedremo alcune modalità per eseguire l’enumerazione di utenti attivi su di esso. Protocolli di posta I principali protocolli di porta sono tre: SMTP: permette di trasferire la posta da un server ad un altro, quindi consente solo l’operazione di invio e non di ricezione; utilizza la porta 25.
  •  

Attacchi Side-Channel

Gli attacchi a canale laterale utilizzano fughe non intenzionali di informazioni riguardanti il consumo di energia, il tempo di esecuzione o le radiazioni elettromagnetiche per compromettere la sicurezza di un dispositivo o del codice utilizzato. Il primo attacco di questo tipo viene attuato nel 1996, quando Kocher ha trovato, analizzando il tempo di esecuzione di sistemi crittografici, il modo di estrarre informazioni segrete relative a Diffie-Hellman e RSA. Nel corso successivo degli anni si è assistito a diverse implementazioni di questi attacchi, tra cui:
  •  

Analizzare il protocollo NTP

NTP è un protocollo client-server designato alla sincronizzazione degli orologi dei computer interni ad una rete. In una rete aziendale è molto probabile trovare un dispositivo che ha il servizio attivo, al fine di sincronizzare gli orologi delle macchine ad esso collegate. Sfortunatamente, molti sistemisti non aggiornano o configurano in maniera adeguata ntpd, il quale sarà in grado di fornire informazioni sul sistema e sulla struttura delle rete aziendale. Architettura NTP Rilevazione del protocollo La rilevazione funziona come con ogni altra porta in ascolto, ossia scansionando l’indirizzo IP con un software come nmap sul protocollo UDP.
  •  

Raccogliere informazioni in un'applicazione web

Ottenere più informazioni possibili da un’applicazione web è un passaggio fondamentale al fine di trovare vulnerabilità nella stessa. Nella fase di Information Gathering bisogna preoccuparsi di analizzare l’applicazione nei dettagli, cercare pagine nascoste, recuperare informazioni in merito alla tecnologia utilizzata e altri dettagli che possono sempre tornare utili. OWASP definisce 10 passaggi fondamentali per il recupero di informazioni in applicazioni web; in questo articolo cercheremo di approfondirne qualcuna, con esempi ed informazioni pratiche.
  •  

HackDay Albania

Il confine tra un sistema sicuro e uno insicuro è, nella maggior parte dei casi, molto labile, separato solo da un filtraggio mancante, una password poco sicura, un permesso errato. Ed è proprio a causa di quest’ultimo che ho ottenuto i permessi di root nella macchina virtuale HackDay: Albania 2016. Come sempre, per chi fosse la prima volta che legge un Walkthrough di questo genere, consiglio Kioptrix 1, in cui vengono elencati i passi fondamentali da compiere per violare un dispositivo di questo tipo.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 9 - Attacchi LDAP

LDAP (Lightweight Directory Access Protocol) è un protocollo per accedere a dei servizi di directory, ad esempio un elenco aziendale di email o una rubrica telefonica. Esso include solitamente anche un meccanismo nel quale un client si può autenticare, o provare la sua identità ad una directory server. Comunicazione con server LDAP In questo articolo ci occuperemo di due attacchi a questo protocollo, il quale, sebbene non troppo conosciuto, è utilizzato in molte applicazioni web per accedere ai dati salvati nelle stesse.
  •  

Google Bouncer e la protezione del Play Store contro i Malware

Android è il sistema operativo open più diffuso al mondo, con una percentuale di utilizzo che supera il 60% tra tutti i sistemi per smartphone al mondo. Come qualsiasi dispositivo mobile, presenta molteplici vettori di attacco, partendo da semplici vulnerabilità in un’applicazione mobile, fino ad arrivare ad implementazioni errate del protocollo SS7. I problemi principali di sicurezza sono: Frammentazione del mercato: rispetto ad Apple, i vendor sono aziende differenti rispetto al produttore del software (Google).
  •  

Cosa è e come funziona il Pay-per-Install e la distribuzione dei Malware

Quotidianamente vediamo mail di spam, software con all’interno altri software auto-installanti (come falsi Antivirus, servizi di pop-up e altre menate simili). Ma chi o cosa c’è dietro questo malato meccanismo? Chi si prende la briga di mandarci mail o attacchi con determinati malware? Questa è la domanda che si sono posti dei ricercatori (Caballero, Grier, Kreibich e Paxson) qualche anno fa, e, con un complesso sistema di infiltraggio, unito ad una grande capacità di analisi statistica, hanno dato una risposta a queste domande, intercettando milioni di malware e scoprendone centinaia di tipologie mai viste.
  •  

Imparare ad analizzare il traffico di rete con Malware-Traffic

Sapere leggere il traffico internet è una capacità fondamentale per riuscire ad analizzare al meglio i malware, per debuggare software o anche solo per capire come funziona fisicamente e concettualmente l’architettura ISO/OSI. Nell’articolo articolo andremo a scoprire alcuni dei passi fondamentali per analizzare il traffico grazie a questo esercizio. Il primo set di domande è: What is the IP address of the Windows VM that gets infected? What is the host name of the Windows VM that gets infected?
  •  

Drunk Admin Web Challenge

La sfida di Drunk_ Admin Web Challenge_ consiste nel trovare il messaggio che Bob ha inviato ad Alice. L’applicazione (un servizio di image hosting) include una serie di vulnerabilità e livelli che bisogna superare per trovare il messaggio. Come sempre, è una sfida trovata su Vulnhub, mentre per chi non sapesse da dove iniziare, rimando al livello 1 di Kioptrix. Home page del sito Footprinting L’applicazione si presenta come una brutta copia di un servizio di hosting d’immagini, con la possibilità di caricarle nel server e poi visualizzarle direttamente con il browser.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 8 – Command Injection

Permettere ad un utente di eseguire codice su un programma o su un’applicazione web è una delle operazioni più sensibili che si possano permettere allo stesso. Non bisogna mai fidarsi dell’input e deve essere sempre trattato con i guanti, sanitizzando e debuggando le parti di codice più sensibili. Il buffer overflow è un classico esempio di iniezione di codice, il quale può mettere a repentaglio un intero sistema! Ma visto che in questa serie non si parla di sicurezza del software, torniamo sui nostri passi ed iniziamo ad analizzare un applicazione web vulnerabile a questo attacco.
  •  

Da Wordpress a root con Hackademic

Imparare a sfruttare le vulnerabilità su macchine di prova permette di potersi allenare e poter, in un futuro, riuscire a trovarle su dispositivi reali, con tutte le difficoltà collegate ad esse. In questo articolo andremo a violare la macchina virtuale Hackademic RTB1, ideata nell’ormai lontano 2011 da mr.pr0n e catalogata grazie a Vulnhub. Per chi non sapesse di cosa stiamo parlando, consiglio di iniziare da Kioptrix 1. Scansione Dopo aver creato la macchina virtuale, eseguo subito una scansione dell’host per osservare le porte aperte e trovare i servizi attaccabili
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 7 - Code Injection

Permettere ad un utente di eseguire codice su un programma o su un’applicazione web è una delle operazioni più sensibili che si possano permettere allo stesso. Non bisogna mai fidarsi dell’input e deve essere sempre trattato con i guanti, sanitizzando e debuggando le parti di codice più sensibili. Il buffer overflow è un classico esempio di iniezione di codice, il quale può mettere a repentaglio un intero sistema! Ma visto che in questa serie non si parla di sicurezza del software, torniamo sui nostri passi ed iniziamo ad analizzare un applicazione web vulnerabile a questo attacco.
  •  

Rubrica Wargame: Superare le prime sfide con Hacker Test [Livello 1-20]

Da qualche tempo sto stilando una lista di prove pratiche e sfide di hacking distinte per livello e mi sono imbattutto per puro caso in HackerTest.net, un sito che propone diversi livelli da superare e sfide di difficoltà crescente. Preso dalla curiosità, ho iniziato a farlo, fino a che non mi ha preso completamente e l’ho completato. Una volta finito mi son reso conto della semplicità unica delle sfide, basate quasi sempre su inganni e sorte di caccie al tesoro.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 6 - SQL Injection

In più articoli abbiamo affrontato attacchi di SQL Injection, sia per quanto riguarda la teoria, sia per quanto riguarda la pratica. PentesterLab offre alcuni esercizi, soprattutto per capire le basi dell’attacco e su come violare dispositivi con basilari sistemi di filtraggio. Proprio per questo motivo ho deciso di inserire anche i comandi da utilizzare con SQLmap, in modo da avere anche conoscenza sull’utilizzo del tool in questione. Esempio 1 http://192.168.56.101/sqli/example1.php?name=root Classica GET, in cui vengono stampati i dati dell’utente root.
  •  

Esercizi pratici di Buffer Overflow con Gera

Riuscire a riconoscere errori di programmazione altrui sembra essere un compito ingrato, ma è proprio grazie a figure come questa che il browser che utilizziamo quotidianamente è sicuro e ci protegge da attacchi provenienti dall’esterno, grazie a chi se ne occupa il sistema operativo su cui scrivo l’articolo è protetto e ci sono solo remote possbilità che venga exploitato. Avere padronanza di un linguaggio di programmazione e capire dove potrebbero esserci problemi di sicurezza è un requisito essenziale per chi si occupa di sicurezza informatica, oltre che dei programmatori.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 5 – File Include & Upload

Dopo aver introdotto gli attacchi XSS e Directory Traversal, passiamo oggi ad altre due tipologie di attacco, ossia File Include e File Upload. Come per gli altri attacchi, questi sfruttano sistemi di filtraggio mancanti o non presenti. File Include Wikipedia la definisce una delle vulnerabilità più comuni nelle applicazioni web, tanto semplice da violare quanto pericolosa (come al solito) per gli ignari utenti che visitano il sito attaccato. Essa permette ad un attaccante di includere un file, utilizzandolo per redirezionare i visitatori su altre pagine o avere accesso a file non protetti direttamente dall’url (come nel caso del Directory Traversal).
  •  

Introduzione al Buffer Overflow

La maggior parte degli Worm utilizzati per infettare i dispositivi sfruttano una particolare e ormai ben nota vulnerabilità, il cosidetto buffer overflow. Questo attacco, scoperto nel 1972, venne utilizzato anche dal primo worm (Morris Worm), il quale penetro in più di 6.000 dispositivi connessi ad internet (quasi il 5% all’epoca). Sebbene sia una vulnerabilià nota da tempo, non è mai stato possibile risolverla ma solo aggirarla, poiché, essendo presente in linguaggi di programmazione che non includono funzionalità di tipo type-safety o memory-safety (come il C), se il programmatore non effettua determinati e specifici controlli, il programma potrebbe esserne affetto.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 4 – Directory Traversal [PentesterLab]

Come per lo scorso articolo, gli esempi sono stati presi da PentesterLab e sarà inserito il codice opportunamente commentato, in modo da capire anche quali sono i problemi lato server. L’attacco Directory Traversal consiste nell’accedere a file non presenti nell’applicazione web e non visualizzabili normalmente, scalando trasversalmente la directory parente del file a cui si sta accedendo. L’obiettivo è quello di avere accesso al sistema ospitante l’applicazione, sfruttando i permessi che la stessa possiede.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 3 - XSS [PentesterLab]

Home page PentesterLab Dopo aver introdotto in linee generali come funziona una webapp, alcuni dei possibili attacchi e aver quasi concluso la serie di OWASP, iniziamo a sporcarci le mani con degli esercizi pratici e mirati, che permetteranno di capire alcune delle debolezze che possono affliggere un’applicazione web mal programmata. Utilizzerò la macchina virtuale offerta da PentesterLab, la quale è composta da diverse tipologie di esercizi, divisi per categoria e ordinati per difficoltà.
  •  

Disassemblare un eseguibile con GDB

GDB, o GNU Project debugger, è un software sviluppato dal progetto GNU, e da la possibilità di analizzare numerosi eseguibili, come C, C++, Go e molti altri. Esso ti permette di analizzare un programma durante la sua esecuzione e di: avviare l’eseguibile, specificando le componenti; interrompere il programma, specificando le condizioni; esamanire ciò che avviene quando il programma si è fermato; modificare il programma stesso, in modo da analizzarne gli effetti (positivi o negativi) direttamente in modalità live.
  •  

Shell Scripting - Cicli e argomenti a riga di comando

Continuiamo con la nostra guida allo shell scripting introducendo i cicli, l’inserimenti di stringhe a linea di comando e la creazione di script interattivi. Cicli Come detto nello scorso articolo, è possibile scrivere ogni tipo di ciclo, molto simili a quelli presenti in ogni linguaggio di programmazione. Oltre al for each utilizzato come esempio, esiste anche il for iterativo, utilizzabile per iterare array o variabili. Viene definito come for (( variabile=intero ; condizione ; iterazione )) Non ci sono differenze con il for each, ma sta al programmatore decidere quale è più utile, in base ai casi che si presentano.
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web – Parte 2 - Footprinting

Il primo step che si compie nell’analisi di un’applicazione web è il cosidetto mappaggio della stessa, andando ad enumerare gli utenti, le pagine passibili di vulnerabilità e quali sono le possibili strade che si possono compiere per riuscire ad aggirare eventuali blocchi. Nello scorso articolo abbiamo introdotto le funzionalità e alcuni dei problemi principali che affliggono le applicazioni web, in questo ci occuperemo di mappare un’applicazione e capire quali tools potrebbero esser utili.
  •  

Raccogliere informazioni tramite OSINT

Quotidianamente siamo alla ricerca di materiale per ricerche, approfondimenti o semplici banalità e la fonte a cui ci si riferisce sempre è l’onnipresente e onnisaccente Google. È ovvio che sia lui, sa sempre tutto, crediamo che sia la fonte migliore per le nostre ricerche, addirittura traccia il nostro profilo nel corso del tempo visualizzando i dati che più vorremmo! Purtroppo, ma soprattutto, per fortuna, sono presenti infinite altre alternative. Esistono servizi appositi per ogni tipo di ricerca, che possono variare dalle menzioni di un certo termine sui social network fino a paper di decine di anni fa, rimossi per DMCA dal vostro motore di ricerca preferito.
  •  

Introduzione allo shell scripting

Avere padronanza della propria shell è uno dei requisiti fondamentali per poter agire in autonomia, semplicità e migliorare nel campo della sicurezza informatica. Lo shell scripting consiste nella scrittura di script eseguibili tramite la shell per automatizzare compiti, creare batch jobs ed imparare ad utilizzare il proprio terminale nel pieno delle sue capacità. Esistono diverse tipologie di Shell: shell standard, sh; ash shell; tcsh shell; Korn shell; zsh shell. In questo articolo supporrò che si conosco i permessi di Linux e i comandi principali del terminale.
  •  

Sicurezza nei sistemi Unix

I sistemi operativi moderni sono implementati con una serie di protezioni specifiche per garantire la sicurezza dell’utente, come l’identificazione, il controllo dell’accesso e una serie di log che certificano gli stessi. Nello specifico, i sistemi Unix-like, sono: multiutente: più utenti possono agire contemporaneamente, ma un utente con gli stessi privilegi di un altro non dovrebbe interferirè con le attività degli altri; _multiprogrammati: _il kernel può supportare uno pseudo-parallelismo di processi; aperti; portabili.
  •  

Quanto sono sicuri i siti dei comuni d'Italia? Scansione con nmap e analisi statistica degli stessi

Alcuni mesi fa, cercando l’orario di un ufficio nel mio comune, ho notato che (quasi tutti) i siti comunali seguono un pattern comune, ossia: www.nomedelcomune.provincia.it eccetto per i capoluoghi di provincia e altri siti che vogliono fare gli alternativi e hanno domini completamente differenti. Mi è cosi venuto in mente che avrei potuto scansionare con nmap tutti i siti dei comuni d’italia, analizzare statisticamente i dati con R e pubblicarne i risultati.
  •  

How safe are the websites of the cities of Italy?

Disclaimer: The original post can be found here [Italian] A few months ago I noticed that almost all of the municipal websites follow a common pattern, ie: www.cityname.province.it except for provincial capitals and other websites that have completely different domains. So I thought that I could scan with nmap all the sites of the cities of Italy, statistically analyzing the data with R and publishing the results. List of websites The list of sites is not available in text format.
  •  

Pillole di crittografia teorica 2: Cifratura a blocchi DES

La cifratura a blocchi è uno schema di crittografia nel quale ciascun blocco in chiaro viene elaborato in modo indipendente per produrre un blocco di testo cifrato di identiche dimensioni. Tipi di operazioni nei cifrari a blocchi: ECB (Electronic Code Book): è una tecnica utilizzata per l’applicazione di algoritmi di crittografia simmetrica che operano su blocchi di dati di lunghezza fissa B. Se si vuole cifrare un dato di dimensione maggiore di B occorre suddividerlo in blocchi di dimensione B ed eventualmente riempire l’ultimo blocco con tecniche di padding (viene utilizzato, ad esempio, da DES o AES).
  •  

Nozioni basilari di (in)sicurezza delle applicazioni Web - Parte 1 - Introduzione

Un applicazione Web è un'applicazione accessibile via web per mezzo di una rete, come Internet, risiedente su di un Server Web alla quale si accede tramite (solitamente) un browser operante secondo gli standard del World Wide Web. Esempi di un’applicazione web-based possono essere: Registrazione di un utente su un forum; Ricerca di un sito tramite motore di ricerca; Commento su un blog; Piattaforma Wiki. Chiaramente, ogni applicazione web è passibile di vulnerabilità, ed è proprio su questo punto che questo articolo è incentrato.
  •  

Ransomware Report 2016 di Alpha Institute

Negli ultimi mesi ho collaborato [1] con Alpha Institute of Geopolitics and Intelligence alla stesura di un report sui Ransomware, una tipologia di malware che negli ultimi anni ha riscosso molto successo nel mercato del cybercrime e provocato molti danni a privati ed aziende. Alpha Institute of Geopolitics and Intelligence è un’associazione italiana costituita a Roma nel 2015, indipendente, non politica ed interdisciplinare che, senza scopo di lucro, opera verso l’esclusivo perseguimento della finalità di accrescimento sociale della cultura della sicurezza nazionale e internazionale, della geopolitica e dell’intelligence.
  •  

File DOC Infetto. Analisi delle macro maligne

Negli ultimi tempi, il numero di mail maligne sembra esser diminuito, vuoi per una migliore gestione dello spam da parte dei servizi mail, vuoi per un utilizzo consapevole da parte degli utenti, infettarsi con mail da parte di indirizzi sconosciuti è sempre più difficile (bisogna quasi impegnarsi). Gli spammer si sono dovuti quindi adattare, cercando, tramite tecniche di ingegneria sociale, di aggirare l’utente fingendosi servizi di assistenza o colleghi. Oggi mi è arrivata una mail particolare, senza oggetto nè testo, con all’interno un bel file .
  •  

Imparare a penetrare un computer con Vulnhub

Il campo della sicurezza informatica è uno di quei campi con un confine molto labile tra legalità e illegalità, lecito e illecito. Qualsiasi persona che studia la materia, le prime volte si chiede come potrebbe imparare a penetrare in un sistema senza commettere atti illeciti o reati, e contemporaneamente riuscire a testare le conoscenze teoriche che hanno richiesto tanto tempo. Uno dei siti che più ci viene incontro è Vulnhub, un portale dal quale si possono scaricare macchine virtuali da poter installare sia in ambiente VirtualBox, sia in ambiente VMWare.
  •  

Analizzare applicazioni mobile con Drozer

Drozer è un framework sviluppato dai laboratori MWR, utilizzato per testare e rilevare vulnerabilità in un applicazione o dispositivo mobile. Esso è uno dei software più utilizzati per analisi dinamiche, exploits remoti o locali e per uno dei suoi punti chiave, ossia l’utilizzo dei meccanismi IPC che interagiscono con il sistema operativo. Installazione Dopo aver scaricato la versione del software compatibile con il vostro computer e l'app di testing, avviate il vostro smartphone virtuale e, con adb, installate l’applicazione di prova
  •  

Cosa è e come funziona un'applicazione Android

In questo articolo vedremo i principali fondamenti delle applicazioni Android, in modo da capire come analizzarle al meglio e avere tutti gli strumenti per capire cosa sta avvenendo all’interno del sistema durante un analisi e/o pentesting. Fondamenti delle app Ogni applicazione scaricata da qualsiasi fonte, per essere installata necessita dell’estenzione .apk. Questi APK (Android Application Package) sono file compressi, contenenti file e cartelle necessari per il funzionamento della stessa.
  •  

Breve storia della sicurezza informatica

Sebbene la sicurezza informatica sia una materia relativamente giovane, in questi brevi ma intensi anni sono stati compiuti molti passi, più o meno importanti, i quali ci hanno permesso di definire la materia, l’analisi delle minacce e dei rischi associati ad essa. Ma andiamo per gradi. Le principali epoche in cui l’informatica viene divisa sono: 1970: primi dispositivi elettronici, detti comunemente mainframe; 1980: nascita del computer, più simile a come lo intendiamo oggi; 1990: nascita di internet, cosidetto Web 1.
  •  

Creare sistema ad-hoc per analizzare applicazioni Android

In questo articolo andrò a spiegare passo passo come creare un sistema per analizzare le applicazioni Android, sia che si tratti di analisi statica/dinamica, sia per effetturare penetration test su di esse. Io utilizzerò un sistema operativo Linux a 64 bit, in quanto raccomandato (ma non obbligatorio) per questo articolo. Se non lo avete potete creare una macchia virtuale (con VirtualBox) installando un qualsiasi sistema Linux. Per chi è alle prime armi consiglio Ubuntu.
  •  

Introduzione alla sicurezza e analisi di applicazioni Android

androidsecure Android è la piattaforma mobile con il più grande mercato di applicazioni al mondo, di cui il 12% sono di bassa qualità, fake o virus. Quotidianamente utilizziamo i nostri smartphone come se fossimo protetti da tutto e da tutti, installiamo applicazioni senza verificare cosa e quali informazioni prenderanno dal nostro dispositivo, ci connettiamo a qualsiasi Wi-fi gratuito e libero che si trova per strada, lasciamo accesa la localizzazione, il gps, ormai al supermercato paghiamo con un semplice click sul telefono!
  •  

Cosa è e come funziona il tracciamento di terze parti (Third Party Tracking)

thirdtrackindex Ormai quasi tutto ciò che viene fatto sul web ai giorni nostri viene tracciato. Tutti i siti con HTML5, JavaScript e altre feature avanzate, sebbene siano cosi fantastici dal punto di vista grafico, possono compromettere la nostra privacy senza che l’utente comune se ne accorga, senza che ne sia consapevole. In questo articolo andrò ad approfondire il tracciamento di terze parti, dandone una spiegazione pratica e un modo per evitarlo.
  •  

OWASP Top 10 2013 – A7 Funzione di controllo dell'accesso mancante

L’Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Pillole di crittografia teorica 1: Introduzione e tecniche classiche di crittografia

Con questo articolo inzierò una serie di scritti sulla crittografia teorica, iniziando con le basi e le tecniche classiche, passando per DES, AES, Web of Trust, fino ad arrivare ad RSA. L’idea è dare delle basi di crittografia, le quali, sebbene dal punto di vista pratico non siano prettamente rilevanti, sono utilissime dal punto di vista teorico. Ovviamente non riuscirò a spiegare in modo approfondito i vari algoritmi, visto che servono nozioni avanzate di matematica discreta, ma darò la possibilità a chiunque voglia approfondire di poterlo fare in modo autonomo.
  •  

Analisi dinamica avanzata di un Malware - Parte seconda: OllyDbg

L’analisi dinamica di un Malware, come ben sapete, consiste nell’analizzare un Malware in esecuzione, osservando le funzioni chiamate, i registri modificati e le sue componenti principali. In questo articolo, come per l'analisi statica, introdurrò uno dei software più utilizzati per questa operazione, OllyDbg. Introduzione OllyDbg è un debugger per sistemi Windows a 32 bit. Esso traccia i registri, riconosce le funzioni e i parametri passati alle principali librerie standard, insieme ad eventuali salti condizionali, tabelle, costanti, variabili e stringhe.
  •  

Come trovare i sottodomini di un sito

Riuscire a penetrare in un sistema non sempre è facile, specialmente se il dominio principale è protetto, aggiornato e sembra invulnerabile. Ogni volta che bisogna effettuare un penetration test, la via più semplice non è quasi mai quella diretta, anzi, bisogna sempre pensare a tutte le alternative possibili. Un esempio è la ricerca di sottodomini. Un sottodominio fa parte di un dominio più grande, ad esempio it.wikipedia.org. Molti sviluppatori creano sottodomini riferendosi a blog, forum o sottosezioni del dominio principale senza preoccuparsi di renderli sicuri quanto quello principale.
  •  

OWASP Top 10 2013 – A6 Esposizione di dati sensibili

L’Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

OWASP Top 10 2013 – A5 Configurazione errata di sicurezza

L’Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Automatizzare gli attacchi SQL Injection con Sqlmap

Sqlmap è un software di penetration testing open source utilizzato per automatizzare la ricerca di bug e SQL injection all’interno di applicazioni web. Con Sqlmap è possibile trovare la vulnerabilità, sfruttarla e connettersi al database appena violato per vedere, modificare o eliminare le tabelle. Supporta sei tipi di tecniche di SQL injection: Boolean-based blind:; time-based blind; error-based; Union query-based; Stacked queries; Out-of-band. I test che può effettuare possono sfruttare i parametri GET, POST, i valori HTTP Cookie, User-Agent e HTTP Referer.
  •  

OWASP Top 10 2013 – A4 Riferimento diretto ad un oggetto non sicuro

L’Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Analisi dinamica avanzata di un Malware - Parte prima: Debugging

debughome Negli ultimi articoli ho introdotto in modo abbastanza approfondito l'analisi statica, la quale ricordo,è solo il primo passo per analizzare un programma maligno. La parte più importante e a mio parere più interessante, è l’analisi dinamica, dove si può vedere e modificare in tempo reale ciò che il programma crea, elimina, esegue. Per chi fosse qui per la prima volta, consiglio di leggere l'articolo sull’analisi dinamica di base, in modo da farsi un’idea su come funziona e cosa affronteremo in questo articolo.
  •  

Rubrica Wargame: Imparare a trovare vulnerabilità lato server con Natas [Livello 1-10]

Gli Wargame sono sfide, sono laboratori per imparare e divertirsi, sono l’applicazione di tutta la teoria che studiamo giornalmente. Dopo aver imparato ad utilizzare il terminale con Bandit, passeremo oggi ad una sfida più difficile, ma anche più divertente. Sempre grazie a Overthewire ci troveremo ad affrontare un’applicazione web, scovare le password nascoste in esso e scalare i vari livelli, fino ad arrivare all’ultimo. Il gioco che introdurrò e spiegherò passo passo è Natas.
  •  

Come scansionare un sito .onion

Un sito .onion è un sito creato (solitamente) per proteggere la propria privacy, per mantenere l’anonimato ed essere sicuri che nessuno possa risalire alla nostra identità. Sebbene la privacy possa essere protetta, se l’applicazione web è configurata in malo modo, la possibilità che il sito venga colpito o defacciato rimane comunque alta. In questo articolo andrò a spiegare come scansionare un sito “nascosto” utilizzando il software nmap e nikto. Configurazione Per poter scansionare un sito del genere bisogna modificare il file hosts in modo che il nostro dispositivo possa raggiungerlo.
  •  

Imparare a sfruttare vulnerabilità: Kioptrix Livello 3

Ed eccoci al penultimo livello! Come al solito, la macchina virtuale si trova a questo indirizzo. Per chi si fosse perso i livelli precedenti, nellivello 1 sono entrato nel dispositivo utilizzando una vulnerabilità presente nella versione di Samba, mentre nellivello 2 era possibile effettuare un SQL Injection e da li, utilizzando netcat, è stata usata una reverse shell insieme ad un privilege escalation per ottenere i permessi di root. Per chiunque sia qui per la prima volta, consiglio oltre alla visione del livello 1 e del livello 2, anche gli articoli sul Footprinting e sullo Scanning.
  •  

(alcuni) Aspetti giuridici inerenti alla Sicurezza Informatica

Come ripetuto in molti articoli, l‘accesso abusivo ad un sistema informatico e telematico (ossia l’attività tipica di un soggetto che si introduce senza autorizzazione in un computer) è considerato illecito e sanzionabile in base a diversi fattori. In questo articolo cercherò di introdurre l’aspetto giuridico del campo, in modo da poter chiarire una volta per tutte cosa è considerato illegale nel nostro ordinamento. N.B: Non sono avvocato, con questo articolo non voglio in nessun modo dare consigli giuridici.
  •  

Cosa è il WarDriving ed esempio pratico da Milano a Bergamo

Sebbene il termine WarDriving sembra abbia a che fare con attività criminali e molti si confondano, non è nulla di tutto ciò. Esso è semplicemente l’atto di muoversi in un area più o meno grande mappando la presenza di reti wireless a fini statistici. Si può camminare, guidare, andare sul treno con il proprio dispositivo e analizzare le reti che si incontrano, senza che il proprietario ne sappia nulla. Il termine deriva da WarDialing, introdotto nel film WarGame.
  •  

Analisi statica avanzata di un Malware – Parte Terza: funzioni maligne di Windows

Nella Parte Prima abbiamo approfondito il discorso dell’analisi statica di un Malware introducendo l’astrazione di un dispositivo, i principali operatori assembly e, per ultimo, i software più utilizzati per questo tipo di operazioni. Nella Parte Seconda abbiamo imparato ad utilizzare il software IDA, che, con i suoi menu, funzioni ed opzioni, è il software principale utilizzato per effettuare un’analisi statica. In questo terzo e ultimo articolo della serie introdurrò alcune funzioni di Windows che utilizzano i Malware per infettare i nostri dispositivi.
  •  

OWASP Top 10 2013 – A3 Cross Site Scripting

L’Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Effettuare attacchi di Ingegneria Sociale con Social Engineer Toolkit

Il Social Engineer Toolkit è un software scritto per compiere test di Ingegneria Sociale, quindi atto ad entrare in un dispositivo sfruttando le debolezze delle persone. Dopo averlo scaricato, per installarlo basta entrare nella cartella scaricata e digitare python setup.py install Completata l’installazione, per avviarlo: ./setoolkit set Selezionando una delle voci, comparirà a sua volta un sotto menù che ci permetterà di creare l’attacco a noi più consono.
  •  

Steganalisi, ossia trovare messaggi nascosti con la Steganografia

stego La Steganalisi è il processo inverso della Steganografia. L’obiettivo della steganalisi è determinare se un mezzo o file contiene un messaggio e nel caso l’esito sia positivo, trovare quali sono le informazioni nascoste. Prendendo spunto dalla lezione del prof. Battiato, si hanno diversi tipi di attacchi: stego only: l’attaccante riesce ad intercettare il frammento stego e lo analizza; stego attack: il file originale viene comparato con il file steganografato e vengono rilevate le differenze; cover stego attack: l’attaccante riesce ad intercettare il frammento stego e sa quale cover è stato usato per crearlo; chosen stego attack: il software e l’oggetto stenografato sono conosciuti e viene quindi trovato il messaggio nascosto; manipulating the stego/cover data: l’attaccante può manipolare i frammenti stego/il cover.
  •  

Linee guida per l'hacking di un Server web (e come difendersi)

Un server web è un software (o insieme di software) che, in esecuzione su un server, gestisce le richieste di un client, solitamente di un browser. Ogni volta che visitiamo un sito internet, stiamo inviando richieste a dei server web, i quali ci rispondono con le pagine da noi richieste. Esistono moltissimi diversi software, ma i più utilizzati sono: Apache; Nginx; Microsoft-IIS. Server web più utilizzati I primi due sono Open-Source, quindi hanno codice sorgente aperto, è possibile modificare ogni parametro o codice interno, mentre IIS è a codice chiuso, per cui (che io sappia) nessuno è a conoscenza del codice interno.
  •  

Lista dei siti per imparare la sicurezza informatica

sitilearninfosec Trovate tutte le nuove pagine aggiornate a questo indirizzo Sebbene abbia creato una pagina apposita per mantenere una lista aggiornata settimanalmente con la lista di tutte le risorse di cui sono a conoscenza, ho deciso di scriverne anche un articolo, per cercare di categorizzarle al meglio e poter dare una maggiore capacità di decisione verso chi mi sta leggendo e ancora non sa da dove iniziare. Per prima cosa, bisogna chiedersi in cosa ci si vuole specializzare.
  •  

Analisi statica avanzata di un Malware - Parte seconda: IDA

Nella Parte Prima abbiamo approfondito il discorso dell’analisi statica di un Malware introducendo l’astrazione di un dispositivo, i principali operatori assembly e, per ultimo, i software più utilizzati per questo tipo di operazioni. In questo articolo introdurrò l’interfaccia di IDA e inizierò ad analizzare un Malware utilizzando i servizi online VirusTotal e Malwr, insieme al software IDA freeware. La lista da cui prenderò il Malware è questa, mentre il file stesso (se volete provare ad analizzarlo) è [il vostro browser tenderà a bloccare il download ovviamente] qui.
  •  

TOR: cosa è, come funziona, alcuni link utili

Sono anni che sentiamo parlare di TOR, dell’anonimizzazione e di come questo sistema ci permetta di navigare in completa autonomia e privacy senza aver paura di venire tracciati o rintracciati. Tor, acronimo di The Onion Router, è un sistema di comunicazione anonima per internet, il quale protegge gli utenti dall’analisi del traffico e dal rintracciamento attraverso una serie di nodi gestiti da volontari che permettono il traffico in uscita e la realizzazione di servizi anonimi nascosti.
  •  

Analisi statica avanzata di un Malware - Parte prima: Assembly

Attenzione: per questo articolo consiglio delle basi di programmazione ad alto livello (C o Java ad esempio), o per lo meno una conoscenza generica di come funziona un programma di base (funzioni, oggetti, if, while, for, etc.). Cercherò come sempre di inserire approfondimenti o link per comprendere al meglio. Come detto negli scorsi articoli sull’analisi dei malware, l’analisi statica e dinamica di base sono ottimi metodi per ottenere informazioni semplici, ma sono solo la punta dell’iceberg del processo.
  •  

Linee guida per l'hacking di un router (e come difendersi)

I nostri computer, cellulari, stampanti e sempre più spesso televisori o altri dispositivi sono connessi simultaneamente ai router domestici, i quali ci permettono di connetterci alla rete esterna e navigare in internet. Purtroppo (o per fortuna) anche questi sono vulnerabili ad attacchi esterni o interni e devono essere protetti sempre al massimo, in modo che nessuno possa prendere il controllo dei nostri dispositivi passando da essi. I passi da effettuare per entrare in un router sono:
  •  

Creare lista di parole per attacchi di forza bruta con crunch

Molte volte durante un penetration test si ha bisogno di liste particolari e specifiche in base alla situazione in cui ci si trova. Vuoi per un particolare tipo di Wi-Fi, vuoi per una richiesta di login di un’azienda, non sempre le liste generiche che si trovano online soddisfano i nostri requisiti. Avere infatti grandi lista di parole (come questa) non ci serve poi a molto se per testare ogni parola ci servono migliaia di ore di lavoro e magari neanche funzionerà.
  •  

Sniffare il traffico con Tcpdump

Tcpdump è uno dei software più completi e utilizzati per l’analisi del traffico su una rete locale, insieme a Wireshark. In questo tutorial andrò ad utilizzare la versione per linux, ma esiste un’ottima alternativa anche per Windows, ossia Windump. Tcpdump è un software che ci permette di osservare il traffico che passa su di una rete. Le informazioni principali vengono ricavare dal TCP header, il quale contiene l’indirizzo di destinazione e di sorgente, le informazioni di stato, il protocollo utilizzato, etc.
  •  

Sniffare la rete, cosa significa?

Lo sniffing di pacchetti è il processo di monitoraggio e cattura di tutti i pacchetti che passano tramite la rete utilizzando un software o un dispositivo hardware. Uno sniffer è quindi un programma che monitora il passaggio di dati su di una rete; esso può essere utilizzato per attività legittime, come la risoluzione di problemi di rete, ma anche per attività illegali, come l’intercettazione di dati sensibili, di conversazioni o di trasmissioni segrete.
  •  

Imparare a sfruttare vulnerabilità: Kioptrix Livello 2

Dopo lo scorso articolo su Kioptrix, eccoci qui con il secondo livello! La macchina virtuale da scaricare è presente a questo indirizzo, mentre per l’installazione consiglio di guardare la guida del primo livello. Per chiunque sia qui per la prima volta, consiglio oltre alla visione del livello 1, anche gli articoli sul Footprinting e sullo Scanning. Scansione Scansiono l’indirizzo IP locale della macchina virtuale con nmap e nikto, in modo da vedere quali porte sono aperte, e se c’è un modo per entrare e trovare la password del dispositivo (ricordo che non sto eseguendo una scansione anonima o stealth, ma utilizzo comandi abbastanza ‘invadenti’, i quali in una situazione reale potrebbero essere immediatamente scoperti).
  •  

Rubrica Wargame: Imparare ad utilizzare il terminale con Bandit [Livello 14-26]

Questo articolo è il seguito del precedente, che ho deciso di dividere per evitare di creare due pagine e far un post troppo lungo. Nei primi livelli si sono usati diversi comandi, tra i quali find, cat, sort, tr e molti altri. Nei prossimi il livello di difficoltà aumenterà gradualmente, ma cercherò di spiegare ogni passaggio il più approfonditamente possibile, in modo da esser chiaro per tutti. La password del livello 13 era
  •  

L'arte di hackerare le persone: Ingegneria Sociale

Quale è la più grave minaccia alla sicurezza dei vostri beni al giorno d’oggi? È facile: l'ingegnere sociale, ossia colui che riesce a carpire informazioni senza che vi rendiate conto di essere sfruttati per azioni maligne. ingegneriasociale Un classico (e famoso) caso di attacco Lavorava per una ditta che doveva approntare un sistema di back-up dei dati della sala nel caso in cui il computer centrale fosse saltato, perciò era informatissimo sulle procedure di trasferimento.
  •  

Cosa è una Botnet

Il termine Botnet deriva dalla parola roBOT NETwork, il quale fornisce già spiegazione abbastanza chiara di cosa possa essere. Essa è un’enorme rete formata da dispositivi informatici compromessi (infettati quindi da Malware) e collegati ad Internet, controllati da un unica entità, il botmaster. Una Botnet può avere sia scopi benevoli che malevoli, e può: operare su una grande rete di computer da remoto; scansionare automaticamente i dispositivi e le reti ad essi collegati; creare attacchi DOS; effettuare attacchi spam; compromettere altri dispositivi.
  •  

Trovare le password salvate in Linux e Windows

Recentemente, è uscito un ottimo programma per trovare le password del vostro sistema, avendo sia un livello di accesso come utente semplice sia come amministratore. descrizione Il software in oggetto si chiama LaZagne, ed è possibile trovarlo sia per Windows che per Linux. Sorprendentemente, riesce a trovare tutte le password salvate sul proprio sistema, tra le quali: Filezilla; Chrome, Firefox, Opera e IE (a meno che non sia presente una password di protezione); Skype; reti Wireless (servono i permessi di root); e molte altre.
  •  

Rubrica Wargame: Imparare ad utilizzare il terminale con Bandit [Livello 1-13]

Con questo articolo inizia un’altra rubrica del blog! Ho pensato di farlo sugli Wargame poiché possono essere un ottimo punto di partenza per chiunque voglia iniziare ad entrare nel campo della sicurezza informatica. Le soluzioni saranno sotto spoiler, e prima di controllarle, consiglio vivamente di provare, cercare sui motori di ricerca e documentarsi in modo da poter imparare autonomamente. Il gioco che introdurrò e spiegherò livello per livello sarà Bandit. Esso è uno dei giochi più semplici in circolazione, adatto soprattutto a chi abbia poca capacità con il terminale e voglia capire come potersi destreggiare in esso.
  •  

OWASP Top 10 2013 - A2 Eludere l'autenticazione e gestione della sessione

L'Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Cosa è e come funziona un Trojan

Un trojan, nell’ambito della sicurezza informatica, indica un tipo di malware, ed è definito come un programma maligno mascherato da qualcosa di benigno (il nome infatti deriva da Cavallo di Troia in esplicito riferimento alla leggenda Greca). Un trojan è utilizzato per entrare nel computer della vittima senza esser riconosciuto, accedere ai dati dello stesso e/o causare danno. Per esempio, può essere scaricato da un allegato mail, oppure tramite un programma p2p.
  •  

Tecniche e classificazione della Steganografia

La Steganografia è definita come l’arte di nascondere dati all’interno di altri dati senza essere scoperti da fonti esterne. Vengono rimpiazzati bit inutili e non utilizzati all’interno di file immagini, video o audio con bit precisi e scelti da noi. L’obbiettivo è lo stesso della crittografia, ossia inviare file senza che enti o persone esterne possano scoprire ciò che stiamo inviando. Le applicazioni sono diverse, tra le quali: Steganografia del File System; Steganografia nei media: vengono nascoste delle stringhe di testo in file immagini, video o audio.
  •  

Migliorare la privacy con Proxy, VPN e Tor

privacy Quale è la soluzione migliore per navigare mantenendo livelli di privacy alti senza lasciare traccie durante la propria navigazione? In questo articolo andrò ad affrontare i vantaggi e gli svantaggi utilizzando i proxy, le VPN e Tor. Proxy proxy Un proxy (tradotto: intermediario) è un server che si interpone tra il client e il server, inoltrando le richieste e le risposte dall’uno all’altro. Il principale utilizzo dei proxy è a livello applicativo, specialmente tramite HTTP.
  •  

Guadagnare hackerando siti: programmi Bug bounty!

bugcroud Negli ultimi tempi è iniziata una vera e propria corsa alla ricerca di bug, vulnerabilità e falle di sicurezza su siti a livello di Facebook, Pornhub e Yahoo. Il programma si chiama Bug Bounty e consiste nel trovare bug, riportarli all’azienda ed essere, se ritenuta la falla grava, ricompensati. L’iscrizione dipende dall’azienda, ma basta trovare il sito che fa per voi, leggere e vedere le modalità, ed iniziare ad hackerare!
  •  

Effettuare una ricognizione web: Recon-ng

recon Recon-ng è un software scritto da Tim Tones, completamente in Python; è composto da moduli indipendenti, aiuti interattivi e molteplici plugin integrati (molto simile a metasploit). Esso serve ad effettuare tecniche di ricognizione, ossia la fase direttamente connessa al Footprinting, nella quale ricaviamo informazioni dall’obbiettivo al fine di trovare vulnerabilità e poterle sfruttare in seguito. Il software è disponibile per linux a questo indirizzo. I moduli da cui è composto sono divisi in macro categorie, che sono:
  •  

Metodologie per il password cracking

passcracking Il password cracking è il processo di recupero delle password da informazioni o dati che sono state immagazzinate o trasmesse da un sistema informatico. L’obbiettivo dell’operazione può essere aiutare un utente a recuperare una password dimenticata, per l’amministratore serve a controllare le password semplici da craccare o può essere utilizzato per avere accesso non autorizzato in un sistema. La maggior parte dei tools utilizzati per questo processo avranno sicuramente successo con password semplici, mentre se fossero complicate, si potrebbe non riuscire a trovarle (anche se nel 2016 c’è ancora chi usa 123456 ).
  •  

Imparare a sfruttare vulnerabilità: Kioptrix Livello 1

Fin’ora abbiamo discusso alcuni tra i tanti modi per individuare i sistemi, enumerare informazioni, scansionare la porte. Le attività di Footprinting devono essere effettuate prima di poter portare qualsiasi tipo di attacco al sistema target. Una volta in possesso di queste informazioni, si possono iniziare a fare delle ipotesi sulle potenziali vulnerabilità che potrebbero essere presenti. In questo articolo utilizzerò la macchina virtuale Kioptrix per spiegare le principali metodologie di Accesso remoto (ossia accedere ad un sistema tramite la rete).
  •  

Come effettuare una ricognizione DNS

Il sistema dei nomi di dominio (Domain Name System) è un sistema utilizzato per la risoluzione di nomi dei nodi della rete in indirizzi IP e viceversa (ossia traduce il nome del dominio in indirizzo IP). Dopo aver identificato tutti i dominio associati ad un bersaglio (con il Footprinting) viene effettuata la fase di interrogazione dei DNS per identificare possibili configurazioni errate o con un basso livello di sicurezza. Esistono diversi strumenti per questa tecnica, e le informazioni più rilevanti che possiamo ottenere sono:
  •  

OWASP Top 10 2013 - A1 Injection (SQL, HTML, Frame Source)

L'Open Web Application Security Project (OWASP) è una community online, un progetto open-source che offre consigli, guide, articoli e software nell’ambito della sicurezza delle applicazioni. L’OWASP Top 10 include una lista delle maggiori vulnerabilità che un’applicazione web può avere, e l’obbiettivo è quello di educare sulle conseguenze che possono avere delle implementazioni errate e facilmente vulnerabili. Altri progetti degni di nota dalla stessa community sono i Cheat Sheets, una pagina completa di guide approfondite per le maggiori vulnerabilità conosciute, e l’OWASP testing guide.
  •  

Routersploit: trovare e utilizzare vulnerabilità nei router

In questi giorni è stato messo a punto su Github un nuovo software sulla stessa linea di metasploit. Esso ci permette di trovare, scansionare e sfruttare delle vulnerabilità su alcuni router e poter guadagnare l’accesso ad essi. Premetto che l’ho testato solo sul mio router, nei prossimi giorni farò delle prove anche in giro (con l’autorizzazione necessaria) ma per ora sembra davvero un’ottima risorsa. Per installarlo sul vostro dispositivo (con BackBox mi ha dato problemi, l’ho quindi utilizzato su Kali)
  •  

Analizzare il traffico di rete con Wireshark

Wireshark è probabilmente l’analizzatore di pacchetti più conosciuto e utilizzato; è gratis, open source ed è disponibile per Windows, MAC OS X e Linux. Il software può catturare, salvare, importare ed esportare i pacchetti di rete; include un sistema di filtraggio completo e colori diversificati in base al tipo di pacchetto catturato. Introduzione Dopo averlo installato, bisogna scegliere quale interfaccia analizzare e su cui sniffare i pacchetti. Le interfacce disponibili sono quelle attive sul nostro computer, io ho utilizzato una chiavetta esterna, ho creato un hotspot in kali e connesso alcuni dispositivi.
  •  

Craccare una rete wireless [WPA-PSK] tramite aircrack

wpacrack Questo articolo è per scopi didattici, farlo su reti su cui non si hanno autorizzazioni è illegale (articolo 615-ter del codice penale italiano). Introduzione Come per lo scorso articolo, utilizzerò il software Aircrack-ng. Esso, insieme ad aireplay e airodump, permette di sniffare e craccare una rete wireless WPA utilizzando una lista di parole (quindi non sarà una cosa certa come per il WEP). WPA sta a significare Wi-Fi Protected Access ed è un miglioramento dell’ormai defunto WEP.
  •  

Trovare e sfruttare vulnerabilità utilizzando Metasploit

msfintro Metasploit è uno dei software più utilizzati e utili per effettuare exploit e trovare vulnerabilità in un dispositivo. Dopo che il tool è stato aquisito dalla Rapid7 è stato diviso in diversi software, che sono: Metasploit Framework: quello che userò io, è la versione gratuita ed Open-Source che si trova preinstallata in Kali Linux, disponibile anche per Windows e OS X; Metasploit Community Edition: è un’interfaccia web che permette di effettuare scan, trovare vulnerabilità e molto altro.
  •  

Tecniche di Enumerazione

L’enumerazione è il processo di estrazione del nome degli utenti, delle macchine e dei servizi prelevandoli da un sistema o applicazione attiva. Nella fase di enumerazione l’attaccante cerca di creare connessioni attive al sistema utilizzando le informazioni rilevate durante la fase di scanning. Le informazioni che possono essere ricavate da questo attacco sono: risorse di rete; utenti e gruppi attivi online; nomi delle macchine online; applicazioni attive; dettagli dei servizi SNMP; Le tecniche di enumerazione sono diverse, tra le tante si possono identificare:
  •  

Le migliori VPN del 2016

VPN Le VPN (Virtual Private Network) sono reti virtuali private, ossia sistemi di comunicazione che permettono di creare una proprio rete privata per navigare in internet in completa sicurezza e (possibile) anonimato. In termini decisamente semplici, tramite un VPN ci si può collegare ad un server come se si fosse fisicamente connessi tramite cavo di rete o wireless. Le suddette reti utilizzano: collegamenti che necessitano di autorizzazione in modo da garantire l’accesso solo agli utenti autorizzati; protocolli che provvedono a cifrare il traffico transitante sulla rete virtuale; firewall tra il computer dell’utente e il server, in modo che i dati transitanti sono autenticati.
  •  

[Android] Applicazioni per effettuare pentesting

Negli ultimi anni l’utilizzo di smartphone, tablet e dispositivi mobile è cresciuto notevolmente, tanto da superare l’uso di computer fissi e portatili. Ma si può effettuare penetration testing da mobile? Dopo che è stato pubblicato Kali Nethunter, ho iniziato a testare varie applicazioni per Android, osservando il loro comportamento e se potrebbero essere utili per un eventuale attacco, per trovare vulnerabilità o sfruttare bug per violare un sistema. Ecco quali (a mio oltremodo discutibile) parere possono essere interessanti:
  •  

Analisi dinamica di base di un Malware

L’analisi dinamica consinste nell’esaminare un Malware quando è in esecuzione ed è tipicamente effettuata dopo aver compiuto l’analisi statica di base. Rispetto a quella statica, questa fase permette di osservare le funzionalità del file in esame dal “vivo”. Ad esempio se in quella statica viene trovata una stringa eseguibile non è detto che sarà poi eseguita dal programma. Per effettuare quest’analisi ci vengono incontro le Malware Sandbox. Una sandbox è un meccanismo di sicurezza che ci permette di eseguire dei programmi non sicuri in un ambiente protetto per evitare di infettare i nostri dispositivi o la rete ad essi connessi.
  •  

Trovare vulnerabilità di un sito con Nikto

https://cirt.net/nikto2) Nikto è uno scanner Open-Source di web server, utile quando dobbiamo fare dei test preliminari e generici sul nostro obbiettivo. Durante la scansione ci permette di: Trovare configurazioni errate del server e del software installati sul sito; Trovare file (come testi, password, etc.) presenti sull’obbiettivo ma non protetti; Trovare versioni del server/software vulnerabili e non aggiornati. Ho utilizzato Nikto su Mutillidae, ricordo che non è propriamente lecito utilizzarlo su piattaforme web senza autorizzazione.
  •  

Analisi statica di base di un Malware

L’analisi statica consiste nell’analizzare un Malware senza avviarlo, studiandone il codice e le funzioni per determinarne il comportamento. Questo articolo vuole essere un’introduzione alle tecniche di base per riconoscerne uno e iniziare ad analizzarlo. I link sottolineati e in rosso potrebbero risultare dannosi, apriteli con le dovute precauzioni; anche se si scaricheranno malware già riconosciuti e non si avvieranno, consiglio di testare il tutto su una macchina virtuale (io userò Remnux) o su un dispositivo fisico da utilizzare solo per questo scopo.
  •  

Analizzare un sito con Burp Suite

Burp Suite è un software che permette di scansionare e penetrare un sito internet. La versione Free si può trovare preinstallata in Kali oppure si può scaricare dal sito ufficiale, mentre quella Pro costa (la bellezza) di 329 euro all’anno (si trova online la crack della versione 1.5 Pro, un pò datata ma comunque funzionale). In questo articolo andrà ad analizzare la principali funzioni testandole su Mutillidae. Configurare il browser Per prima cosa bisogna configurare il proprio browser e, poiché Burp è un Proxy Server, tramite passano tutte le richieste al sito prescelto.
  •  

Imparare il pentesting di applicazioni web utilizzando Mutillidae

Mutillidae è un sito web (se cosi possiamo chiamarlo) che permette di testare sul proprio computer qualsiasi tool per trovare vulnerabilità ed hackerare un’applicazione web. Mutillidae può essere installata su Linux e Windows utilizzando XAMPP in modo da rendere semplice l’installazione (contiene in un unica installazione il server Apache, MariaDB, PHP e Perl). Mutillidae contiene numerose vulnerabilità e soprattutto aiuti per poter seguire passo passo l’utente che vuole imparare l’arte del pentesting.
  •  

Craccare una rete wireless [WEP] tramite Aircrack

Questo articolo è per scopi didattici, farlo su reti in cui non si hanno autorizzazioni è illegale (articolo 615-ter del codice penale italiano). Se avete letto la pagina sul wireless, vi sarete fatti un’idea di come funziona il WEP e di come è facilmente violabile in quanto vecchio e vulnerabile per definizione stessa. Vedremo dettagliatamente come poter entrare in una rete protetta da WEP , anche se è una protezione ormai usata da pochi modem (e se la usate, vi consiglio di cambiarla subito in WPA2).
  •  

Metodi diversi per effettuare un Network Scanning

In questo articolo entrerò nel dettaglio di un Network Scanning, in modo da poter capire a fondo come funziona e come effettuare uno scan specifico. L’handshake a 3 vie Il protocollo TCP usa il cosiddetto handshake a 3 vie per stabilire una connessione tra un client e un server. L’operazione esegue questi tre passi: Il computer A inizializza una connessione inviando al server un pacchetto con il solo SYN flag settato; Il server (se online e la porta richiesta è aperta) risponde con un pacchetto con il SYN flag e l’ACK settati; Il computer A rimanda al server il flag settato.
  •  

Scan di una rete

Il Network scanning è l’insieme delle procedure che si attuano al fine di identificare gli host connessi, le porte aperte e i servizi attivi su di essi. Gli obbiettivi di questa operazione sono di trovare: gli host attivi e i loro ip; i sistemi operativi utilizzati; i servizi attivi sulle macchine identificate (detto anche fingerprint); possibili vulnerabilità presenti. Visto che questo articolo vuole essere prettamente pratico, cercherò di dare delle spiegazioni più semplici possibili, e rimandare a eventuali approfondimenti per chi vuole anche studiare le basi.
  •  

Footprinting

Il footprinting è la prima fase che un penetration tester utilizza per acquisire più informazioni possibili su di un possibile obbiettivo in modo tale da identificare le diverse vie per penetrare in una rete o in un device connesso ad essa. L'EC-Council definisce ben sette passi diversi per la fase di footprinting: Raccolta di informazioni; Determinare il range della rete; Identificare i dispositivi connessi; Trovare le porte aperte ed eventuali punti di accesso; Determinare il sistema operativo; Determinare i servizi attivi; Mappare la rete.
  •  

Google hacking

Hackerare un sito tramite Google, è possibile davvero? No, non permette ovviamente di entrare in modo indiscriminato in qualsiasi sito, ma se si sa come utilizzare, si possono trovare vulnerabilità o credenziali d’accesso! Ma andiamo con ordine. Google, come tutti ben sappiamo, è un motore di ricerca, azienda fondata nel 1998 e tutt’oggi una della più prolifiche al mondo. Qualsiasi cosa cerchiamo sappiamo che bene o male la troveremo, a meno che non sia stata eliminata per DMCA o per una richiesta di oblio.
  •  

Scansionare un sito con Uniscan

Uniscan è un software (per Linux) Open-Source che permette di scansionare in modo abbastanza completo e user-friendly un sito internet e di rilevare informazioni che ci possono essere utili per un eventuale footprinting. Dopo averlo scaricato, scompattate l’archivio e con il terminale spostatevi nella cartella del software. Da li, basta digitare: sudo ./uniscan.pl e il programma si aggiornerà, altrimenti partirà direttamente. (Se volete potete usare anche l’interfaccia grafica, digitando sudo .
  •  

Le migliori distro per il Pentesting 2016

Il Penetration Test è il processo di valutazione della sicurezza di un sistema o di una rete nella ricerca di una vulnerabilità o debolezza per poter sottrarre informazioni e dati sensibili. Esso fornisce una stima chiara sulle capacità di difesa e del livello di penetrazione raggiunto nei confronti: delle vulnerabilità interne al sistema; delle vulnerabilità esterne al sistema; della sicurezza fisica. Nel corso degli anni sono state create diverse distribuzioni linux che includono tools e software adatti per testare e analizzare le misure di sicurezza di un sistema, l’idea di esse è che chiunque, dal principiante al professionista, possa usarle (e manipolarle) a suo piacimento per testare la propria rete, il proprio sito, il proprio database o utilizzarle in ambito lavorativo.
  •  

Estensioni browser per una miglior privacy

Ci sono centinaia di plugin che promettono di proteggere le tua privacy, ma quali sono davvero i migliori? Fanno tutti la stessa cosa? Questo articolo vuole essere un introduzione all’argomento, spiegando in modo dettagliato le estensioni più importanti (secondo me) che un internauta dovrebbe installare se vuole che la propria privacy venga rispettata nel limite del possibile e senza perdere usabilità nell’utilizzo di internet quotidiano. Che tipo di informazioni condividi Navigando in rete pensiamo che l’unica informazione che condividiamo entrando nei siti è l'IP o al massimo l'User Agent, invece no!
  •