Вредоносное ПО ( от англ. malware — вредоносное программное обеспечение ) [1] — это любое программное обеспечение, намеренно разработанное для нарушения работы компьютера , сервера , клиента или компьютерной сети , утечки личной информации, получения несанкционированного доступа к информации или системам, лишения доступа к информации или которое неосознанно нарушает безопасность и конфиденциальность компьютера пользователя . [1] [2] [3] [4] [5] Исследователи склонны классифицировать вредоносное ПО на один или несколько подтипов (т. е. компьютерные вирусы , черви , троянские кони , программы -вымогатели , шпионское ПО, рекламное ПО , мошенническое ПО, программы - вайперы и кейлоггеры ) . [ 1]
Вредоносное ПО создает серьезные проблемы для отдельных лиц и предприятий в Интернете. [6] [7] Согласно отчету Symantec об угрозах безопасности в Интернете за 2018 год (ISTR), количество вариантов вредоносного ПО возросло до 669 947 865 в 2017 году, что вдвое больше, чем в 2016 году. [8] Киберпреступность , которая включает в себя атаки вредоносного ПО, а также другие преступления, совершаемые с помощью компьютеров, по прогнозам, обойдется мировой экономике в 6 триллионов долларов США в 2021 году и будет расти со скоростью 15% в год. [9] С 2021 года вредоносное ПО разрабатывается для компьютерных систем, которые управляют критической инфраструктурой, такой как сеть распределения электроэнергии . [10]
Стратегии защиты от вредоносных программ различаются в зависимости от типа вредоносных программ, но большинство из них можно обойти, установив антивирусное программное обеспечение , брандмауэры , применяя регулярные исправления , защищая сети от вторжений, регулярно выполняя резервное копирование и изолируя зараженные системы . Вредоносные программы могут быть разработаны так, чтобы обходить алгоритмы обнаружения антивирусного программного обеспечения. [8]
Понятие самовоспроизводящейся компьютерной программы можно проследить до первоначальных теорий о работе сложных автоматов. [11] Джон фон Нейман показал, что в теории программа может воспроизводить себя. Это составило правдоподобный результат в теории вычислимости . Фред Коэн экспериментировал с компьютерными вирусами и подтвердил постулат Неймана, а также исследовал другие свойства вредоносных программ, такие как обнаруживаемость и самообфускация с использованием элементарного шифрования. Его докторская диссертация 1987 года была посвящена компьютерным вирусам. [12] Сочетание криптографической технологии как части полезной нагрузки вируса, эксплуатирующей его в целях атаки, было инициировано и исследовано с середины 1990-х годов и включает в себя первоначальные идеи программ-вымогателей и уклонения. [13]
До того, как доступ в Интернет стал широко распространенным, вирусы распространялись на персональных компьютерах, заражая исполняемые программы или загрузочные секторы дискет. Вставляя свою копию в машинный код инструкций в этих программах или загрузочных секторах , вирус заставляет себя запускаться всякий раз, когда программа запускается или диск загружается. Ранние компьютерные вирусы были написаны для Apple II и Mac , но они стали более распространенными с доминированием IBM PC и MS-DOS . Первым вирусом IBM PC в дикой природе был вирус загрузочного сектора , названный (c)Brain , созданный в 1986 году братьями Фарук Алви в Пакистане. [14] Распространители вредоносного ПО обманывали пользователя, заставляя его загружаться или работать с зараженного устройства или носителя. Например, вирус мог заставить зараженный компьютер добавить автозапускаемый код на любую подключенную к нему USB-флешку. Любой, кто затем подключал флешку к другому компьютеру, настроенному на автозапуск с USB, в свою очередь становился зараженным и также передавал инфекцию таким же образом. [15]
Старое программное обеспечение электронной почты автоматически открывало HTML-письмо, содержащее потенциально вредоносный код JavaScript . Пользователи также могут выполнять замаскированные вредоносные вложения электронной почты. Отчет Verizon о расследовании утечек данных за 2018 год , цитируемый CSO Online , утверждает, что электронные письма являются основным методом доставки вредоносных программ, на долю которых приходится 96% доставки вредоносных программ по всему миру. [16] [17]
Первые черви, сетевые инфекционные программы, возникли не на персональных компьютерах, а на многозадачных системах Unix . Первым известным червем был червь Морриса 1988 года, который заражал системы SunOS и VAX BSD . В отличие от вируса, этот червь не внедрялся в другие программы. Вместо этого он использовал дыры в безопасности ( уязвимости ) в программах сетевых серверов и запускал себя как отдельный процесс . [18] Такое же поведение используют и современные черви. [19]
С появлением платформы Microsoft Windows в 1990-х годах и гибких макросов ее приложений стало возможным писать инфекционный код на макроязыке Microsoft Word и подобных программ. Эти макровирусы заражают документы и шаблоны, а не приложения ( исполняемые файлы ), но полагаются на тот факт, что макросы в документе Word являются формой исполняемого кода. [20]
Многие ранние инфекционные программы, включая Morris Worm , первого интернет-червя, были написаны в качестве экспериментов или розыгрышей. [21] Сегодня вредоносное ПО используется как черными хакерами, так и правительствами для кражи личной, финансовой или деловой информации. [22] [23] Сегодня любое устройство, подключаемое к USB-порту, — даже лампы, вентиляторы, динамики, игрушки или периферийные устройства, такие как цифровой микроскоп, — может использоваться для распространения вредоносного ПО. Устройства могут быть заражены во время производства или поставки, если контроль качества недостаточен. [15]
С появлением широкополосного доступа в Интернет вредоносное ПО чаще разрабатывалось с целью получения прибыли. С 2003 года большинство распространенных вирусов и червей были разработаны для захвата контроля над компьютерами пользователей в незаконных целях. [24] Зараженные « зомби-компьютеры » могут использоваться для рассылки спама по электронной почте , для размещения контрабандных данных, таких как детская порнография , [25] или для участия в распределенных атаках типа «отказ в обслуживании» как форме вымогательства . [26] Вредоносное ПО широко используется против правительственных или корпоративных веб-сайтов для сбора конфиденциальной информации, [27] или для нарушения их работы в целом. Кроме того, вредоносное ПО может использоваться против отдельных лиц для получения такой информации, как персональные идентификационные номера или данные, номера банковских или кредитных карт и пароли. [28] [29]
Помимо преступного зарабатывания денег, вредоносное ПО может использоваться для саботажа, часто по политическим мотивам. Stuxnet , например, был разработан для нарушения работы очень специфического промышленного оборудования. Были политически мотивированные атаки, которые распространялись и отключали большие компьютерные сети, включая массовое удаление файлов и повреждение основных загрузочных записей , описанных как «уничтожение компьютера». Такие атаки были совершены на Sony Pictures Entertainment (25 ноября 2014 года, с использованием вредоносного ПО, известного как Shamoon или W32.Disttrack) и Saudi Aramco (август 2012 года). [30] [31]
Вредоносное ПО можно классифицировать различными способами, и некоторые вредоносные программы могут одновременно попадать в две или более категорий. [1] В целом, программное обеспечение можно разделить на три типа: [32] (i) хорошее ПО; (ii) серое ПО и (iii) вредоносное ПО.
Компьютерный вирус — это программное обеспечение, обычно скрытое внутри другой, на первый взгляд, безобидной программы, которое может создавать свои копии и вставлять их в другие программы или файлы, и которое обычно выполняет вредоносное действие (например, уничтожает данные). [33] Их сравнивают с биологическими вирусами . [3] Примером этого является переносимое заражение выполнением, метод, обычно используемый для распространения вредоносного ПО, который вставляет дополнительные данные или исполняемый код в PE-файлы . [34] Компьютерный вирус — это программное обеспечение, которое встраивается в некоторое другое исполняемое программное обеспечение (включая саму операционную систему) на целевой системе без ведома и согласия пользователя, и при запуске вирус распространяется на другие исполняемые файлы.
Червь — это отдельное вредоносное программное обеспечение, которое активно распространяется по сети, чтобы заражать другие компьютеры, и может копировать себя, не заражая файлы. Эти определения приводят к наблюдению, что вирус требует, чтобы пользователь запустил зараженное программное обеспечение или операционную систему для распространения вируса, тогда как червь распространяется сам. [35]
После установки вредоносного ПО в систему, крайне важно, чтобы оно оставалось скрытым, чтобы избежать обнаружения. Пакеты программного обеспечения, известные как руткиты, позволяют это скрыть, изменяя операционную систему хоста таким образом, чтобы вредоносное ПО было скрыто от пользователя. Руткиты могут предотвратить появление вредоносного процесса в списке процессов системы или не допустить чтения его файлов. [36]
Некоторые типы вредоносного ПО содержат процедуры, позволяющие избежать идентификации и/или попыток удаления, а не просто скрыть себя. Ранний пример такого поведения зафиксирован в истории Jargon File о паре программ, заражающих систему разделения времени Xerox CP-V :
Каждое задание-призрак обнаруживало тот факт, что другое было убито, и запускало новую копию недавно остановленной программы в течение нескольких миллисекунд. Единственный способ убить обоих призраков — убить их одновременно (очень сложно) или намеренно разрушить систему. [37]
Бэкдор — это широкий термин для компьютерной программы, которая позволяет злоумышленнику постоянно получать несанкционированный удаленный доступ к машине жертвы, часто без ее ведома. [38] Злоумышленник обычно использует другую атаку (например, троян , червь или вирус ) для обхода механизмов аутентификации, обычно через незащищенную сеть, такую как Интернет, для установки приложения бэкдора. Бэкдор также может быть побочным эффектом программной ошибки в легитимном программном обеспечении, которая используется злоумышленником для получения доступа к компьютеру или сети жертвы.
Часто высказывалась идея, что производители компьютеров предварительно устанавливают бэкдоры на свои системы для предоставления технической поддержки клиентам, но это никогда не было надежно подтверждено. В 2014 году сообщалось, что правительственные агентства США перенаправляли компьютеры, купленные теми, кого считали «целями», в секретные мастерские, где устанавливалось программное обеспечение или оборудование, разрешающее удаленный доступ агентству, что считалось одной из самых продуктивных операций по получению доступа к сетям по всему миру. [39] Бэкдоры могут устанавливаться троянскими конями, червями , имплантами или другими методами. [40] [41]
Троянский конь выдает себя за обычную, безвредную программу или утилиту, чтобы убедить жертву установить его. Троянский конь обычно несет скрытую разрушительную функцию, которая активируется при запуске приложения. Термин происходит от древнегреческой истории о троянском коне, который использовался для скрытного вторжения в город Троя . [42] [43]
Троянские кони обычно распространяются с помощью какой-либо формы социальной инженерии , например, когда пользователя обманывают, заставляя выполнить вложение электронной почты, замаскированное под ничего не вызывающее подозрения (например, обычная форма для заполнения), или путем скрытой загрузки . Хотя их полезная нагрузка может быть любой, многие современные формы действуют как бэкдор, связываясь с контроллером (звоня домой), который затем может получить несанкционированный доступ к пораженному компьютеру, потенциально устанавливая дополнительное программное обеспечение, такое как кейлоггер для кражи конфиденциальной информации, программное обеспечение для майнинга криптовалют или рекламное ПО для получения дохода оператором трояна. [44] Хотя троянские кони и бэкдоры нелегко обнаружить сами по себе, компьютеры могут работать медленнее, выделять больше тепла или шума вентилятора из-за интенсивного использования процессора или сети, как это может произойти при установке программного обеспечения для майнинга криптовалют. Криптомайнеры могут ограничивать использование ресурсов и/или работать только во время простоя, пытаясь избежать обнаружения.
В отличие от компьютерных вирусов и червей, троянские кони обычно не пытаются внедриться в другие файлы или иным образом распространиться. [45]
Весной 2017 года пользователи Mac подверглись атаке новой версии трояна Proton Remote Access Trojan (RAT) [46], обученного извлекать данные паролей из различных источников, таких как данные автозаполнения браузера, связка ключей Mac-OS и хранилища паролей. [47]
Дропперы — это подтип троянов, которые нацелены исключительно на доставку вредоносного ПО в систему, которую они заражают, с целью подорвать обнаружение с помощью скрытности и легкой полезной нагрузки. [48] Важно не путать дроппер с загрузчиком или стейджером. Загрузчик или стейджер просто загружают расширение вредоносного ПО (например, набор вредоносных функций с помощью рефлексивной инъекции динамической библиотеки ссылок) в память. Цель состоит в том, чтобы сделать начальную стадию легкой и необнаружимой. Дроппер просто загружает в систему дополнительное вредоносное ПО.
Программы-вымогатели не дают пользователю получить доступ к своим файлам, пока не будет заплачен выкуп. Существует две разновидности программ-вымогателей: программы-криптовымогатели и программы-блокираторы. [49] Программы-блокираторы просто блокируют компьютерную систему, не шифруя ее содержимое, тогда как программы-криптовымогатели блокируют систему и шифруют ее содержимое. Например, такие программы, как CryptoLocker , надежно шифруют файлы и расшифровывают их только после уплаты значительной суммы денег. [50]
Экраны блокировки или блокировщики экрана — это тип программ-вымогателей «киберполиции», которые блокируют экраны на устройствах Windows или Android с помощью ложного обвинения в сборе нелегального контента, пытаясь запугать жертв и заставить их заплатить штраф. [51] Jisut и SLocker влияют на устройства Android больше, чем другие экраны блокировки, при этом на Jisut приходится почти 60 процентов всех обнаружений программ-вымогателей для Android. [52]
Шифровальные программы-вымогатели, как следует из названия, являются типом программ-вымогателей, которые шифруют все файлы на зараженной машине. Затем эти типы вредоносных программ отображают всплывающее окно, информирующее пользователя о том, что его файлы были зашифрованы и что он должен заплатить (обычно в биткоинах), чтобы восстановить их. Некоторые примеры шифровальных программ-вымогателей — CryptoLocker и WannaCry . [53]
Некоторые вредоносные программы используются для получения денег с помощью мошенничества с кликами , создавая видимость того, что пользователь компьютера нажал на рекламную ссылку на сайте, генерируя платеж от рекламодателя. По оценкам, в 2012 году около 60–70 % всех активных вредоносных программ использовали тот или иной вид мошенничества с кликами, а 22 % всех рекламных кликов были мошенническими. [54]
Grayware — это любое нежелательное приложение или файл, которые могут ухудшить производительность компьютеров и могут вызвать риски безопасности, но относительно которых нет достаточного консенсуса или данных, чтобы классифицировать их как вредоносное ПО. [32] Типы Grayware обычно включают шпионское ПО , рекламное ПО , мошеннические дозвонщики , программы-шутки («jokeware») и инструменты удаленного доступа . [38] Например, в какой-то момент Sony BMG compact discs молча установила руткит на компьютеры покупателей с целью предотвращения незаконного копирования. [55]
Потенциально нежелательные программы (ПНП) — это приложения, которые считаются нежелательными, несмотря на то, что часто загружаются пользователем намеренно. [56] К ПНП относятся шпионское ПО, рекламное ПО и мошеннические дозвонщики.
Многие продукты безопасности классифицируют несанкционированные генераторы ключей как потенциально нежелательные программы, хотя они часто несут в себе настоящее вредоносное ПО в дополнение к своему мнимому назначению. [57] Фактически, Каммерштеттер и др. (2012) [57] подсчитали, что до 55% генераторов ключей могут содержать вредоносное ПО и что около 36% вредоносных генераторов ключей не были обнаружены антивирусным программным обеспечением.
Некоторые типы рекламного ПО отключают защиту от вредоносных программ и вирусов; доступны технические средства защиты. [58]
Программы, предназначенные для мониторинга веб-браузинга пользователей, отображения нежелательной рекламы или перенаправления доходов от партнерского маркетинга, называются шпионскими программами . Программы-шпионы не распространяются как вирусы; вместо этого они обычно устанавливаются путем использования уязвимостей безопасности. Они также могут быть скрыты и упакованы вместе с не связанным с ними программным обеспечением, установленным пользователем. [59] Руткит Sony BMG был предназначен для предотвращения незаконного копирования; но также сообщал о привычках прослушивания пользователями и непреднамеренно создавал дополнительные уязвимости безопасности. [55]
Антивирусное программное обеспечение обычно использует два метода для обнаружения вредоносного ПО: (i) статический анализ и (ii) динамический/эвристический анализ. [60] Статический анализ включает изучение программного кода потенциально вредоносной программы и создание сигнатуры этой программы. Затем эта информация используется для сравнения сканированных файлов антивирусной программой. Поскольку этот подход бесполезен для вредоносного ПО, которое еще не изучено, антивирусное программное обеспечение может использовать динамический анализ для отслеживания того, как программа работает на компьютере, и блокировать ее, если она выполняет непредвиденную активность.
Целью любого вредоносного ПО является сокрытие себя от обнаружения пользователями или антивирусным программным обеспечением. [1] Обнаружение потенциально вредоносного ПО затруднено по двум причинам. Первая заключается в том, что сложно определить, является ли ПО вредоносным. [32] Вторая заключается в том, что вредоносное ПО использует технические меры, чтобы затруднить его обнаружение. [60] По оценкам, 33% вредоносного ПО не обнаруживается антивирусным программным обеспечением. [57]
Наиболее часто используемый метод защиты от обнаружения включает в себя шифрование вредоносной нагрузки, чтобы не дать антивирусному программному обеспечению распознать сигнатуру. [32] Такие инструменты, как крипторы, поставляются с зашифрованным блоком вредоносного кода и заглушкой дешифрования. Заглушка расшифровывает блок и загружает его в память. Поскольку антивирус обычно не сканирует память, а сканирует только файлы на диске, это позволяет вредоносному ПО избегать обнаружения. Усовершенствованное вредоносное ПО имеет возможность трансформироваться в различные вариации, что снижает вероятность его обнаружения из-за различий в его сигнатурах. Это известно как полиморфное вредоносное ПО. Другие распространенные методы, используемые для обхода обнаружения, включают в себя, от распространенных до необычных: [61] (1) уклонение от анализа и обнаружения путем снятия отпечатков пальцев со среды при выполнении; [62] (2) запутывание методов обнаружения автоматизированных инструментов. Это позволяет вредоносному ПО избегать обнаружения такими технологиями, как антивирусное программное обеспечение на основе сигнатур, путем изменения сервера, используемого вредоносным ПО; [61] (3) уклонение на основе времени. Это когда вредоносное ПО запускается в определенное время или после определенных действий, предпринятых пользователем, поэтому оно выполняется в определенные уязвимые периоды, например, во время процесса загрузки, оставаясь в состоянии покоя в остальное время; (4) запутывание внутренних данных, чтобы автоматизированные инструменты не обнаружили вредоносное ПО; [63] (v) методы сокрытия информации, а именно стеговредоносное ПО ; [64] и (5) вредоносное ПО без файлов, которое запускается в памяти вместо использования файлов и использует существующие системные инструменты для выполнения вредоносных действий. Использование существующих двоичных файлов для выполнения вредоносных действий — это метод, известный как LotL, или Living off the Land. [65] Это уменьшает количество артефактов судебной экспертизы, доступных для анализа. В последнее время эти типы атак стали более частыми, с ростом на 432% в 2017 году и составляющими 35% атак в 2018 году. Такие атаки нелегко выполнить, но они становятся все более распространенными с помощью наборов эксплойтов. [66] [67]
Уязвимость — это слабость, изъян или программная ошибка в приложении , компьютере, операционной системе или компьютерной сети , которая используется вредоносным ПО для обхода защиты или получения привилегий, необходимых для его работы. Например, TestDisk 6.4 или более ранние версии содержали уязвимость, которая позволяла злоумышленникам внедрять код в Windows. [68] Вредоносное ПО может использовать дефекты безопасности ( ошибки или уязвимости безопасности ) в операционной системе, приложениях (таких как браузеры, например, старые версии Microsoft Internet Explorer, поддерживаемые Windows XP [69] ) или в уязвимых версиях плагинов браузера, таких как Adobe Flash Player , Adobe Acrobat или Reader , или Java SE . [70] [71] Например, распространенным методом является эксплуатация уязвимости переполнения буфера , когда программное обеспечение, предназначенное для хранения данных в указанной области памяти, не препятствует предоставлению большего объема данных, чем может вместить буфер. Вредоносное ПО может предоставлять данные, которые переполняют буфер, с вредоносным исполняемым кодом или данными после окончания; При доступе к этой полезной нагрузке она выполняет действия, определяемые злоумышленником, а не легитимным программным обеспечением.
Вредоносное ПО может эксплуатировать недавно обнаруженные уязвимости до того, как разработчики успеют выпустить подходящий патч . [6] Даже когда выпускаются новые патчи, устраняющие уязвимость, они не обязательно устанавливаются немедленно, что позволяет вредоносному ПО использовать системы, в которых отсутствуют патчи. Иногда даже применение патчей или установка новых версий не приводит к автоматическому удалению старых версий.
Существует несколько способов, с помощью которых пользователи могут быть информированы и защищены от уязвимостей безопасности в программном обеспечении. Поставщики программного обеспечения часто объявляют об обновлениях, которые устраняют проблемы безопасности. [72] Распространенным уязвимостям присваиваются уникальные идентификаторы (CVE ID) и они заносятся в общедоступные базы данных, такие как Национальная база данных уязвимостей . Такие инструменты, как Secunia PSI, [73] бесплатные для личного использования, могут сканировать компьютер на наличие устаревшего программного обеспечения с известными уязвимостями и пытаться обновить его. Брандмауэры и системы предотвращения вторжений могут отслеживать сетевой трафик на предмет подозрительной активности, которая может указывать на атаку. [74]
Пользователям и программам может быть назначено больше привилегий , чем им требуется, и вредоносное ПО может этим воспользоваться. Например, из 940 отобранных приложений Android треть запрашивала больше привилегий, чем им требовалось. [75] Приложения, нацеленные на платформу Android , могут быть основным источником заражения вредоносным ПО, но одним из решений является использование стороннего программного обеспечения для обнаружения приложений, которым были назначены чрезмерные привилегии. [76]
Некоторые системы позволяют всем пользователям вносить изменения в основные компоненты или настройки системы, что сегодня считается чрезмерно привилегированным доступом. Это была стандартная операционная процедура для ранних микрокомпьютерных и домашних компьютерных систем, где не было различия между администратором или root и обычным пользователем системы. В некоторых системах пользователи, не являющиеся администраторами , имеют чрезмерные привилегии по умолчанию, в том смысле, что им разрешено изменять внутренние структуры системы. В некоторых средах пользователи имеют чрезмерные привилегии, потому что им был ненадлежащим образом предоставлен статус администратора или эквивалентный статус. [77] Это может быть связано с тем, что пользователи склонны требовать больше привилегий, чем им нужно, поэтому часто в конечном итоге им назначают ненужные привилегии. [78]
Некоторые системы позволяют коду, выполняемому пользователем, получать доступ ко всем правам этого пользователя, что известно как код с избыточными привилегиями. Это также было стандартной рабочей процедурой для ранних микрокомпьютеров и домашних компьютерных систем. Вредоносное ПО, работающее как код с избыточными привилегиями, может использовать эту привилегию для подрыва системы. Почти все популярные в настоящее время операционные системы, а также многие скриптовые приложения разрешают коду слишком много привилегий, обычно в том смысле, что когда пользователь выполняет код, система предоставляет этому коду все права этого пользователя. [ необходима цитата ]
Атака учетных данных происходит, когда взламывается учетная запись пользователя с административными привилегиями, и эта учетная запись используется для предоставления вредоносному ПО соответствующих привилегий. [79] Как правило, атака успешна, потому что используется самая слабая форма безопасности учетной записи, которая обычно представляет собой короткий пароль, который можно взломать с помощью словаря или атаки методом подбора . Использование надежных паролей и включение двухфакторной аутентификации может снизить этот риск. При включении последней, даже если злоумышленник сможет взломать пароль, он не сможет использовать учетную запись, не имея также токена, которым владеет законный пользователь этой учетной записи.
Однородность может быть уязвимостью. Например, когда все компьютеры в сети работают под управлением одной и той же операционной системы, при эксплуатации одной из них один червь может эксплуатировать их все: [80] В частности, Microsoft Windows или Mac OS X имеют такую большую долю рынка, что эксплуатируемая уязвимость, сосредоточенная на любой из операционных систем, может подорвать большое количество систем. По оценкам, примерно 83% заражений вредоносным ПО в период с января по март 2020 года были распространены через системы под управлением Windows 10. [ 81] Этот риск смягчается путем сегментации сетей на разные подсети и настройки брандмауэров для блокирования трафика между ними. [82] [83]
Программы защиты от вредоносного ПО (иногда также называемые антивирусами ) блокируют и удаляют некоторые или все типы вредоносного ПО. Например, Microsoft Security Essentials (для Windows XP, Vista и Windows 7) и Windows Defender (для Windows 8 , 10 и 11 ) обеспечивают защиту в реальном времени. Средство удаления вредоносного ПО Windows удаляет вредоносное ПО из системы. [84] Кроме того, несколько эффективных антивирусных программ доступны для бесплатной загрузки из Интернета (обычно ограничены некоммерческим использованием). [85] Тесты показали, что некоторые бесплатные программы могут конкурировать с коммерческими. [85] [86] [87]
Обычно антивирусное программное обеспечение может бороться с вредоносным ПО следующими способами:
Определенный компонент антивирусного программного обеспечения, обычно называемый сканером при доступе или сканером в реальном времени, глубоко проникает в ядро операционной системы и функционирует аналогично тому, как это делает само вредоносное ПО, но с информированного разрешения пользователя для защиты системы. Каждый раз, когда операционная система обращается к файлу, сканер при доступе проверяет, заражен ли файл или нет. Обычно при обнаружении зараженного файла выполнение останавливается, а файл помещается в карантин, чтобы предотвратить дальнейший ущерб с намерением необратимого повреждения системы. Большинство антивирусов позволяют пользователям переопределять это поведение. Это может оказать значительное влияние на производительность операционной системы, хотя степень влияния зависит от того, сколько страниц оно создает в виртуальной памяти . [91]
Sandboxing — это модель безопасности , которая ограничивает приложения в контролируемой среде, ограничивая их операции авторизованными «безопасными» действиями и изолируя их от других приложений на хосте. Она также ограничивает доступ к системным ресурсам, таким как память и файловая система, для поддержания изоляции. [89]
Песочница браузера — это мера безопасности, которая изолирует процессы и вкладки веб-браузера от операционной системы, чтобы предотвратить использование уязвимостей вредоносным кодом. Она помогает защититься от вредоносных программ, эксплойтов нулевого дня и непреднамеренных утечек данных, захватывая потенциально опасный код в песочнице. Она включает в себя создание отдельных процессов, ограничение доступа к системным ресурсам, запуск веб-контента в изолированных процессах, мониторинг системных вызовов и ограничений памяти. Межпроцессное взаимодействие (IPC) используется для безопасного взаимодействия между процессами. Выход из песочницы подразумевает нацеливание на уязвимости в механизме песочницы или функции песочницы операционной системы. [90] [92]
Хотя песочница не является абсолютно надежной, она значительно сокращает поверхность атаки распространенных угроз. Поддержание обновлений браузеров и операционных систем имеет решающее значение для снижения уязвимостей. [90] [92]
Сканирование веб-сайта на уязвимости проверяет веб-сайт, обнаруживает вредоносное ПО, может отмечать устаревшее программное обеспечение и сообщать об известных проблемах безопасности, чтобы снизить риск взлома сайта.
Структурирование сети как набора более мелких сетей и ограничение потока трафика между ними до того, который заведомо является законным, может помешать возможности инфекционного вредоносного ПО реплицировать себя в более широкой сети. Программно-определяемые сети предоставляют методы для реализации такого контроля.
В качестве последнего средства компьютеры можно защитить от вредоносных программ, а риск распространения зараженными компьютерами доверенной информации можно значительно снизить, установив «воздушный зазор» (т. е. полностью отключив их от всех других сетей) и применив расширенный контроль над входом и выходом программного обеспечения и данных из внешнего мира. Однако вредоносное ПО все еще может пересекать воздушный зазор в некоторых ситуациях, не в последнюю очередь из-за необходимости внедрения программного обеспечения в изолированную сеть и может повредить доступность или целостность активов в ней. Stuxnet — пример вредоносного ПО, которое внедряется в целевую среду через USB-накопитель, нанося ущерб процессам, поддерживаемым в среде, без необходимости извлечения данных.
AirHopper, [93] BitWhisper, [94] GSMem [95] и Fansmitter [96] — это четыре метода, представленные исследователями, которые позволяют организовать утечку данных из изолированных компьютеров с помощью электромагнитного, теплового и акустического излучения.
Используя библиометрический анализ, изучение тенденций исследований вредоносных программ с 2005 по 2015 год, принимая во внимание такие критерии, как импактные журналы, высокоцитируемые статьи, области исследований, количество публикаций, частота ключевых слов, учреждения и авторы, выявило ежегодный темп роста в 34,1%. Северная Америка лидировала по результатам исследований, за ней следовали Азия и Европа . Китай и Индия были определены как новые участники. [97]
Первый вирус для ПК приписывают двум братьям, Баситу Фаруку Алви и Амджаду Фаруку Алви из Пакистана.
Те, кто внедрял Raccoon, использовали фишинговые сообщения и другие уловки, чтобы заразить вредоносным ПО потенциально миллионы компьютеров жертв по всему миру. После установки код предоставлял доступ к учетным данным для входа и другим данным, хранящимся в скомпрометированной системе.