Основные понятия в области информационной безопасности
Вредоносное программное обеспечение
Вредоносное программное обеспечение и, прежде всего, компьютерные вирусы представляют очень серьезную опасность для информационных систем. Недооценка этой опасности может иметь серьезные последствия для информации пользователей. В то же время чрезмерное преувеличение угрозы вирусов негативно влияет на использование всех возможностей компьютерной сети. Знание механизмов действия вредоносного программного обеспечения (ПО), методов и средств борьбы с ними позволяет эффективно организовать противодействие вирусам, свести к минимуму вероятность заражения и нанесения вреда машинам и информации.
О наличии вредоносного ПО в системе пользователь может судить по следующим признакам:
- появление сообщений антивирусных средств о заражении или о предполагаемом заражении, "самопроизвольное" отключение антивирусных программных средств;
- явные проявления присутствия вируса, такие как: сообщения, выдаваемые на монитор или принтер, звуковые эффекты, неожиданный запуск программ, уничтожение файлов и другие аналогичные действия, однозначно указывающие на наличие вируса в системе;
- неявные проявления заражения, которые могут быть вызваны и другими причинами, например, сбоями или отказами аппаратных и программных средств компьютерной системы – увеличение времени обработки той или иной информации (т.н. "задумчивость" ПК), необоснованное уменьшение свободного объёма на дисковых носителях, отказ выполнять программы-сканеры вирусной активности, "зависания" системы и т.п.;
- рассылка писем, которые пользователем не отправлялись, по электронной почте.
Вредоносная программа (Malware, malicious software – злонамеренное программное обеспечение) – это любое программное обеспечение, предназначенное для осуществления несанкционированного доступа и/или воздействия на информацию или ресурсы информационной системы в обход существующих правил разграничения доступа.
Во многом "вредность" или "полезность" программного обеспечения определяется самим пользователем или способом его применения. Общепризнанной классификации вредоносного ПО пока не существует. Первые попытки упорядочить процесс классификации были предприняты еще в начале 90-х годов прошлого века в рамках альянса антивирусных специалистов CARO (Computer AntiVirus Researcher's Organization). Альянсом был создан документ "CARO malware naming scheme", который на какой-то период стал стандартом для индустрии.
Но со временем стремительное развитие вредоносных программ, появление новых платформ и рост числа антивирусных компаний привели к тому, что эта схема фактически перестала использоваться. Ещё более важной причиной отказа от неё стало то, что технологии детектирования систем антивирусных компаний отличаются друг от друга и, как следствие, невозможно унифицировать результаты проверки разными антивирусными программами. Периодически предпринимаются попытки выработать новую общую классификацию детектируемых антивирусными программами объектов. Последним значительным проектом подобного рода было создание стандарта CME (Common Malware Enumeration), суть которого заключается в присвоении одинаковым детектируемым объектам единого уникального идентификатора.
Рассмотрим классификацию, предложенную компанией "Лаборатория Касперского" и размещенную в Вирусной энциклопедии Лаборатории Касперского. Специалисты этой компании предлагают разделять вредоносное ПО на вредоносные программы (Malware) и потенциально нежелательные программы (PUPs, Potentially Unwanted Programs). В свою очередь, вредоносные программы включают следующие категории: компьютерные вирусы и черви; троянские программы; подозрительные упаковщики и вредоносные утилиты.
Компьютерные вирусы и черви
Термином "компьютерный вирус" сегодня уже никого не удивишь. Данное определение появилось (в середине 80-х годов) благодаря тому, что вредительские программы обладают признаками, присущими биологическим вирусам – незаметное и быстрое распространение, размножение, внедрение в объекты и заражение их, и, кроме того, негативное воздействие на систему. Вместе с термином "вирус" при работе в информационных системах используются и другие термины: "заражение", "среда обитания", "профилактика" и др.
Компьютерные вирусы – это небольшие исполняемые или интерпретируемые программы, обладающие свойством несанкционированного пользователем распространения и самовоспроизведения в компьютерах или компьютерных сетях. Полученные копии также обладают этой возможностью. Вирус может быть запрограммирован на изменение или уничтожение программного обеспечения или данных, хранящихся на объектах и устройствах компьютерной сети. В процессе распространения вирусы могут себя модифицировать.
Черви считаются подклассом вирусов, но обладают характерными особенностями. Червь размножается (воспроизводит себя), не заражая другие файлы. Он внедряется один раз на конкретный компьютер и ищет способы распространиться далее на другие компьютеры. Червь – это отдельный файл, в то время как вирус – это код, который внедряется в существующие файлы.
К категории вредоносных программ "компьютерные вирусы и черви" относятся:
-
Virus (вирус) – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению по локальным ресурсам компьютера.
В отличие от червей, вирусы не используют сетевых сервисов для своего распространения и проникновения на другие компьютеры. Копия вируса попадает на удалённые компьютеры только в том случае, если заражённый объект по каким-либо не зависящим от функционала вируса причинам оказывается активизированным на другом компьютере, например:
- при заражении доступных дисков вирус проник в файлы, расположенные на сетевом ресурсе;
- вирус скопировал себя на съёмный носитель или заразил файлы на нем;
- пользователь отослал электронное письмо с зараженным вложением.
-
Worm (червь) – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению в компьютерных сетях через сетевые ресурсы. Для активации Worm пользователю необходимо запустить его (в отличие от Net-Worm).
Черви этого типа ищут в сети удаленные компьютеры и копируют себя в каталоги, открытые на чтение и запись (если таковые обнаружены). При этом черви данного типа перебирают доступные сетевые каталоги, используя функции операционной системы, и случайным образом ищут компьютеры в глобальной сети, подключаются к ним и пытаются открыть их диски на полный доступ. Также к данному типу червей относятся черви, которые по тем или иным причинам не обладают ни одним из других поведений (например, "мобильные" черви).
-
Net-Worm (сетевой червь) – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению в компьютерных сетях. Отличительной особенностью данного типа червей является отсутствие необходимости в пользователе как в звене в цепочке распространения (т.е. непосредственно для активации вредоносной программы).
Зачастую при распространении такой червь ищет в сети компьютеры, на которых используется программное обеспечение, содержащее критические уязвимости. Для заражения уязвимых компьютеров червь посылает специально сформированный сетевой пакет (эксплойт), в результате чего код (или часть кода) червя проникает на компьютер-жертву и активируется. Если сетевой пакет содержит только часть кода червя, то после проникновения в уязвимый компьютер он скачивает основной файл червя и запускает его на исполнение. Можно встретить сетевых червей данного типа, использующих сразу несколько эксплойтов для своего распространения, что увеличивает скорость нахождения ими компьютера-жертвы.
-
Email-Worm (почтовый червь) – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению по каналам электронной почты. В процессе размножения червь отсылает либо свою копию в виде вложения в электронное письмо, либо ссылку на свой файл, расположенный на каком-либо сетевом ресурсе (например, указатель URL на зараженный файл, расположенный на взломанном или хакерском Web-сайте).
В первом случае код червя активизируется при открытии (запуске) заражённого вложения, во втором – при открытии ссылки на заражённый файл. В обоих случаях эффект одинаков – активизируется код червя.
-
P2P-Worm – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению по каналам файлообменных пиринговых сетей (например, Kazaa, Grokster, eDonkey, FastTrack, Gnutella и др.).
Механизм работы большинства подобных червей достаточно прост – для внедрения в P2P-сеть червю достаточно скопировать себя в каталог обмена файлами, который обычно расположен на локальной машине. Всю остальную работу по распространению вируса P2P-сеть берет на себя – при поиске файлов в сети она сообщит удаленным пользователям о данном файле и предоставит весь необходимый сервис для скачивания файла с зараженного компьютера.
-
IM-Worm – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению по каналам систем мгновенного обмена сообщениями (например, ICQ, MSN Messenger, AOL Instant Messenger, Yahoo Pager, Skype и др.).
Для этих целей черви, как правило, рассылают на обнаруженные контакты (из контакт-листа) сообщения, содержащие URL на файл с телом червя, расположенный на каком-либо сетевом ресурсе. Данный прием практически полностью повторяет аналогичный способ рассылки, использующийся почтовыми червями.
-
IRC-Worm – вредоносная программа, обладающая способностью к несанкционированному пользователем саморазмножению через Интернет-чат (Internet Relay Chats).
У этого типа червей существует два способа распространения по IRC-каналам, напоминающие способы распространения почтовых червей. Первый способ заключается в отсылке URL на копию червя. Второй способ – отсылка зараженного файла какому-либо пользователю IRC-канала. При этом атакуемый пользователь должен подтвердить прием файла, затем сохранить его на диск и открыть (запустить на выполнение).
Серьезную опасность представляют поддельные антивирусы, размещенные на специально подготовленных сайтах и которые злоумышленники предлагают загрузить для "лечения" компьютера от вирусов. Как правило, сами эти сайты не опасны, но загружаемые оттуда программы, в том числе лже-антивирусы, содержат вредоносные коды сетевых червей или троянских программ.
Троянские программы
Эти вредоносные программы внешне выглядят как легальный программный продукт, но при запуске осуществляют несанкционированные пользователем действия, направленные на уничтожение, блокирование, модификацию или копирование информации, нарушение работы компьютеров или компьютерных сетей. В отличие от вирусов и червей, представители данной категории не имеют способности создавать свои копии, обладающие возможностью дальнейшего самовоспроизведения.
К данной категории вредоносных программ относятся:
-
Backdoor (бэкдор) – вредоносная программа, предназначенная для скрытого удалённого управления злоумышленником пораженного компьютера. По своей функциональности бэкдоры во многом напоминают различные системы администрирования, разрабатываемые и распространяемые фирмами-производителями программных продуктов. Эти вредоносные программы позволяют делать с компьютером всё, что в них заложил автор: принимать или отсылать файлы, запускать и уничтожать их, выводить сообщения, стирать информацию, перезагружать компьютер и т.д.
Представители данного типа вредоносных программ очень часто используются для объединения компьютеров-жертв в так называемые ботнеты, централизованно управляемые злоумышленниками в злонамеренных целях. Botnet (ботнет) – это компьютерная сеть, состоящая из некоторого количества хостов, с запущенными ботами – автономным программным обеспечением. Чаще всего бот в составе ботнета является программой, скрытно устанавливаемой на компьютере жертвы и позволяющей злоумышленнику выполнять некие действия с использованием ресурсов заражённого компьютера.
Отдельно следует отметить группу бэкдоров, способных распространяться по сети и внедряться в другие компьютеры, как это делают сетевые черви. Отличает такие бэкдоры от червей то, что они распространяются по сети не самопроизвольно (как сетевые черви), а только по специальной команде "хозяина", управляющего данной копией троянской программы.
-
Exploit (эксплойт) – программы, в которых содержатся данные или исполняемый код, позволяющие использовать одну или несколько уязвимостей в программном обеспечении на локальном или удаленном компьютере с заведомо вредоносной целью.
Обычно эксплойты используются злоумышленниками для проникновения на компьютер-жертву с целью последующего внедрения туда вредоносного кода (например, заражение вредоносной программой всех посетителей взломанного Web-сайта). Также эксплойты интенсивно используются программами типа Net-Worm для проникновения на компьютер-жертву без участия пользователя.
- Rootkit – программа, предназначенная для сокрытия в системе определенных объектов либо активности. Сокрытию, как правило, подвергаются ключи реестра (например, отвечающие за автозапуск вредоносных объектов), файлы, процессы в памяти зараженного компьютера, вредоносная сетевая активность. Сам по себе Rootkit ничего вредоносного не делает, но данный тип программ в подавляющем большинстве случаев используется вредоносными программами для увеличения собственного времени жизни в пораженных системах в силу затрудненного обнаружения.
- Trojan – вредоносная программа, предназначенная для осуществления несанкционированных пользователем действий, влекущих уничтожение, блокирование, модификацию или копирование информации, нарушение работы компьютеров или компьютерных сетей, и при этом не попадающая ни под одно из других троянских поведений.
К Trojan также относятся "многоцелевые" троянские программы, т.е. программы, способные совершать сразу несколько несанкционированных пользователем действий, присущих одновременно нескольким другим поведениям троянских программ, что не позволяет однозначно отнести их к тому или иному поведению.
Существует большое разнообразие троянских программ выполняющих те или иные действия и отличающихся друг от друга целями и способами воздействия на "жертву". Рассмотрим некоторые типы троянских программ:
- Trojan-Banker – предназначена для кражи пользовательской информации, относящейся к банковским системам, системам электронных денег и пластиковых карт.
- Trojan-Dropper – предназначена для несанкционированной пользователем скрытой инсталляции на компьютер-жертву вредоносных программ, содержащихся в теле этого типа троянцев.
- Trojan-Proxy – предназначена для осуществления злоумышленником несанкционированного пользователем анонимного доступа к различным Интернет-ресурсам через компьютер-жертву.
- Trojan-Mailfinder – предназначена для несанкционированного пользователем сбора адресов электронной почты на компьютере с последующей передачей их злоумышленнику.
- Trojan-Clicker – предназначена для несанкционированного пользователем обращения к Интернет-ресурсам (обычно, к Web-страницам).
- Trojan-GameThief – предназначена для кражи пользовательской информации, относящейся к сетевым играм. Найденная информация передается злоумышленнику.
- Trojan-Ransom – предназначена для несанкционированной пользователем модификации данных на компьютере-жертве таким образом, чтобы сделать невозможным работу с ними, либо блокировать нормальную работу компьютера. После того как данные взяты злоумышленником под контроль, пользователю выдвигается требование выкупа.
- Trojan-PSW – предназначена для кражи пользовательских аккаунтов (логин и пароль) с пораженных компьютеров. Название PSW произошло от Password-Stealing-Ware.
- Trojan-DDoS – предназначена для проведения несанкционированной пользователем DoS-атаки с пораженного компьютера на компьютер-жертву по заранее определенному адресу.
- Trojan-IM – предназначена для кражи пользовательских аккаунтов (логин и пароль) от Интернет-пейджеров (например, ICQ, MSN Messenger, AOL Instant Messenger, Yahoo Pager, Skype и др.).
- Trojan-SMS – предназначена для несанкционированной пользователем отсылки SMS-сообщений с пораженных мобильных устройств на дорогостоящие платные номера, которые "жестко" записаны в теле вредоносной программы.
- Trojan-ArcBomb – эти троянцы представляют собой архивы, специально сформированные таким образом, чтобы вызывать нештатное поведение архиваторов при попытке разархивировать данные – зависание или существенное замедление работы компьютера или заполнение диска большим количеством "пустых" данных. Особенно опасны "архивные бомбы" для файловых и почтовых серверов, если на сервере используется какая-либо система автоматической обработки входящей информации – архивная бомба может просто остановить работу сервера.
- Trojan-Downloader – предназначена для несанкционированной пользователем загрузки и установки на компьютер-жертву новых версий вредоносных программ, установки троянцев или рекламных систем. Загруженные из Интернета программы либо запускаются на выполнение, либо регистрируются троянцем на автозагрузку в соответствии с возможностями операционной системы.
- Trojan-Notifier – предназначена для несанкционированного пользователем сообщения своему "хозяину" о том, что заражённый компьютер сейчас находится "на связи". При этом на адрес злоумышленника отправляется информация о компьютере, например, IP-адрес компьютера, номер открытого порта, адрес электронной почты и т.п.
- Trojan-Spy – предназначена для ведения электронного шпионажа за пользователем (вводимая с клавиатуры информация, снимки экрана, список активных приложений и т.д.). Найденная информация передается злоумышленнику.
Подозрительные упаковщики
Вредоносные программы часто сжимаются специфичными способами упаковки, включая использование многократных упаковщиков и совмещая упаковку с шифрованием содержимого файла для того, чтобы при распаковке усложнить анализ файла эвристическими методами.
К данному подклассу вредоносных программ относятся:
- MultiPacked – файловые объекты, многократно упакованные различными программами упаковки. Антивирус при детектировании такого объекта обнаруживает исполняемый файл, упакованный одновременно тремя и более упаковщиками.
- SuspiciousPacker – файловые объекты, сжатые специальными программами-упаковщиками, которые созданы для защиты вредоносного кода от детектирования антивирусным ПО.
- RarePacker – файловые объекты, сжатые различными редко встречающимися упаковщиками, например, реализовывающими какую-либо конкретную идею.
Вредоносные утилиты
Вредоносные программы, разработанные для автоматизации создания других вирусов, червей или троянских программ, организации DoS-атак на удаленные сервера, взлома компьютеров и т.п. В отличие от вирусов, червей и троянских программ, представители данной категории не представляют угрозы непосредственно компьютеру, на котором исполняются. Основным признаком, по которому различают вредоносные утилиты, являются совершаемые ими действия.
К данной категории вредоносных программ относятся:
- Constructor – программы, предназначенные для изготовления новых компьютерных вирусов, червей и троянских программ.
- HackTool – программы, используемые злоумышленниками при организации атак на локальный или удаленный компьютер (например, несанкционированное пользователем внесение нелегального пользователя в список разрешенных посетителей системы; очистка системных журналов с целью сокрытия следов присутствия в системе; снифферы с выраженным вредоносным функционалом и т.д.).
- Spoofer – программы, позволяющие отправлять сообщения и сетевые запросы с поддельным адресом отправителя.
- DoS – программы, предназначенные для проведения DoS-атак на компьютер-жертву.
- Hoax – программы, которые не причиняют компьютеру какого-либо прямого вреда, однако выводят сообщения о том, что такой вред уже причинен, либо будет причинен при каких-либо условиях, либо предупреждают пользователя о несуществующей опасности.
- irToolV – программы, позволяющие злоумышленнику модифицировать другие вредоносные программы таким образом, чтобы они не детектировались антивирусным программным обеспечением.
- Flooder – программы, функцией которых является "забивание" бесполезными сообщениями сетевых каналов, отличных от почтовых, Интернет-пейджеров и SMS (например, IRC).
- Email-Flooder, IM-Flooder, SMS-Flooder – программы, функцией которых является "забивание" бесполезными сообщениями каналов электронной почты, каналов Интернет-пейджеров (ICQ, MSN Messenger и др.) и каналов передачи SMS-сообщений.
Классификация детектируемых объектов "Лаборатории Касперского" выделяет в отдельную группу условно нежелательные программы, которые невозможно однозначно отнести ни к опасным, ни к безопасным. Речь идёт о программах, которые разрабатываются и распространяются легально и могут использоваться в повседневной работе, например, системными администраторами. Вместе с тем, некоторые из таких программ обладают функциями, которые могут причинить вред пользователю, но только при выполнении ряда условий. Например, если программа удаленного администрирования установлена на компьютер пользователя системным администратором, то ничего страшного в этом нет, т.к. администратор всего лишь получает возможность удаленно решать возникающие у пользователя проблемы. Но если та же программа установлена на компьютер пользователя злоумышленником, то последний получает полный контроль над компьютером-жертвой и дальнейшем может использовать его по своему усмотрению. Таким образом, подобные программы могут быть реализованы как во благо, так и во вред – в зависимости от того, в чьих руках они находятся.
Вредоносное ПО создаётся для компьютерных систем определенного типа, работающих с конкретными операционными системами. Привлекательность ОС для создателей вирусов определяется следующими факторами:
- распространенность ОС;
- отсутствие встроенных антивирусных механизмов;
- относительная простота;
- продолжительность эксплуатации.
Известны десятки тысяч компьютерных вирусов, которые распространяются через Интернет по всему миру.