Как обезопасить себя от вредоносных программ

Ранее детей обучали мыть руки перед едой и предостерегали от общения с незнакомцами, теперь же их учат не скачивать подозрительные программы из интернета и не открывать спам-сообщения. В современных реалиях цифровая гигиена играет более важную роль, чем обычная безопасность дома. Для совершения киберпреступления не требуется взлом жилища, достаточно получить доступ к смартфону. Naked Science проводит расследование о том, что такое вредоносное ПО и как защититься от него.

Начало опасности: эволюция компьютерных вирусов

Помимо гриппа или коронавируса, существует и другой тип вирусов, вызывающий обеспокоенность: они обитают в наших компьютерах. Подобно биологическим вирусам, компьютерные распространяются и размножаются, «заражая» систему. Их влияние может быть незначительным и неудобным, например, компьютер начинает работать медленнее или происходит несанкционированный доступ к электронной почте, а может привести к полному разрушению данных. Вывод из строя персонального компьютера – это одно, а сбой в работе ядерной программы страны – совсем другое. В обиходе все вредоносное программное обеспечение часто называют вирусами, однако с профессиональной точки зрения вирусы представляют собой лишь небольшую часть современных угроз. Именно с них, тем не менее, началось развитие кибератак.

Основы для разработки компьютерных вирусов были заложены еще в 40-50-х годах XX века, когда Джон фон Нейман ( John von Neumann) написал работу по самовоспроизводящимся автоматам, а С. Пенроуз (L. S. Penrose) и Ф. Ж. Шталь (F. G. Stahl) описали модели структур, способных к размножению, мутациям и захвату. Их модели почти сразу реализовали в виде программного кода, который в современном понимании, правда, еще не был вредоносным. В 1950-х сотрудники Bell Labs воплотили в жизнь основную идею фон Неймана, создав игру под названием Core Wars. В ней программисты выпускали в общую область памяти «бойцов», запускали их одновременно и соревновались за контроль над компьютером.

Первые задокументированные случаи появления вирусов относятся к началу 1970-х годов. Обычно первым из них называют называют Creeper Worm — это экспериментальная самовоспроизводящаяся программа, разработанная Бобом Томасом (Bob Thomas) из BBN Technologies. Creeper получал доступ в сеть ARPANET (предшественник интернета) и копировал себя в удаленные системы, где показывал сообщение: «Я крипер, поймай меня, если сможешь!» Позднее Рэй Томлинсон (Ray Tomlinson) написал в ответ программу REAPER, которая тоже перемещалась по Сети и, обнаруживая CREEPER, «ловила» его, прекращая выполнение. Томлинсон тем самым разработал прообраз того, что потом назовут антивирусом.

В 1983 году Фред Коэн (Fred Cohen) ввел в научный оборот привычный нам термин «компьютерный вирус». Он определил его так: «Программа, которая может заражать другие программы, модифицируя их, чтобы включать в них, возможно, развитую версию себя». В том же году в Университете Южной Калифорнии (США) предложили проект по созданию самораспространяющейся программы. Формально именно способность к саморепродукции — главное свойство вирусов.

Первые случаи компьютерных атак зафиксированы приблизительно в 1970-х годах, когда произошли инциденты с компаниями National CSS, AT&T и Los Alamos National Laboratory. В случае с AT&T взломщик, например, изменил внутренние часы, отвечавшие за выставление тарифов, так что пользователи этой сети получали ночные скидки даже в дневное время. Появились первые антивирусные средства — NOD, McAfee. Безопасностью данных тогда особенно не занимались, механизмы защиты использовали самые поверхностные, поскольку и атаки были, с технической точки зрения, не слишком продвинутыми.

Ранее вредоносные программы нередко передавались с одного компьютера на другой с использованием дискет, которые физически переносили пользователи. К середине 1970-х годов понимали, при разработке компьютерных систем необходимо уделять приоритетное внимание вопросам безопасности.

В 1983 году на экраны вышел фильм «Военные игры», сюжет которого вращался вокруг программы, получившей контроль над системами управления ядерными ракетами. Эта потенциальная опасность вызвала серьезную обеспокоенность в обществе. В результате, Палата представителей США была вынуждена организовать специальные слушания, посвященные взломам компьютерных систем. Кен Томпсон (Ken Thompson) в лекции на Премию Тьюринга впервые описал сценарий заражения системы с помощью программы, которую назвал «троянским конем». После все большего числа атак на правительственные и корпоративные компьютеры американский конгресс в 1986 году принял Закон о компьютерном мошенничестве и злоупотреблениях — взлом компьютерных систем начал считаться преступлением.

С развитием компьютерных сетей злоумышленники постоянно улучшали свой код и использовали широкую доступность интернета. В период с 2000 по 2010 год наблюдался значительный рост количества вредоносных программ выросло как по количеству, так и по скорости их распространения. В 2016-м вирус Locky заразил несколько миллионов компьютеров в Европе со средней скоростью больше пять тысяч устройств в час. В 2018 году Thanatos стала первой программой-вымогателем, которая начала принимать платежи в биткойнах. На сегодня, по данным Anti-Phishing Workgroup, вредоносное ПО заражает как минимум треть компьютеров в мире. Cybersecurity Ventures сообщает, по оценкам экспертов, к 2021 году ежегодные потери от киберпреступлений, включая распространение вредоносного ПО, достигли шести триллионов долларов.

Вредоносное ПО: что это такое и как работает

Вредоносное ПО (malware) — это общий термин, охватывающий широкий спектр угроз, связанных с программным обеспечением, включая компьютерные вирусы, трояны, черви, ботнеты, программы-вымогатели и другие подобные элементы. Обычно, когда говорят о вредоносном ПО, имеют в виду три наиболее часто встречающиеся угрозы: компьютерные вирусы (computer viruses), сетевые черви (network worms) и троянские кони (трояны, Trojan horses).

Вот как характеризует malware Евгений Жуковский, доцент кафедры кибербезопасности и защиты информации Санкт-Петербургского политехнического университета, кандидат технических наук: «С технической стороны, функциональные возможности вредоносного программного обеспечения могут быть идентичны возможностям легитимного. Решающую роль в определении того, является ли программа вредоносной, играет намерение, с которым она используется. Киберпреступники часто используют легитимные программы в своих атаках, скрытно для пользователя, получая контроль над системой жертвы.

Трояны – один из самых распространенных видов вредоносного ПО, поскольку они маскируются под законные приложения, но содержат вредоносные функции. Не менее серьезную опасность представляют и сетевые черви программный код, осуществляющий самостоятельное распространение с одной системы на другую: например, эксплуатируя уязвимости (ошибки безопасности) в сетевых службах компьютера. Периодическое появление в публичном доступе средств эксплуатации к критическим уязвимостям часто приводит к эпидемиям заражения сетевыми червями. Нашумевший пример эпидемия шифровальщика WannaCry. Основная опасность подобных атак в том, что атакующие, создав самораспространяющиеся по Сети программы, могут дальше не контролировать их распространение. Это может приводить к катастрофическим последствиям к выводу из строя критических инфраструктур, например, объектов атомной промышленности или социальной сферы».

В последнее время наиболее заметными и распространенными инцидентами стали атаки на крупные компании, осуществляемые посредством компрометации цепочек поставок. Для реализации такой тактики злоумышленники взламывают сторонние ресурсы, используемые компанией, и получают доступ к ее системе. В сентябре 2018 года произошла утечка банковских данных 380 тысяч пользователей авиакомпании British Airways, в числе которых были адреса, номера кредитных карт и коды безопасности к ним, попали в руки хакеров как раз через supply chain attack. Злоумышленники внедрили сценарии, предназначенные для кражи данных, в форму, используемую клиентами на сайте для ввода информации о себе.

Практически ежемесячно в средствах массовой информации появляются сообщения об утечках персональных данных: 25 миллионов клиентов СДЭК, 31 миллион пользователей «Гемотеста», данные о телефонах и заказах клиентов «Яндекс.Еде». Безопасность зачастую остается уделом второстепенным для многих организаций. Однако, даже при условии устранения халатного отношения к защите информации, утечки и взломы будут неизбежны, поскольку человеческий фактор всегда создает потенциальную возможность компрометации любой системы.

Абсолютно не существует систем, которые нельзя было бы взломать. В сфере компьютерной безопасности защита и атака подобны противостоянию снаряда и брони. Речь идет лишь о соотношении ресурсов (финансовых, временных, профессиональных) у атакующей и защищающейся сторон. Задача защищающихся повысить стоимость реализации атаки, чтобы сделать ее попросту нерентабельной.

Правила цифровой гигиены

Для обычного пользователя, который не обязан думать о национальной безопасности, а в первую очередь заботится о защите своих личных данных, рекомендуется придерживаться умеренных мер цифровой гигиены:

  • Следует избегать установки программных продуктов из источников, вызывающих сомнения в их надежности;
  • Важно проявлять осторожность и не поддаваться на действия фишеров — так называют злоумышленников, использующих поддельные электронные письма, маскирующиеся под сообщения от банков, к примеру;
  • Не открывайте подозрительные вложения;
  • Рекомендуется регулярно обновлять программное обеспечение и применять обновления безопасности;
  • Необходимо применять принцип минимальных привилегий: каждый пользователь (и каждая программа) должен обладать только теми разрешениями, которые требуются для выполнения необходимых задач;
  • Рекомендуется использовать обезличенные логины и пароли. Если при регистрации в различных социальных сетях используется имя и фамилия, это позволит злоумышленникам связать между собой разные аккаунты одного человека;
  • Применение многофакторной аутентификации рекомендуется там, где это возможно. Она предполагает использование не только пароля для входа в систему, но и дополнительного способа подтверждения личности, такого как электронное письмо или SMS-код, отправленный на мобильный телефон. В качестве второго фактора аутентификации могут использоваться и биометрические данные, например, сканирование отпечатков пальцев или сетчатки глаза;
  • Не рекомендуется размещать сканированные копии и документы в облачных хранилищах;
  • Защищайте свою конфиденциальность в социальных сетях. Не публикуйте фотографии, на которых видно окно вашего дома, и избегайте попадания адреса в кадр. Также рекомендуется полностью отключить геотеги на фотографиях;
  • Аккуратно пользуйтесь общественным Wi-Fi;
  • Регулярно проверяйте список программ, запускающихся при старте системы, и деактивируйте те, которыми вы не пользуетесь.

Несмотря на то, что абсолютная защита невозможна, поскольку любую систему можно взломать, важно найти равновесие между удобством и безопасностью. При этом первостепенное внимание следует уделять наиболее серьезным рискам, таким как кража банковских реквизитов и учетных записей. К их хранению необходимо относиться с особой осторожностью.

Выявление вредоносного ПО

Зараженный компьютер демонстрирует характерные признаки вредоносной активности, по которым можно идентифицировать угрозу. Так, трояны-майнеры увеличивают нагрузку на вычислительные процессы, которые ранее не использовали ресурсы, что приводит к замедлению работы компьютера и задержке при открытии программ. Также поводом для беспокойства является появление новых программ или запуск неизвестных процессов. Более сложные вредоносные программы сложно обнаружить без специальных знаний. Для заражения системы злоумышленнику достаточно подменить или добавить свою DLL-библиотеку в работающую программу, рассчитывая на то, что пользователь не будет проверять исполняемые файлы всех процессов.

Евгений Жуковский в этой связи особо отмечает: «Злоумышленники могут применять разнообразные методы атак для получения доступа к вашей системе. Наибольшему риску подвержены приложения, которые напрямую работают с сетью, такие как веб-браузеры и почтовые клиенты. К критически важному ПО также относятся офисные приложения, поскольку они часто используются для открытия ненадежных вложений и могут быть скомпрометированы из-за уязвимостей. Поэтому необходимо регулярно обновлять программное обеспечение.

Применительно к веб-браузерам можно выделить несколько типичных векторов атак. В первую очередь, как и любое программное обеспечение, браузеры содержат уязвимости, которые злоумышленник может использовать для получения доступа к вашим данным и системе. Это происходит, когда вы посещаете вредоносный сайт или переходите по скомпрометированной ссылке. Однако, в настоящее время это не самый распространенный сценарий, поскольку браузеры, как правило, автоматически обновляются, а новые, ранее неизвестные уязвимости в современных версиях браузеров представляют большую ценность для атакующих. Из-за сложности и дороговизны их использование для массовой кражи данных маловероятно. Более частый вариант использование социальной инженерии, то есть слабостей и нерационального поведения пользователей. Например, злоумышленнику нужно заставить жертву скачать и запустить исполняемый файл либо офисный документ с макросами. Поэтому всегда стоит внимательно относиться к тому, какие файлы вы открываете и насколько доверяете их отправителю.

Злоумышленники нередко эксплуатируют уязвимости веб-сайтов. Одним из типичных примеров таких уязвимостей является межсайтовый скриптинг (Cross-Site Scripting, XSS). Эта уязвимость заключается в том, что злоумышленник может выполнить свой javascript-код в контексте браузера жертвы. Вредоносный код может попытаться похитить критическую информацию пользователя, прочитав cookies из браузера либо отобразив фишинговую форму, чтобы выманить данные с помощью социальной инженерии. Вредоносный код в этом случае может быть либо внедрен в код страницы уязвимого сайта, либо присутствовать в URL-ссылке, по которой перейдет жертва. Поэтому будьте аккуратны, переходя по ссылкам, полученным из недоверенных источников».

Базовый подход к выявлению ВПО сигнатурный анализ. Он подразумевает поиск дефектов в программном коде путем сопоставления его фрагментов с базой данных сигнатур (то есть шаблонов) дефектов безопасности. Такая база, правда, нуждается в постоянном обновлении, так что ранее неизвестные экземпляры ВПО с помощью сигнатурного анализа не выявить.

Для выявления подобных угроз используют эвристический анализ, который не опирается на сигнатуры известных вредоносных программ, а основывается на общих правилах, указывающих на потенциально опасное поведение и свидетельствующих о вредоносных намерениях программы.

Эвристический анализ опирается на два подхода: эмуляцию кода и механизм проактивной защиты. Эмуляция позволяет анализировать код программы, имитируя ее выполнение, без фактического запуска, чтобы определить потенциальные действия. Проактивная защита предполагает непрерывный мониторинг действий программы в реальном времени и выявление признаков вредоносного поведения. В качестве критериев, указывающих на потенциально опасные действия, часто выступают определенные последовательности системных вызовов, обращения к критическим файлам и другие характерные операции.

Хотя человечество в целом понимает принципы работы вредоносных программ, умеет их выявлять и знает методы борьбы с ними, оно все же нередко оказывается побежденным. В 2010 году Stuxnet, компьютерный червь объемом 500 килобайт, заразил программное обеспечение как минимум 14 промышленных объектов в Иране, в числе которых был завод по обогащению урана. Ядерная программа страны оказалась отброшена на десятилетия назад: иранцы избавились от тысячи центрифуг для обогащения уранового топлива, пораженных Stuxnet.

В марте 2016-го неизвестные хакеры передали wikiLeaks опубликовал 30 тысяч электронных писем, переданных Хиллари Клинтон и другим членам Демократической партии США. В конечном итоге Хиллари Клинтон потерпела поражение на президентских выборах. Влияние вредоносного ПО не всегда столь значительно, однако оно способно изменять окружающую нас действительность. Если в 1994 году новый вирус появлялся каждый час, то в 2015-м появлялось больше 300 тысяч вредоносных образцов в день — уже не только вирусов.