Термин «компьютерный вирус» появился в 1984 г., когда сотрудник Лехайского университета США Ф. Коуэн впервые использовал его в своем докладе на конференции по информационной безопасности.
Компьютерные вирусы можно классифицировать по следующим характеристикам:
1) деструктивные способности;
2) среда обитания;
3) способ заражения;
4) способ активации;
5) способ маскировки.
Деструктивная способность компьютерного вируса – характеристика способности вируса наносить ущерб зараженной им компьютерной системе.
Деструктивные способности могут варьироваться от неопасных, приводящих лишь к уменьшению объема свободной памяти на диске или проявляющих себя безобидными звуковыми или визуальными эффектами, до опасных.
Опасные вирусы могут вызывать серьезные сбои в работе компьютерных систем, нарушение целостности, доступности и конфиденциальности информации, хранящейся и обрабатывающейся в этих системах.
Способ заражения − метод внедрения вирусного кода в заражаемые объекты.
КАК СОЗДАТЬ СЕТЕВОГО ЧЕРВЯ НА PYTHON?!
Способы заражения и активации, которые использует тот или иной вирус, в значительной степени зависят от его среды обитания.
Среда обитания компьютерного вируса – системные области компьютера (например, BIOS), операционная система или приложения, в компоненты (файлы) которых внедряется код вируса.
По среде обитания компьютерные вирусы могут быть разделены на следующие виды:
1. Файловые вирусы используют для своего размножении файловую систему какой-либо операционной системы, внедряясь в исполняемые файлы, создавая файлы-двойники (компаньон-вирусы), либо используют особенности организации файловой системы (link-вирусы). Файловые вирусы могут использовать различные способы заражения.
По способу заражения файловые вирусы делятся на следующие виды[1]:
1) перезаписывающие (overwriting);
2) паразитические (parasitic);
3) вирусы-компаньоны (companion);
4) вирусы-ссылки (link);
5) вирусы, заражающие объектные модули (OBJ);
6) вирусы, заражающие библиотеки компиляторов (LIB);
7) вирусы, заражающие исходные тексты программ.
Перезаписывающие (overwriting) вирусы записывают свой код вместо кода заражаемого файла, уничтожая его содержимое. Неработоспособность файлов приводит к нарушению работы операционной системы и приложений, что является проявлением действия вируса.
Паразитические (parasitic) вирусы распространяют свои копии так, что содержимое файлов изменяется, но сами файлы при этом остаются полностью или частично работоспособными. Такие вирусы могут записываться в начало файлов (prepending), в конец файлов (appending) и в середину файлов (inserting), причем, внедрение вирусов в середину файлов может выполняться различными методами — путем переноса части файла в его конец или копирования своего кода в заведомо неиспользуемые области
Вирусы-компаньоны (companion) создают для заражаемого файла файл-двойник, который и получает управление при запуске зараженного файла, при этом сам зараженный файл не изменяется и остается работоспособным. Такой механизм реализуется, например, если вирус переименовывает заражаемый файл, а сам записывается под изначальным именем этого файла (например, файл notepad.exe переименовывается в notepad.exd, а вирус записывается под именем notepad.exe). При запуске управление получает код вируса, который затем запускает оригинальный
#1 | Python Socket | Как Работает Сеть?
Link-вирусы изменяют отдельные поля файловой системы таким образом, что операционная система при запуске зараженного файла начинает выполнять также и код вируса. При этом содержимое зараженного вирусом файла не изменяется.
Вирусы, заражающие объектные модули (OBJ-вирусы), и вирусы, заражающие библиотеки компиляторов (LIB-вирусы), – вирусы, записывающие свой код соответственно в объектные модули или библиотеки. Так как такие зараженные файлы не исполняются, то для своего распространения эти вирусы используют файлы типов COM и EXE? получаемые при компоновке зараженных OBJ и LIB-файлов с другими объектными модулями и библиотеками.
Вирусы, заражающие исходные тексты программ, добавляют свой код к исходным текстам программ, а распространение вируса происходит после ее компиляции и компоновки. OBJ-вирусы, LIB-вирусы и вирусы, заражающие исходные тексты программ встречаются редко.
2. Загрузочные вирусы записывают себя, либо в загрузочный сектор диска (boot-сектор), либо в сектор, содержащий системный загрузчик жесткого диска (MBR – Master Boot Record), либо модифицируют адрес активного boot-сектора в таблице разделов диска (Disk Partition Table), расположенной в MBR жесткого диска. При запуске системы управление
передается коду вируса, а не оригинальному коду загрузчика.
3. Макро-вирусы являются программами на макро-языках, встроенных в некоторые системы обработки данных (текстовые и графические редакторы, системы проектирования и т. д.), и заражают файлы таких систем, например, файлы-документы. Наибольшее распространение получили макро- вирусы для Microsoft Office. Получив управление, макро-вирус размножается путем переноса своего кода в другие файлы, чаще всего в файлы, которые в данный момент редактируются.
В Microsoft Office операции при работе с документами и таблицами основываются на выполнении собственных макросов − при сохранении файла по команде File/Save вызывается макрос FileSave, при сохранении по команде File/SaveAs – FileSaveAs, при печати документов – FilePrint и т. д. В макро-вирусах, инфицирующих документы Microsoft Office, либо присутствует автоматически запускаемый макрос (авто-функция), либо переопределен один из стандартных системных макросов, ассоциированный
с каким-либо пунктом меню. Также возможен вызов вирусного макроса при
нажатии на какую-либо клавишу или комбинацию клавиш.
4. Скрипт-вирусы – вирусы, написанные на каком-либо скрипт-языке (VBS, JS, BAT, PHP и т. д.), могут рассматриваться как подгруппа файловых вирусов. Скрипт-вирусы способны заражать другие скрипт-программы, файлы форматов, в которых возможно выполнение скриптов (например, HTML-файлы), либо могут являться частью многокомпонентных вирусов.
По особенностям алгоритма работы вирусы можно разделить на резидентные и нерезидентные.
Резидентные вирусы – вирусы, резидентно находящиеся в памяти инфицированного компьютера в течение всего времени его работы и заражающие те или иные объекты на основе перехвата обращений операционной системы к этим объектам. Даже при удалении всех зараженных файлов резидентная копия вируса остается активной и может
заражать вновь создаваемые или восстановленные из резервных копий файлы.
Нерезидентные вирусы – вирусы, активные незначительное время – только при запуске зараженного файла – и размещающие в оперативной памяти небольшие программы, не способные распространять вирус.
Распространение нерезидентных вирусов происходит путем поиска на диске незараженных файлов и записи в них вирусного кода.
Для скрытия своего нахождения в компьютере и для противодействия обнаружению с помощью антивирусных программ и других средств вирусы могут использовать различные способы маскировки. Для этого используются стелс-алгоритмы (stelth – невидимка), самошифрование и полиморфизм (polymorphism – изменяющийся) и другие приемы.
Стелс-вирусы – вирусы, использующие специальные алгоритмы, позволяющие скрывать присутствие вируса в системе. Возможны несколько приемов, используемых стелс-вирусами для того, чтобы оставаться необнаруживаемыми. Первый из них основан на перехвате команд чтения зараженных секторов и подстановке вместо него незараженного оригинала.
Другой прием базируется на временном восстановлении (лечении) зараженных секторов при запуске той или иной программы (например, антивирусной) с последующим повторным заражением файлов после окончания работы программы. Макро-вирусы чаще всего используют запрет вызовов меню просмотра макросов.
Полиморфик-вирусы – вирусы, не имеющие сигнатур, т. е. не имеющие постоянных участков кода. Отсутствие совпадений кода у разных образцов одного и того же вируса достигается шифрованием кода вируса и модификацией программы-расшифровщика. Полиморфизм вирусов значительно усложняет их выявление при помощи вирусных масок, представляющих собой участки постоянного кода, специфичные для конкретного вируса.
Для сокрытия присутствия в операционной системе вредоносной программы может быть использована руткит-технология (rootkit). Rootkit – программный код или техника, направленная на сокрытие присутствия в системе заданных объектов (процессов, файлов, ключей реестра и т.д.).
Сетевые черви отличаются от вирусов, прежде всего, способностью самостоятельно распространяться в компьютерных сетях. Между собой разные типы червей отличаются рядом характерных особенностей, в том числе:
1) способом передачи своих копий на удаленные компьютеры;
2) способом активации на зараженном компьютере;
3) способом проникновения в систему;
4) способом маскировки.
Наиболее распространенными видами сетевых червей являются почтовые черви, черви, использующие интернет-пейджеры, черви, распространяющиеся в IRC-каналах и др.
Почтовые черви (E-mail-Worms) – черви, использующие для своего распространения электронную почту (E-mail). Копии таких червей саморассылаются как вложения в электронное письмо либо как ссылка на содержащий червя файл, расположенный на каком-либо сетевом ресурсе.
Активация червя происходит соответственно при открытии зараженного вложения или ссылки на зараженный файл. Почтовые адреса для своей рассылки черви находят в адресной книге почтового ящика или почтового клиента (например, MS Outlook), либо сканируя файлы на диске и выделяя в них записи, являющиеся адресами электронной почты.
Черви, использующие интернет-пейджеры (IM-Worms) – черви, рассылающиеся на обнаруженные контакты (из контакт-листа) сообщений, содержащих URL, на файл, расположенный на каком-либо веб-сервере аналогично тому как рассылаются почтовые черви.
Черви в IRC-каналах (IRC-Worms) – черви, распространяющиеся по IRC-каналам путем рассылки зараженного файла пользователям сети либо путем рассылки URL-ссылки на копию червя. При этом атакуемый пользователь должен подтвердить прием файла, затем сохранить его на диск и открыть (запустить на выполнение) [1].
Черви файлообменных сетей (P2P-Worms) – черви, распространяющиеся в файлообменных сетях путем самокопирования в каталог обмена файлами, расположенный на локальном компьютере с последующим скачиванием на удаленный компьютер, осуществляющий поиск файлов в сети.
Другие виды сетевых червей (Net-Worms) [1] осуществляют заражение удаленных компьютеров путем копирования червя в открытые на запись каталоги в доступных сетевых ресурсах или случайным образом ищут компьютеры в сети, подключаются к ним и пытаются открыть их диски на полный доступ.
Возможно использование червем уязвимостей (дыр) в операционных системах и приложениях. В этом случае для заражения уязвимых компьютеров червь посылает специально оформленный сетевой пакет или запрос (эксплойт уязвимости), в результате чего код червя проникает на компьютер-жертву.
Для своего распространения черви могут использовать сетевые ресурсы публичного использования, заражая Web- или FTP-серверы, с последующим проникновением на компьютеры, с которых происходит обращение к зараженному серверу.
Некоторые виды сетевых червей способны паразитировать на других вредоносных программах, например, троянских программах-бэкдорах,
предназначенных для скрытного удаленного администрирования и дающих возможность скачивать и запускать файлы. Такие черви ищут в сети компьютеры, зараженные бэкдор-трояном и посылают на них команду скачивания и запуска своей копии.
Ряд червей рассылается в виде архивов, в том числе архивов, закрытых паролем, который указывается в тексте письма. Иногда встречаются вредоносные программы, предназначенные для уничтожения других вредоносных программ. Так, сетевой червь Welchia, проникая в компьютер уничтожал червя Lovesan, после чего пытался
загрузить с сайта Microsoft патч, закрывающий уязвимость в системе, которую использовал Lovesan.
Сетевые черви могут проникать на компьютер не как вложение к электронному письму, когда распространяется само тело червя, а как содержащаяся в письме ссылка на зараженный сайт. На сайте располагается та или иная вредоносная, например, троянская программа.
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru
Сетевой червь
Сетевой червь — разновидность вредоносной программы, самостоятельно распространяющейся через локальные и глобальные (Интернет) компьютерные сети.
- 1 История
- 2 Механизмы распространения
- 3 Скорость распространения
- 4 Структура
- 5 Полезная нагрузка (Payload)
- 6 Способы защиты
- 7 См. также
- 8 Примечания
- 9 Ссылки
История
Ранние эксперименты по использованию компьютерных червей в распределённых вычислениях были проведены в исследовательском центре Xerox в Пало-Альто Джоном Шочем (John Shoch) и Йоном Хуппом (Jon Hupp) в 1978 году. Термин «червь» возник под влиянием научно-фантастических романов «Когда ХАРЛИ исполнился год» Дэвида Герролда (1972), в котором были описаны червеподобные программы, и «На ударной волне» [en] Джона Браннера (1975), где вводится сам термин.
Одним из наиболее известных компьютерных червей является «Червь Морриса», написанный в 1988 г. Робертом Моррисом-младшим, который был в то время студентом Корнеллского Университета. Распространение червя началось 2 ноября, после чего червь быстро заразил примерно 6200 компьютеров (это около 10 % всех компьютеров, подключённых в то время к Интернету). Также ещё один известный червь — MyDoom, он же является вредоносной программой, нанёсшей самый большой экономический ущерб по сравнению с любым другим вредоносным ПО — 38.000.000.000 долларов США. Модификации данного почтового червя сохраняют свою активность и распространяются по сей день.
Механизмы распространения
Все механизмы («векторы атаки») распространения червей делятся на две большие группы:
- Использование уязвимостей и ошибок администрирования в программном обеспечении, установленном на компьютере. Червь Морриса использовал известные на тот момент уязвимости в программном обеспечении, а именно в почтовом сервере sendmail, сервисе finger и подбирал пароль по словарю. Такие черви способны распространяться автономно, выбирая и атакуя компьютеры в полностью автоматическом режиме.
- Используя средства так называемой социальной инженерии, провоцируется запуск вредоносной программы самим пользователем. Чтобы убедить пользователя в том, что файл безопасен, могут подключаться недостатки пользовательского интерфейса программы — например, червь VBS.LoveLetter использовал тот факт, что Outlook Express скрывает расширения файлов. Данный метод широко применяется в спам-рассылках, социальных сетях и т. д.
Иногда встречаются черви с целым набором различных векторов распространения, стратегий выбора жертвы, и даже эксплойтов под различные операционные системы.
Скорость распространения
Скорость распространения сетевого червя зависит от многих факторов: от топологии сети, алгоритма поиска уязвимых компьютеров, средней скорости создания новых копий.
Для сетевых червей, распространяющихся по сети путём непосредственного использования протоколов TCP/IP, то есть, с любого IP-адреса на любой другой, характерно стремительное распространение. При условии, что каждый экземпляр червя достоверно знает адрес ранее незараженного узла сети, возможно экспоненциальное размножение. Например, если каждый экземпляр заражает один компьютер в секунду, все адресное пространство IPv4 будет заполнено червем за полминуты. Гипотетический червь, который был бы способен распространяться с такой скоростью, получил наименование «блицкриг-червя». Исследователем Н.Уивером из университета Беркли рассмотрены несложные субоптимальные алгоритмы, которые могли бы позволить червю, размножаясь несколько медленнее, тем не менее заразить Интернет за 15 минут. Червь такого типа получил наименование «червь Уорхола» — в честь Энди Уорхола, автора изречения:
В будущем каждый получит шанс на 15 минут славы
Эпидемия червя SQL Slammer, заразившего в 2003 г. более 75000 серверов за 10 минут, была близка к этой модели распространения.
Тем не менее, подавляющее большинство червей использует гораздо менее эффективные алгоритмы. Экземпляры типичного червя ищут уязвимые узлы сети методом проб и ошибок — случайным образом. В этих условиях кривая его размножения соответствует решению дифференциального уравнения Ферхюльста и приобретает «сигмовидный» характер. Корректность такой модели была подтверждена в 2001 году во время эпидемии червя CodeRed II. За 28 часов червь заразил около 350 000 узлов сети, причем в последние часы скорость его распространения была довольно мала — червь постоянно «натыкался» на ранее уже зараженные узлы.
В условиях активного противодействия со стороны антивирусов, удаляющих экземпляры червя и вакцинирующих систему (то есть делающих её неуязвимой), кривая эпидемии должна соответствовать решению системы уравнений Кермака-Маккендрика с острым, почти экспоненциальным началом, достижением экстремума и плавным спадом, который может продолжаться неделями. Такая картина, действительно, наблюдается в реальности для большинства эпидемий.
Вид кривых размножения для червей, использующих почтовые протоколы (SMTP), выглядит примерно так же, но общая скорость их распространения на несколько порядков ниже. Связано это с тем, что «почтовый» червь не может напрямую обратиться к любому другому узлу сети, а только к тому, почтовый адрес которого присутствует на зараженной машине (например, в адресной книге почтового клиента Outlook Express). Продолжительность «почтовых» эпидемий может достигать нескольких месяцев.
Структура
Черви могут состоять из различных частей.
Часто выделяют так называемые резидентные черви, которые могут инфицировать работающую программу и находиться в ОЗУ, при этом не затрагивая жёсткие диски. От таких червей можно избавиться перезапуском компьютера (и, соответственно, сбросом ОЗУ). Такие черви состоят в основном из «инфекционной» части: эксплойта (шелл-кода) и небольшой полезной нагрузки (самого тела червя), которая размещается целиком в ОЗУ. Специфика таких червей заключается в том, что они не загружаются через загрузчик, как все обычные исполняемые файлы, а значит, могут рассчитывать только на те динамические библиотеки, которые уже были загружены в память другими программами.
Также существуют черви, которые после успешного инфицирования памяти сохраняют код на жёстком диске и принимают меры для последующего запуска этого кода (например, путём прописывания соответствующих ключей в реестре Windows). От таких червей можно избавиться только при помощи антивирусного программного обеспечения или подобных инструментов. Зачастую инфекционная часть таких червей (эксплойт, шелл-код) содержит небольшую полезную нагрузку, которая загружается в ОЗУ и может «догрузить» по сети непосредственно само тело червя в виде отдельного файла. Для этого некоторые черви могут содержать в инфекционной части простой TFTP-клиент. Загружаемое таким способом тело червя (обычно отдельный исполняемый файл) теперь отвечает за дальнейшее сканирование и распространение уже с инфицированной системы по локальной сети, а также может содержать более серьёзную, полноценную полезную нагрузку, целью которой может быть, например, нанесение какого-либо вреда (к примеру, DoS-атаки).
Большинство почтовых червей распространяются как один файл. Им не нужна отдельная «инфекционная» часть, так как обычно пользователь-жертва при помощи почтового клиента или Интернет-браузера добровольно скачивает и запускает червя целиком.
Полезная нагрузка (Payload)
Зачастую черви даже безо всякой полезной нагрузки перегружают и временно выводят из строя сети только за счёт интенсивного распространения. Типичная осмысленная полезная нагрузка может заключаться в порче файлов на компьютере-жертве (в том числе, изменение веб-страниц, так называемый «deface»), также из зараженных компьютеров возможна организация ботнета для проведения сетевых атак, рассылки спама или майнинга криптовалют.
Способы защиты
По причине того, что сетевые черви для своего проникновения в систему пользователя используют уязвимости в стороннем программном обеспечении или операционной системе, использования сигнатурных антивирусных мониторов недостаточно для защиты от червей. Также, при использовании методов социальной инженерии пользователя под благовидным предлогом вынуждают запустить вредоносную программу, даже несмотря на предупреждение со стороны антивирусного программного обеспечения. Таким образом, для комплексного обеспечения защиты от современных червей, и любых других вредоносных программ, необходимо использование проактивной защиты. Рассматривается также способ защиты от сетевых червей на основе «кредитов доверия». Ряд преимуществ дает применение межсетевых экранов и подобных им утилит (например, Windows Worms Doors Cleaner)
См. также
- Хронология компьютерных вирусов и червей
- Многовекторный червь
Примечания
Ссылки
- Климентьев К. Е. Компьютерные вирусы и антивирусы: взгляд программиста. — М.: ДМК-Пресс, 2013. С. 656. ISBN 978-5-94074-885-4
- John Shoch, Jon Hupp The ‘Worm’ Programs — Early Experience with a Distributed Computation»(англ.), Communications of the ACM, March 1982 Volume 25 Number 3, pp. 172—180, ISSN 0001—0782
- Nicholas C. Weaver Warhol Worms: The Potential for Very Fast Internet Plagues
- RFC 1135 (англ.)— The Helminthiasis of the Internet
Источник: xn--h1ajim.xn--p1ai
Сетевые черви
(другое название — компьютерные черви) — это вредоносные программы, которые созданы с внутренним механизмом распространения по локальным и глобальным компьютерным сетям с некоторыми целями. Данными целями являются:
- проникновение на удаленные компьютеры с частичным или полным перехватом управления ими (скрытым от пользователя — хозяина этого компьютера);
- запуск своей копии на компьютере;
- дальнейшее распространение по всем доступным сетям, как локальным, так и глобальным.
Наверное, самым известным сетевым червем является так называемый «Червь Морриса», который был написан в 1988 году студентом Корнельского университета Р. Моррисом-младшим. Вирус попал в сеть 2 ноября 1988 года, и стремительно распространился на большое количество компьютеров, имеющих подключение к Интернет.
Типы сетевых червей
Основным признаком, по которому различаются типы червей между собой, является способ распространения червя — каким способом он передает свою копию на удаленные компьютеры.
Почтовые черви . Червь отсылает либо свою копию в виде вложения в элетронное письмо, либо ссылку на свой файл, расположенный на каком-нибудь сетевом ресурсе. В первом случае код червя активируется при открытии (запуске) зараженного вложения, во втором при открытии ссылки на зараженный файл. В обоих случаях эффект одинаков — активизируется код червя.
Черви, использующие уязвимости программного обеспечения . Червь ищет в сети компьютеры, на которых используются операционная система и приложения, содержащие критические уязвимости и посылает специально оформленный сетевой пакет или запрос, в результате чего код червя проникает на компьютер-жертву.
Черви, использующие файлообменные сети . Механизм работы данных червей достаточно прост — для внедрения червю достаточно скопировать себя в папку обмена файлами на одном из компьютеров. Всю остальную работу файлообменная сеть берет на себя — при поиске файлов в сети она сообщит удаленным пользователям о данном файле-черве и предоставит его для скачивания.
Источник: ptpit.ru