РОССИЙСКАЯ ФЕДЕРАЦИЯ
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО
ОБРАЗОВАНИЯ
«ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ»
Институт математики и компьютерных
наук
Кафедра программного обеспечения
Курсовая работа
«Компьютерные
вирусы»
Выполнил:
студент группы 144-1
Козлюк Илья Андреевич
Проверила:
старший преподаватель
Павлова Е.А.
Тюмень – 2014
Содержание:
1. История компьютерного
вируса
Основы теории самовоспроизводящихся
механизмов заложил американец венгерского
происхождения Джон фон Нейман, который в 1951 году предложил метод создания таких механизмов.
С 1961 года известны рабочие примеры таких программ.
Первыми известными собственно вирусами
являются Virus 1,2,3 и Elk Cloner для ПК Apple II, появившиеся в 1981 году. Зимой 1984 года появились первые антивирусные утилиты — CHK4BOMB и BOMBSQAD авторства Энди
Хопкинса (англ. Andy Hopkins). В начале 1985 года Ги Вонг (англ. Gee Wong) написал программу DPROTECT — первый резидентный антивирус.
Первые вирусные эпидемии относятся
к 1987—1989 годам: Zotkin.A, Kharitonov.D (более 18 тысяч
зараженных компьютеров, по данным McAfee),
Jerusalem (проявился в пятницу 13 мая 1988 года, уничтожая программы при их запуске), червь
Морриса (свыше 6200 компьютеров, большинство сетей
вышло из строя на срок до пяти суток),
DATACRIME (около 100 тысяч зараженных ПЭВМ только
в Нидерландах).
Тогда же оформились основные классы
двоичных вирусов: сетевые черви (червь Морриса, 1987), «троянские кони»
(AIDS, 1989), полиморфные вирусы (Chameleon, 1990), стелс-вирусы (Frodo, Whale, 2-я половина 1990).
С распространением сетей и Интернета файловые вирусы всё больше ориентируются на них как
на основной канал работы (ShareFun, 1997 — макровирус
MS Word, использующий MS-Mail для распространения;
Win32.HLLP.DeTroie, 1998 — семейство вирусов-шпионов; Melissa, 1999 — макровирус
и сетевой червь, побивший все рекорды
по скорости распространения). Эру расцвета
«троянских коней» открывает утилита
скрытого удаленного администрирования
BackOrifice (1998) и последовавшие за ней аналоги
(NetBus, Phase).
В конце 1990-x — начале 2000-x годов с усложнением
ПО и системного окружения, массовым переходом
на сравнительно защищенные Windows семейства NT, закреплением сетей
как основного канала обмена данными,
а также успехами антивирусных технологий
в обнаружении вирусов, построенных по
сложным алгоритмам, последние стали всё
больше заменять внедрение в файлы на
внедрение в операционную систему (необычный автозапуск, руткиты)
и подменять полиморфизм огромным количеством
видов (число известных вирусов растет
экспоненциально).
Вместе с тем, обнаружение в Windows и другом распространенном ПО многочисленных
уязвимостей открыло дорогу червям-эксплоитам. В 2004 году беспрецедентные
по масштабам эпидемии вызывают MsBlast (по
данным Microsoft — более 16 млн. систем), Sasser и Mydoom (оценочные
ущербы 500 млн. и 4 млрд. долл. соответственно).
1.1. Что же такое
компьютерный вирус?
Компью́терный ви́рус —
вид вредоносного программного обеспечения,
способного создавать копии самого себя
и внедряться в код других программ, системные
области памяти, загрузочные секторы,
а также распространять свои копии по
разнообразным каналам связи с целью нарушения
работы программно-аппаратных комплексов,
удаления файлов, приведения в негодность
структур размещения данных, блокирования
работы пользователей или же приведения
в негодность аппаратных комплексов компьютера.
Даже если автор вируса не программировал
вредоносных эффектов, вирус может приводить
к сбоям компьютера из-за ошибок, неучтённых
тонкостей взаимодействия с операционной системой и другими программами. Кроме того, вирусы
обычно занимают некоторое место на накопителях
информации и отбирают некоторые другие
ресурсы системы. Поэтому вирусы относят
к вредоносным программам.
Некомпетентные пользователи ошибочно
относят к компьютерным вирусам и другие
виды вредоносных программ — программы-шпионы и прочее. Известны десятки тысяч компьютерных
вирусов, которые распространяются через
Интернет по всему миру.
Создание и распространение вредоносных
программ (в том числе вирусов) преследуется
в России согласно Уголовному кодексу РФ (глава 28, статья 273). Согласно доктрине
информационной безопасности РФ, в России
должен проводиться правовой ликбез в
школах и вузах при обучении информатике
и компьютерной грамотности по вопросам защиты информации в ЭВМ,
борьбы с компьютерными вирусами и обеспечению информационной безопасности
в сетях ЭВМ.
1.2. Распространение
компьютерных вирусов
1.2.1. Механизм распространения
Вирусы распространяются, копируя свое
тело и обеспечивая его последующее исполнение:
внедряя себя в исполняемый код других
программ, заменяя собой другие программы,
прописываясь в автозапуск и другое. Вирусом
или его носителем могут быть не только
программы, содержащие машинный код, но и любая информация,
содержащая автоматически исполняемые
команды — например, пакетные файлы и документы Microsoft Word и Excel, содержащие макросы. Кроме того, для проникновения на компьютер
вирус может использовать уязвимости в популярном программном обеспечении (например, Adobe Flash, Internet Explorer, Outlook), для чего распространители внедряют
его в обычные данные (картинки, тексты
и т. д.) вместе с эксплоитом, использующим уязвимость.
1.2.2. Каналы распространения
компьютерных вирусов
- Дискеты - Самый распространённый канал заражения
в 1980—1990-е годы. Сейчас практически отсутствует
из-за появления более распространённых
и эффективных каналов и отсутствия флоппи-дисководов
на многих современных компьютерах.
- Флеш-накопители
(флешки) - В настоящее время USB-флешки заменяют дискеты и повторяют их судьбу —
большое количество вирусов распространяется
через съёмные накопители, включая цифровые
фотоаппараты, цифровые видеокамеры, портативные, а с 2000-х годов всё большую роль играют мобильные телефоны, особенно смартфоны (появились мобильные вирусы). Использование этого
канала ранее было преимущественно обусловлено
возможностью создания на накопителе
специального файла autorun.inf, в котором можно указать программу, запускаемую Проводником Windows при открытии такого накопителя. В Windows 7 возможность автозапуска файлов с переносных
носителей была отключена.
- Электронная
почта - Обычно вирусы в письмах электронной почты маскируются под безобидные вложения: картинки, документы, музыку, ссылки на сайты. В некоторых письмах могут содержаться действительно только ссылки, то есть в самих письмах может и не быть вредоносного кода, но если открыть такую ссылку, то можно попасть на специально созданный веб-сайт, содержащий вирусный код. Многие почтовые вирусы, попав на компьютер пользователя, затем используют адресную книгу из установленных почтовых клиентов типа Outlook для рассылки самого себя дальше.
- Системы обмена
мгновенными сообщениями - Здесь также распространена рассылка ссылок на якобы фото, музыку либо программы,
в действительности являющиеся вирусами,
по ICQ и через другие программы мгновенного обмена сообщениями.
- Веб-страницы - Возможно также заражение через страницы Интернета ввиду наличия на страницах всемирной
паутины различного «активного» содержимого: скриптов, ActiveX-компонент. В этом случае используются уязвимости программного обеспечения, установленного
на компьютере пользователя, либо уязвимости
в ПО владельца сайта (что опаснее, так
как заражению подвергаются добропорядочные
сайты с большим потоком посетителей),
а ничего не подозревающие пользователи,
зайдя на такой сайт, рискуют заразить
свой компьютер.
1.2.3. Виды компьютерных
вирусов
- Червь (Worm) - Это программа, которая тиражируется
на жестком диске, в памяти компьютера
и распространяется по сети. Особенностью
червей, отличающих их от других вирусов,
является то, что они не несут в себе никакой
вредоносной нагрузки, кроме саморазмножения,
целью которого является замусоривание
памяти, и как следствие, затормаживание
работы операционной системы.
- Троян или Троянский
конь (Trojans) - Это программа, которая находится внутри
другой, как правило, абсолютно безобидной
программы, при запуске которой в систему
инсталлируются программа, написанная
только с одной целью - нанести ущерб целевому
компьютеру путем выполнения несанкционированных
пользователем действий: кражи, порчи
или удаления конфиденциальных данных,
нарушения работоспособности компьютера
или использования его ресурсов в неблаговидных
целях. Таким образом, троянские программы являются
одним из самых опасных видов вредоносного
программного обеспечения, поскольку
в них заложена возможность самых разнообразных
злоумышленных действий.
- Зомби вирус (Zombie) - Это программа-вирус, которая после проникновения
в компьютер, подключенный к сети Интернет
управляется извне и используется злоумышленниками
для организации атак на другие компьютеры.
Зараженные таким образом компьютеры-зомби
могут объединяться в сети, через которые
рассылается огромное количество нежелательных
сообщений электронной почты, а также
распространяются вирусы и другие вредоносные
программы.
- Шпионская программа
(Spyware) - Это программный продукт, установленный
или проникший на компьютер без согласия
его владельца, с целью получения практически полного
доступа к компьютеру, сбора и отслеживания
личной или конфиденциальной информации.
Эти программы, как правило, проникают
на компьютер при помощи сетевых червей,
троянских программ или под видом рекламы
(adware). Одной
из разновидностей шпионских программ
являются фишинг рассылки.
- Фишинг (Phishing) - Это почтовая рассылка имеющая своей целью
получение конфиденциальной финансовой
информации. Такое письмо, как правило,
содержит ссылку на сайт, являющейся точной копией интернет-банка
или другого финансового учреждения. Пользователь,
обычно, не догадывается, что находится
на фальшивом сайте и спокойно выдает
злоумышленникам информацию о своих счетах,
кредитных карточках, паролях и т. д.
- Фарминг -
Это замаскированная форма фишинга, заключающаяся
в том, что при попытке зайти на официальный
сайт интернет банка или коммерческой
организации, пользователь автоматически
перенаправляется на ложный сайт, который
очень трудно отличить от официального
сайта. Как и в случае фишинга основной
целью злоумышленников, использующих
фарминг, является завладение личной финансовой
информацией пользователя. Отличие заключается
только в том, что вместо электронной почты
мошенники используют более изощренные
методы направления пользователя на фальшивый
сайт.
- Вредоносная программа (Malware) - Программное обеспечение, разработанное
специально для нанесения вреда компьютеру.
Чаще всего, такое вредительство осуществляется
несанкционированным проникновением
в компьютер пользователя, целью которого
может быть воровство личных данных, уничтожение
файлов, внесение изменений в регистры,
нарушающие нормальную работу операционной
системы и многие другие преступные действия.
Термин
"вредоносная программа" является
наиболее общим понятием, которое может
применяться к любым вирусам, червям, троянам,
шпионским программам и другим компьютерным
вредителям.
1.3. Борьба с
компьютерными вирусами
1.3.1. Методы борьбы
с компьютерными вирусами
Способы противодействия компьютерным
вирусам можно разделить на несколько
групп: профилактика вирусного заражения
и уменьшение предполагаемого ущерба
от такого заражения; методика использования
антивирусных программ, в том числе обезвреживание
и удаление известного вируса; способы
обнаружения и удаления неизвестного
вируса.
Наиболее эффективны в борьбе
с компьютерными вирусами антивирусные
программы. Однако сразу хотелось бы отметить,
что не существует антивирусов, гарантирующих
стопроцентную защиту от вирусов, и заявления
о существовании таких систем можно расценить
как либо недобросовестную рекламу, либо
непрофессионализм. Таких систем не существует,
поскольку на любой алгоритм антивируса
всегда можно предложить контр-алгоритм
вируса, невидимого для этого антивируса
(обратное, к счастью, тоже верно: на любой
алгоритм вируса всегда можно создать
антивирус). Более того, невозможность
существования абсолютного антивируса
была доказана математически на основе
теории конечных автоматов, автор доказательства
— Фред Коэн.
Следует также обратить внимание
на несколько терминов, применяемых при
обсуждении антивирусных программ:
- Ложное срабатывание (False positive) - Детектирование вируса в незараженном объекте (файле, секторе или системной памяти). Обратный термин — «False negative», т.е. недетектирование вируса в зараженном объекте.
- Сканирование по запросу («on-demand») - Поиск вирусов по запросу
пользователя. В этом режиме антивирусная
программа неактивна до тех пор, пока не
будет вызвана пользователем из командной
строки, командного файла или программы-расписания
(system scheduler).
- Сканирование на-лету («real-time», «on-the-fly») - Постоянная проверка на
вирусы объектов, к которым происходит
обращение (запуск, открытие, создание
и т.п.). В этом режиме антивирус постоянно
активен, он присутствует в памяти «резидентно»
и проверяет объекты без запроса пользователя.
1.3.2. Классификация
антивирусов
1.3.2.1. Сканеры
Принцип работы антивирусных
сканеров основан на проверке файлов,
секторов и системной памяти и поиске
в них известных и новых (неизвестных сканеру)
вирусов. Для поиска известных вирусов
используются так называемые «маски».
Маской вируса является некоторая постоянная
последовательность кода, специфичная
для этого конкретного вируса. Если вирус
не содержит постоянной маски, или длина
этой маски недостаточно велика, то используются
другие методы. Примером такого метода
являетcя алгоритмический язык, описывающий
все возможные варианты кода, которые
могут встретиться при заражении подобного
типа вирусом. Такой подход используется
некоторыми антивирусами для детектирования
полиморфик-вирусов.
Во многих сканерах используются
также алгоритмы «эвристического сканирования»,
т.е. анализ последовательности команд
в проверяемом объекте, набор некоторой
статистики и принятие решения («возможно
заражен» или «не заражен») для каждого
проверяемого объекта. Поскольку эвристическое
сканирование является во многом вероятностным
методом поиска вирусов, то на него распространяются
многие законы теории вероятностей. Например,
чем выше процент обнаруживаемых вирусов,
тем больше количество ложных срабатываний.
Сканеры также можно разделить
на две категории — «универсальные» и
«специализированные». Универсальные
сканеры рассчитаны на поисх и обезвреживание
всех типов вирусов вне зависимости от
операционной системы, на работу в которой
рассчитан сканер. Специализированные
сканеры предназначены для обезвреживания
ограниченного числа вирусов или только
одного их класса, например макро-вирусов.
Специализированные сканеры, рассчитанные
только на макро-вирусы, часто оказываются
наиболее удобным и надежным решением
для защиты систем документооборота в
средах MS Word и MS Excel.
Сканеры также делятся на «резидентные»
(мониторы), производящие сканирование
«на-лету», и «нерезидентные», обеспечивающие
проверку системы только по запросу. Как
правило, «резидентные» сканеры обеспечивают
более надежную защиту системы, поскольку
они немедленно реагируют на появление
вируса, в то время как «нерезидентный»
сканер способен опознать вирус только
во время своего очередного запуска.
К достоинствам сканеров всех
типов относится их универсальность, к
недостаткам — размеры антивирусных баз,
которые сканерам приходится «таскать
за собой», и относительно небольшую скорость
поиска вирусов.
1.3.2.2. CRC - Сканеры
Принцип работы CRC-сканеров
основан на подсчете CRC-сумм (контрольных
сумм) для присутствующих на диске файлов/системных
секторов. Эти CRC-суммы затем сохраняются
в базе данных антивируса, как, впрочем,
и некоторая другая информация: длины
файлов, даты их последней модификации
и т.д. При последующем запуске CRC-сканеры
сверяют данные, содержащиеся в базе данных,
с реально подсчитанными значениями. Если
информация о файле, записанная в базе
данных, не совпадает с реальными значениями,
то CRC-сканеры сигнализируют о том, что
файл был изменен или заражен вирусом.
CRC-сканеры, использующие
анти-стелс алгоритмы, являются довольно
сильным оружием против вирусов: практически
100% вирусов оказываются обнаруженными
почти сразу после их появления на компьютере.
Однако у этого типа антивирусов есть
врожденный недостаток, который заметно
снижает их эффективность. Этот недостаток
состоит в том, что CRC-сканеры не способны
поймать вирус в момент его появления
в системе, а делают это лишь через некоторое
время, уже после того, как вирус разошелся
по компьютеру. CRC-сканеры не могут определить
вирус в новых файлах (в электронной почте,
на дискетах, в файлах, восстанавливаемых
из backup или при распаковке файлов из архива),
поскольку в их базах данных отсутствует
информация об этих файлах. Более того,
периодически появляются вирусы, которые
используют эту «слабость» CRC-сканеров,
заражают только вновь создаваемые файлы
и остаются, таким образом, невидимыми
для них.