Iscriviti ora al Webinar di presentazione del corso Ethical Hacker! Scopri di più
Iscriviti ora al Webinar di presentazione del corso CISO! Scopri di più
Negli ultimi anni, una modalità di attacco chiamata "living off the land" ha preso piede nel mondo dell'#hacking. Questo approccio consiste nell'utilizzare strumenti già presenti nel sistema di destinazione, sfruttando le risorse disponibili senza dover introdurre nuovi elementi che potrebbero destare sospetti. Nel contesto dei sistemi #Windows, siamo fortunati ad avere a disposizione un linguaggio di programmazione sempre più potente chiamato #PowerShell, fornito direttamente da #Microsoft con le installazioni di Windows.
Quando fu introdotto nel 2006, PowerShell aveva alcune limitazioni, ma rappresentava un passo avanti per migliorare le capacità di scripting nei sistemi Windows. D'altronde, i sistemi operativi di tipo #Unix, come #Linux, hanno avuto linguaggi di #scripting incorporati fin dall'inizio. L'interfaccia nativa dei sistemi Unix e Linux è sempre stata una linea di comando che funge da interprete per il linguaggio di scripting, chiamato #shell.
Negli ultimi anni, Microsoft ha esteso PowerShell a piattaforme diverse da Windows. Ora è possibile utilizzare PowerShell sia su Linux che su macOS. Tuttavia, questa versione di PowerShell è leggermente diversa da quella preinstallata nella maggior parte dei sistemi Windows.
PowerShell è un linguaggio di programmazione orientato agli oggetti che utilizza funzionalità chiamate "cmdlet" per fornire la sua funzionalità. Oltre a disporre di un linguaggio e una sintassi semplici, PowerShell è progettato per essere esteso. È possibile utilizzare le funzionalità di base del linguaggio per scrivere programmi, ma è anche possibile creare nuovi à#cmdlet o utilizzare quelli già inclusi nel linguaggio per ottenere accesso a funzionalità complesse per specifici compiti.
Oltre ad essere un linguaggio di programmazione potente di per sé, PowerShell è anche utilizzato per sviluppare alcuni #framework di #exploit. Alcuni di questi framework sono attualmente in varie fasi di manutenzione. Ad esempio, #Empire è un framework di post-exploitation scritto in PowerShell. Ciò significa che si tratta di un insieme di strumenti che vengono utilizzati dopo aver già compromesso un sistema. Attraverso Empire, è possibile ottenere accesso semplificato per l'elevazione dei privilegi o per la raccolta di password, ad esempio. Come #Metasploit, anche Empire richiede l'installazione di un agente sul sistema di destinazione per la comunicazione.
Un altro strumento è #PowerSploit. Anche se non è più attivamente mantenuto, è possibile scaricarlo ed utilizzarlo. PowerSploit fornisce una serie di cmdlet che includono funzioni per l'esecuzione del codice, la persistenza, l'esfiltrazione, l'elevazione dei privilegi, la ricognizione e altro ancora. Anche se non è più attivamente mantenuto, è comunque possibile ottenere la raccolta di script per utilizzarla.