В последнее время наиболее распространенными типами вредоносных программ, портящими компьютерные данные, стали черви. Далее по распространенности следуют вирусы и троянские программы. Некоторые вредоносные программы совмещают в себе характеристики двух или даже трех из перечисленных выше классов.
Основными источниками распространения вредоносных программ является электронная почта и интернет, хотя заражение может также произойти через дискету или CD-диск. Это обстоятельство предопределяет смещение акцентов антивирусной защиты с простых регулярных проверок компьютера на присутствие вирусов на более сложную задачу постоянной защиты компьютера от возможного заражения.
Антивирусная программа (антивирус) предназначена для защиты компьютеров от большинства вирусов, червей и «троянских коней», которые могут удалить файлы, получить доступ к личным данным либо использовать зараженную систему как средство атаки на другие компьютеры. Антивирусная программа может быть предварительно установлена на компьютер, а может быть приобретена и установлена самостоятельно.
Современные антивирусные программы могут обнаруживать десятки тысяч вирусов.
К сожалению, конкуренция между антивирусными компаниями привела к тому, что развитие идёт в сторону увеличения количества обнаруживаемых вирусов (прежде всего для рекламы), а не в сторону улучшения их детектирования (идеал – 100%-ое детектирование) и алгоритмов лечения заражённых файлов.
Антивирусное программное обеспечение состоит из компьютерных программ, которые пытаются обнаружить, предотвратить размножение и удалить компьютерные вирусы и другие вредоносные программы. Антивирусное программное обеспечение обычно использует два отличных друг от друга метода для выполнения своих задач:
1. Просмотр (сканирование) файлов для поиска известных вирусов, соответствующих определению в словаре вирусов.
Это метод, когда антивирусная программа, просматривая файл, обращается к словарю с известными вирусами, который составлен авторами программы-антивируса. В случае соответствия, какого либо участка кода просматриваемой программы известному коду вируса в словаре, программа антивирус может заняться выполнением одного из следующих действий:
Удалить инфицированный файл.
Отправить файл в карантин (то есть сделать его недоступным для выполнения, с целью недопущения дальнейшего распространения вируса).
Попытаться восстановить файл, удалив сам вирус из тела файла.
Для достижения достаточно продолжительного успеха, при использовании этого метода необходимо периодически пополнять словарь известных вирусов новыми определениями (в основном в онлайновом режиме).
Антивирусные программы, созданные на основе метода соответствия определению вирусов в словаре, обычно просматривают файлы тогда, когда компьютерная система создаёт, открывает, закрывает или посылает файлы по электронной почте. Таким образом, вирусы можно обнаружить сразу же после занесения их в компьютер и до того, как они смогут причинить какой-либо вред. Надо отметить, что системный администратор может составить график для антивирусной программы, согласно которому могут просматриваться (сканироваться) все файлы на жёстком диске.
2. Обнаружение подозрительного поведения любой из программ, похожего на поведение заражённой программы.
Антивирусы, использующие метод обнаружения подозрительного поведения программ не пытаются идентифицировать известные вирусы, вместо этого они прослеживают поведение всех программ. Если программа пытается записать какие-то данные в исполняемый файл (exe-файл), программа-антивирус может пометить этот файл, предупредить пользователя и спросить что следует сделать.
В отличие от метода соответствия определению вируса в словаре, метод подозрительного поведения даёт защиту от совершенно новых вирусов, которых ещё нет ни в одном словаре вирусов. Однако, программы, построенные на этом методе, выдают также большое количество ошибочных предупреждений, что делает пользователя мало восприимчивым ко всем предупреждениям. Если пользователь нажимает мышью на окно «Принять» («Accept») в каждом случае появления такого предупреждения, антивирусная программа не приносит никакой пользы. В последнее время эта проблема ещё более ухудшилась, так как стало появляться всё больше невредоносных программ, модифицирующих другие exe-файлы, несмотря на существующую проблему ошибочных предупреждений. Таким образом, в современном антивирусном программном обеспечении этот метод используется всё меньше и меньше.
3. Другие методы обнаружения вирусов
Некоторые программы-антивирусы пытаются имитировать начало выполнения кода каждой новой вызываемой на исполнение программы, перед тем как передать ей управление. Если программа использует самоизменяющийся код или проявляет себя как вирус (то есть немедленно начинает искать другие exe-файлы, например), такая программа будет считаться вредоносной, способной заразить другие файлы. Однако этот метод тоже изобилует большим количеством ошибочных предупреждений.
Ещё один метод определения вирусов включает в себя использование «песочницы». Песочница имитирует операционную систему и запускает исполняемый файл в этой имитируемой системе. После исполнения программы, антивирусное программное обеспечение анализирует содержимое песочницы на присутствие каких либо изменений, которые можно квалифицировать как вирус. Из-за того, что быстродействие системы снижается и требуется достаточно продолжительное время для выполнения программы, антивирусные программы, построенные по этому методу, обычно используются только для сканирования по запросу пользователя. Следует отметить, что эффективность данных программ намного выше, чем у всех остальных, но и стоимость их тоже выше. Из-за большого времени таких выполнения программ, они не найдут широкого распространения среди рядовых пользователей. Несомненно, эти программы представляют интерес для профессионалов, занимающихся вопросами компьютерной безопасности и восстановлением данных после несанкционированного доступа в компьютер пользователя или атак на сервер.
3. Электронная почта Интернет
E-mail (Electronic mail) – электронная почта – электронный аналог обычной почты. Стандартный сервис Internet, реализующий аналог обычной почты; предоставляет полный спектр возможностей, доступных при пользовании обычной почтой, а также множество дополнительных удобств. E-mail превосходит обычную почту по скорости на несколько порядков. Во всех отношениях удобнее и предпочтительнее традиционной. Единственный ее недостаток – слабая конфиденциальность, что, впрочем, также преодолимо благодаря возможности шифровать сообщения.
С помощью электронной почты можно посылать сообщения, получать их в свой электронный почтовый ящик, отвечать на письма корреспондентов автоматически, используя их адреса, исходя из их писем, рассылать копии писем сразу нескольким получателям, переправлять полученное письмо по другому адресу, использовать вместо адресов (числовых или доменных имен) логические имена, создавать несколько подразделов почтового ящика для разного рода корреспонденции, включать в письма текстовые файлы, пользоваться системой «отражателей почты» для ведения дискуссий с группой корреспондентов и т.д. Из Internet можно посылать почту в сопредельные сети, если известен адрес соответствующего шлюза, формат его обращений и адрес в той сети.
Для каждого абонента на одном из сетевых компьютеров выделяется область памяти – электронный почтовый ящик. Доступ к этой области памяти осуществляется по адресу, который сообщается абоненту, и паролю, который абонент придумывает сам. Пароль известен только абоненту и сетевому компьютеру. Став абонентом компьютерной сети и получив адрес своего почтового ящика, пользователь может сообщить его друзьям, знакомым. Каждый абонент электронной почты может через свой компьютер и модем послать письмо любому другому абоненту, указав в послании его почтовый адрес.
Все письма, поступающие на некоторый почтовый адрес, записываются в выделенную для него область памяти сетевого компьютера. Сетевой компьютер (или сервер), содержащий почтовые ящики абонентов, носит название хост-компьютера (от host – хозяин). Абоненты периодически скачивают с сервера поступившие для них почтовые сообщения.
E-mail дает возможность проводить телеконференции и дискуссии. Для этого используются, установленные на некоторых узловых рабочих машинах, mail reflector-ы. (списки рассылки). Туда отсылается сообщение с указанием подписать на такой-то рефлектор (дискуссию, конференцию, и т.д.). После этого начинают приходить копии сообщений, которые туда посылают участники обсуждения. Рефлектор почты просто по получении электронных писем рассылает их копии всем подписчикам.
Пересылать по e-mail можно и двоичные файлы, не только текстовые. В UNIX, например, для этого используется программы UUENCODE и UUDECODE. С введением стандарта MIME («Multipurpose Internet Mail Extensions» – Многоцелевые расширения почтового стандарта Internet) возможности электронной почты значительно расширены – в одном сообщении можно передавать множество бинарных и текстовых данных, даже с HTML разметкой.
Скорость доставки сообщений электронной почты сильно зависит от того, каким образом она передается. Путь электронного письма между двумя машинами, непосредственно подключенными к Интернет, занимает секунды, и при этом вероятность потери или подмены письма минимальна. С другой стороны, если для передачи электронных писем используются технологии FTN (последовательной передачи файлов многими компьютерами по цепочке), и письмо посылается в какую-нибудь экзотическую сеть, то письмо, во-первых, будет идти долго – дни и даже недели, во-вторых, будет иметь большие шансы просто потеряться при обрыве связи во время передачи по цепочке, в-третьих, его могут легко подменить где-то в пути следования.