Как противостоять хакерским атакам. Уроки экспертов по информационной безопасности — страница 10 из 46

. Макгроу сказал, что она нравится ему даже больше, чем 12 его собственных книг. По его мнению, «это лучшая книга по безопасности на всей планете».

Макгроу ведет ежемесячный подкаст, посвященный теме безопасности, Silver Bullet Security Podcast(https://www.garymcgraw.com/technology/silver-bullet-podcast/), в рамках которого берет интервью у экспертов и светил индустрии. Недавно он отпраздновал десятилетие своего подкаста, опубликовав юбилейный, 120-й выпуск. В списке опрошенных им экспертов я увидел имена многих из тех людей, о которых написал в этой книге. Как и я, он проявляет неподдельный интерес к истории развития сферы ИБ, любит учиться и делиться знаниями. Когда наше интервью закончилось, я представил, как Макгроу, настоящий человек эпохи Возрождения, прогуливается со своей собакой вдоль реки, думая о новых типах брешей в системе безопасности ПО.

Информация о Гари Макгроу

Более подробно о Гари Макгроу можно узнать на следующих сайтах:

• книги Гари Макгроу: https://www.amazon.com/GaryMcGraw/e/B000APFZ2S/;

• веб-сайт Гари Макгроу: https://www.garymcgraw.com;

• подкаст Гари Макгроу: https://www.garymcgraw.com/technology/silver-bullet-podcast/.

9. Вредоносные программы

Когда я впервые начал работать в области ИБ еще в 1987 году, первым делом мое внимание привлекли вредоносные программы. Первые компьютерные вирусы (например, Elk Cloner для компьютеров компаний Apple и Pakistani Brain) только появились, хотя трояны и черви существовали и раньше. Компьютерные вирусы были настолько новы и редки, что популярные медиаэксперты объявили их мистификациями. Так было до тех пор, пока целые компании не подверглись заражению, и это было прежде, чем Интернет стал таким, каким мы знаем его сегодня. В то время компьютерные вредоносные программы распространялись по телефонным сетям и из рук в руки, когда люди копировали программное обеспечение друг у друга (как легально, так и нелегально). Вредоносные программы – по-прежнему один из самых популярных методов взлома.


Примечание. Первая вредоносная программа, которую я когда-либо видел, была бомба Ansi. Она загружалась на компьютер при содействии «помощника» – файла ansi.sys, так же, как в то время устанавливались многие программы и операционные системы, поэтому было сложно заподозрить с виду безопасную программу во вредоносности.

Типы вредоносных программ

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

Вредоносные программы могут быть достаточно эффективными. Тысячи из них успешно заражают целые сети по всему миру за несколько часов. Сотни вредоносных программ за один день заражают значительную часть компьютеров, подключенных к Интернету. Первое место по скорости заражения по-прежнему принадлежит программе 2003 года SQL Slammer worm (https://securelist.ru/slammer-vsyo/8976/), которая заразила большинство доступных в Интернете уязвимых SQL-серверов примерно за 10 минут. Соответствующий патч был выпущен спустя пять месяцев, но тогда почти никто не реагировал своевременно. Сегодня большинство вредоносных программ являются троянскими и требуют, чтобы конечный пользователь инициировал действие (например, открыл веб-ссылку или вложенный файл) для запуска вредоносного ПО, хотя вовлеченное устройство или пользователь, возможно, не имели никакого отношения к выполнению программы. Это зависит от сценария вредоносного ПО и его распространения.

Количество вредоносных программ

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


Примечание. Инструменты против вредоносных программ часто называют антивирусными приложениями, несмотря на то что они обнаруживают и удаляют вредоносные программы нескольких типов, поскольку большинство из них – компьютерные вирусы.

Программы криминального назначения

Одна из самых больших и тревожных тенденций вредоносных программ – это то, что они в основном используются в преступных целях. Примерно до 2005 года большинство из них было написано молодежью, стремившейся доказать, что может писать компьютерные вредоносные программы. Того, что такая программа функционировала и реплицировала, было достаточно. Конечно, было несколько вредоносных программ, которые намеренно причиняли непосредственный вред, но большинство из них оказывались скорее надоедливыми, чем опасными.

Теперь почти все вредоносные программы создаются в преступных целях. Большинство так или иначе нацелены на кражу денег, будь то прямая финансовая выгода, кража цифровой личности или паролей. В наши дни «вымогатель», то есть вредоносная программа, шифрующая данные и требующая выкуп, чтобы расшифровать их, очень популярен. Другие программы крадут игровые ресурсы, электронную валюту или совершают несанкционированные сделки с акциями. Некоторые проникают в ваш компьютер, чтобы отображать рекламу (или конкретные объявления), или тайно заставляют компьютер заходить на определенные веб-сайты, чтобы увеличить количество посетителей (трафик) для получения доходов от рекламы. Некоторые используются для взлома и кражи конфиденциальной информации. Другие могут применяться для массовых распределенных атак типа «отказа в обслуживании» (см. главу 28). Прошли времена, когда большинство вредоносных программ было создано озорными детьми; эти программы печатали милые маленькие поговорки на экране, играли в Yankee Doodle Dandy на вашем компьютере или просили вас помочь «легализовать марихуану» (например, вирус Stoned boot). Сегодня вредоносное ПО стало профессиональным!

Вредоносные программы часто создаются одним человеком, а покупаются и продаются другими. Часто тысячи компьютеров, скомпрометированных определенной программой, собираются вместе в так называемые ботнеты. Эти «сети ботов» могут быть арендованы или куплены, а затем настроены атаковать определенный сайт или сайты. Вредоносная программа, которая изначально внедряется в конкретный компьютер, известна как «загрузчик». Он получает начальный доступ к системе и модифицирует ее, чтобы допустить успешную работу будущих вредоносных программ или хакеров. Затем загружает новую программу с новыми инструкциями. Этот процесс может повторяться десятки раз, пока не будут загружены и выполнены финальные программы и инструкции. Таким образом, большинство вредоносных программ поддерживаются в актуальном состоянии и остаются скрытыми от антивирусных продуктов. Они даже продаются с круглосуточной технической поддержкой и гарантиями от обнаружения, и их разработчики получают отзывы удовлетворенных клиентов.

Вредоносные программы ответственны за кражи или причинение ущерба в сотни миллионов долларов ежегодно. Каждый опытный человек в сфере ИБ, который борется с ними последние десять лет, предпочел бы иметь дело только с озорными детьми.

Защита от вредоносных программ

Существует много средств защиты от вредоносных программ, большинство из которых также хороши и против нескольких других форм взлома.

Вовремя пропатченное программное обеспечение

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

Обучение

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

Антивирусные программы

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

Программы контроля запуска приложений

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

Инструменты пограничной защиты

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

Обнаружение вторжений