Il proverbio: "La toga non fa il monaco"
dovrebbe essere una filosofia tenuta in conto da qualunque antivirus che non sia una truffa. Perché sì, con questi metodi, andremo a scoprire quali antivirus sono davvero prodotti validi, e quali invece sono una mezza truffa. E il bello, è che farai tutto con le tue mani, questo thread non contiene alcuno spoiler, solamente il metodo.
Prepara un lab contenente vari sistemi operativi in Virtual Box, ciascuno di essi equipaggiato con un antivirus differente.
METODO 1
Step 1. Scarica il codice di un malware preso a caso da Github, può essere scritto in qualsiasi linguaggio di programmazione. Assicurati che sia stato pubblicato già da molto tempo, e che quindi, molti AV siano in grado di riconoscerlo;
Step 2. Scarica vari compiler a caso, ma dovete assicurarvi che ciascuno di essi usi metodi di compilazione differenti fra loro. L'importante è che siano in grado di compilare il codice del malware in un
Un buon AV, si distingue da un pessimo AV da come riconosce un malware dal behaviour pattern e non solamente dalle signature. Dovete evitare di adottare come soluzione finale tutti gli AV che non riconosceranno più il malware in runtime solo in base alle nuove signature generate.
METODO 2 (più subdolo)
Step 1. Shellter 7.2 è l'ultima versione di un programma che è in grado di iniettare shellcode in un app a 32 bit innoqua, trasformandola in un malware pronto e compatibile con Metasploit Framework. Il codice iniettato ovviamente non si limita ad occupare la sezione .text, e per garantire efficacia ed evasibilità, lo "spezza" e redistribuisce in più sezioni, usando 8 metodi per richiamare ed eseguire il codice in runtime (fra questi 8 metodi i più noti, VirtualAlloc e VirtualProtect). Ogni app infetta genera nuove signature, e rappresenta una sfida per ogni antivirus, dal momento che l'evasion è garantita dalle proprietà uniche dell'app, e dal pattern di infezione più "idoneo".
Step 2. Scarica varie app a 32 bit indipendenti e infettale con questo programma, dopodiché eseguili al cospetto di ogni AV, osservandone il comportamento. Noterai che molti di loro, nel 2023, non sono in grado di riconoscere shellcode per Metasploit (in particolare all'analisi statica), nonostante l'enorme popolarità di questo framework. Sfortunatamente, alcuni AV creduti erroneamente "buoni" (e di cui non farò il nome nel thread) non vedono la minaccia neanche al "runtime", consentendo all'app infetta di stabilire una shell fra la vittima e l'attaccante.
Dopo aver effettuato il test con questi due metodi, ti accorgerai di una grande realtà che si cela dietro questi prodotti per la sicurezza. E' come se per loro un ladro con la maschera nera sia pericoloso, mentre uno che indossa una maschera rosa con un cuoricino stampato sopra sia innoquo. Qual è quindi, il miglior metodo di prevenzione contro i malware?
Gli esperti ci dicono "non scaricare da fonti sconosciute", "non aprire allegati sospetti", una serie di consigli davvero banali... Anche un po' ipocriti, ora che ci rifletto meglio. Prima o poi, noi saremo costretti a correre il rischio di scaricare qualcosa da una fonte sconosciuta, pensiamo ad esempio a tutte quelle volte che ci mettiamo a visitare ogni singolo sito web per scaricare il nostro film in streaming preferito? Pensiamo a tutte quelle volte, che per mancanza di fondi o di tempo, ci mettiamo a scaricare un "programma craccato" (non vi preoccupate, in barba al mito che si va in galera per scaricare un programma craccato, in galera al massimo ci va l'autore della crack, non chi la scarica)
... Quindi? La mia deduzione in merito, è che il miglior modo per "essere sicuri", sia l'adottare un sistema operativo virtuale isolato e addetto a "compiti rischiosi", come per l'appunto testare programmi/e siti web sospetti. In questo modo non solo saremo sicuri che il nostro vero sistema operativo rimanga intatto, ma potremo anche verificare la famigerata presenza di "falsi positivi", ossia il rilevamento di un malware da parte di un AV su un file che non è realmente un malware, ma ne presenta solo le caratteristiche superficiali, perché osserveremo coi nostri occhi cosa fa veramente il programma in fase di testing. Però, non è vicino il giorno in cui il popolo di Internet realizzerà questa realtà, anche perché non tutti hanno risorse/o abbastanza competenza da preparare autonomamente un sistema operativo virtuale, addetto ad incarichi pericolosi. Sta di fatto che il costo di VirtualBox con una copia "pirata" di Windows 10 è zero, il costo di una "security suite completa di ogni funzione" è 40€.
dovrebbe essere una filosofia tenuta in conto da qualunque antivirus che non sia una truffa. Perché sì, con questi metodi, andremo a scoprire quali antivirus sono davvero prodotti validi, e quali invece sono una mezza truffa. E il bello, è che farai tutto con le tue mani, questo thread non contiene alcuno spoiler, solamente il metodo.
Prepara un lab contenente vari sistemi operativi in Virtual Box, ciascuno di essi equipaggiato con un antivirus differente.
METODO 1
Step 1. Scarica il codice di un malware preso a caso da Github, può essere scritto in qualsiasi linguaggio di programmazione. Assicurati che sia stato pubblicato già da molto tempo, e che quindi, molti AV siano in grado di riconoscerlo;
Step 2. Scarica vari compiler a caso, ma dovete assicurarvi che ciascuno di essi usi metodi di compilazione differenti fra loro. L'importante è che siano in grado di compilare il codice del malware in un
.exe
. Ogni volta che voi compilerete il codice con un metodo diverso, l'exe risultante produrrà dei leggeri ma invisibili cambiamenti, notabili solamente con un Hex editor. Avete appena generato nuove signature statiche usando lo stesso malware.Un buon AV, si distingue da un pessimo AV da come riconosce un malware dal behaviour pattern e non solamente dalle signature. Dovete evitare di adottare come soluzione finale tutti gli AV che non riconosceranno più il malware in runtime solo in base alle nuove signature generate.
METODO 2 (più subdolo)
Step 1. Shellter 7.2 è l'ultima versione di un programma che è in grado di iniettare shellcode in un app a 32 bit innoqua, trasformandola in un malware pronto e compatibile con Metasploit Framework. Il codice iniettato ovviamente non si limita ad occupare la sezione .text, e per garantire efficacia ed evasibilità, lo "spezza" e redistribuisce in più sezioni, usando 8 metodi per richiamare ed eseguire il codice in runtime (fra questi 8 metodi i più noti, VirtualAlloc e VirtualProtect). Ogni app infetta genera nuove signature, e rappresenta una sfida per ogni antivirus, dal momento che l'evasion è garantita dalle proprietà uniche dell'app, e dal pattern di infezione più "idoneo".
Step 2. Scarica varie app a 32 bit indipendenti e infettale con questo programma, dopodiché eseguili al cospetto di ogni AV, osservandone il comportamento. Noterai che molti di loro, nel 2023, non sono in grado di riconoscere shellcode per Metasploit (in particolare all'analisi statica), nonostante l'enorme popolarità di questo framework. Sfortunatamente, alcuni AV creduti erroneamente "buoni" (e di cui non farò il nome nel thread) non vedono la minaccia neanche al "runtime", consentendo all'app infetta di stabilire una shell fra la vittima e l'attaccante.
Dopo aver effettuato il test con questi due metodi, ti accorgerai di una grande realtà che si cela dietro questi prodotti per la sicurezza. E' come se per loro un ladro con la maschera nera sia pericoloso, mentre uno che indossa una maschera rosa con un cuoricino stampato sopra sia innoquo. Qual è quindi, il miglior metodo di prevenzione contro i malware?
Gli esperti ci dicono "non scaricare da fonti sconosciute", "non aprire allegati sospetti", una serie di consigli davvero banali... Anche un po' ipocriti, ora che ci rifletto meglio. Prima o poi, noi saremo costretti a correre il rischio di scaricare qualcosa da una fonte sconosciuta, pensiamo ad esempio a tutte quelle volte che ci mettiamo a visitare ogni singolo sito web per scaricare il nostro film in streaming preferito? Pensiamo a tutte quelle volte, che per mancanza di fondi o di tempo, ci mettiamo a scaricare un "programma craccato" (non vi preoccupate, in barba al mito che si va in galera per scaricare un programma craccato, in galera al massimo ci va l'autore della crack, non chi la scarica)
... Quindi? La mia deduzione in merito, è che il miglior modo per "essere sicuri", sia l'adottare un sistema operativo virtuale isolato e addetto a "compiti rischiosi", come per l'appunto testare programmi/e siti web sospetti. In questo modo non solo saremo sicuri che il nostro vero sistema operativo rimanga intatto, ma potremo anche verificare la famigerata presenza di "falsi positivi", ossia il rilevamento di un malware da parte di un AV su un file che non è realmente un malware, ma ne presenta solo le caratteristiche superficiali, perché osserveremo coi nostri occhi cosa fa veramente il programma in fase di testing. Però, non è vicino il giorno in cui il popolo di Internet realizzerà questa realtà, anche perché non tutti hanno risorse/o abbastanza competenza da preparare autonomamente un sistema operativo virtuale, addetto ad incarichi pericolosi. Sta di fatto che il costo di VirtualBox con una copia "pirata" di Windows 10 è zero, il costo di una "security suite completa di ogni funzione" è 40€.