Знакомство с этой группой зловредов я начну с поучительной истории.
Однажды ко мне обратился мой хороший знакомый с просьбой разобраться, как оказалось так, что с банковского счета его небольшой фирмы была списана вся имевшаяся там сумма. Расследование оказалось недолгим: оказалось, что все деньги были просто перечислены через клиент-банк на другой банковский счет, оттуда – на какую-то банковскую карту, зарегистрированную на бомжа, ну а после этого банально получены наличкой через банкомат. Естественно, в осуществлении этой схемы тут же заподозрили бухгалтера фирмы, но она оказалась не при чем. На компьютере бухгалтера был обнаружен хитрый вирус-бэкдор, который позволил злоумышленнику зайти на компьютер бухгалтера во время обеденного перерыва и провести банковский платеж. Бухгалтер (да и директор компании) ничего не подозревал до того момента, когда потребовалось оплатить очередные услуги – тут то и оказалось, что банковский счет фирмы пуст, а денежек уже давно и след простыл.
Итак, бэкдоры. Это довольно большая группа вирусов, которые объединяет одно общее свойство: их основное предназначение. Это предназначение – получить доступ к атакуемому компьютеру или к тем сведениям, которые пользователь на нем хранит. Другое название бэкдоров – трояны (троянский конь – способ овладения городом Троя, когда греки спрятались внутри массивной фигуры коня, которого они оставили под стенами Трои; доверчивые троянцы внесли его в город, а ночью греки выбрались из коня и открыли ворота города поджидавшим их войскам).
Троянские программы принято делить на типы по тому, каким образом они наносят вред. Вот эта классификация:
1) Программы для обеспечения удаленного доступа к компьютеру, или бэкдоры в узком смысле. Методов «открывания» дверей очень много – начиная от открытия какого-то порта, и заканчивая установкой специализированного ПО или протокола (типа стандартного RDP), через которое злоумышленник может беспрепятственно проникать на компьютер тогда, когда он включен.
2) Программы для сбора и передачи злоумышленнику данных, которые вводятся с клавиатуры (кейлоггеры). Работа таких программ обычно почти никак не обнаруживается, все, то они делают – дублируют нажатия клавиш на клавиатуре компьютера (и, некоторые из них, могут еще записывать движения курсора мышки) в особый лог-файл, который, с определенной периодичностью, отправляется злоумышленнику. Для чего это делается? Например, вы совершаете покупки в интернете, и вводите с клавиатуры данные своей банковской карты. Эту информацию кейлоггер передаст злоумышленнику, и, кроме вас, использовать карту сможет и он. Именно поэтому сейчас более безопасно использовать системы платежей, привязанные к определенному смартфону и проходящие аутентификацию по отпечатку пальцев – они практически полностью невосприимчивы к взлому. Но традиционных пользователей компьютеров, вручную вводящих данные своих банковских карт, еще очень много.
3) Деактивация систем безопасности компьютера (отключение антивируса, сетевого экрана, файерволла и т.п.) – обычно предшествует внедрению бэкдора, но может быть и отдельной функцией, например, для обеспечения возможности DDoS-атаки. Логично, что при активной системе безопасности заразить компьютер совсем не просто, поэтому атака может состоять из нескольких этапов: проникновение программы-деактиватора; деактивация защиты; загрузка основного кода вируса и его установка в системе; «обучение» охранных систем компьютера взаимодействию с зловредной программой (включение ее в список исключений); запуск систем безопасности. Таким образом компьютер заражается так, что заподозрить факт заражения практически невозможно – ведь системы безопасности компьютера продолжают работать, а сама атака обычно длится очень непродолжительное время. Как правило, таким образом атакуются сервера, контроль над которыми злоумышленник планирует осуществлять продолжительное время.
4) Программы для распространения какого-то контента. При этом ваш компьютер становится ретранслятором спама: для его распространения могут использоваться ваши мессенджеры, электронная почта, аккаунты в социальных сетях, и т.п. Как правило, распространяется два вида контента – или банальный спам, или какой-то вирус, причем не обязательно тот же, которым заражена ваша машина.
5) Организация распределенных вычислений. При этом ваш компьютер становится участником бот-сети, основной функцией которой является осуществление крупных массивов вычислений (например, взлом пароля методом брут-форса). Бот-сети – это прекрасное изобретение современных хакеров, которые делают взлом казавшихся до текущего момента стойкими алгоритмов шифрования относительно простым. Представьте: у вас имеется файл, зашифрованный ключом длиной 2048 бит. Для брут-форса этого ключа требуется 1 000 000 000 (1 миллиард лет). А теперь представьте, что для его брут-форса используется не один компьютер, а 100 000. Каждому из компьютеров передается файл и назначаются границы брут-форсинга (от значения Х0 до значения Х1 компьютеру 1, от значения Х1 до значения Х2 компьютеру 2, и так далее). При этом подходе требуется уже не 1 миллиард а 1000 лет. Все равно, много, не так ли? А если вывести каждый брут-форс отдельным потоком, и сделать каждый поток использующим одно ядро процессора? Скажем, у нас имеется 100 000 двухъядерных процессоров. Это уже 500 лет. А если пойти еще дальше, и внедрить виртуализацию? Каждому ядру назначить по десятку независимых виртуальных потоков? Это уменьшит время перебора в 20 раз, т.е. с 500 до 25 лет. Видите, как из невообразимого одного миллиарда лет мы дошли до уже вполне приемлемых 25? А если бот-сеть состоит не из 100 000, а из полумиллиона машин? Это дает возможность «ломать» файл, защищенный, казалось бы, невообразимо надежным шифрованием, за 2 месяца! Вот почему очень у многих людей «живут» троянцы, которые вообще не проявляют никакой зловредности – их функция заключается в том, чтобы предоставлять злоумышленнику доступ не к вашему компьютеру как таковому, а к его вычислительным мощностям.
Насколько опасен каждый из этих типов троянцев? Увы, но нельзя говорить, что какой-то из типов троянцев более опасен, а какой-то – менее. Опасны они все. Просто у них разные функции, и, скажем, если ваш компьютер просто ретранслирует какое-то сообщение, заражая троянцем другие машины, то лично вас прямой вред от этого может и не коснуться, но совокупный вред, который работа троянца на вашем компьютере нанесет в целом, будет велик. Исходя из этого, любой тип бэкдора должен незамедлительно обнаруживаться и удаляться.
Распространение троянских вирусов происходит обычно также, как распространение других вирусных программ, но всегда сопряжено с определенными факторами. Главный из этих факторов – первый запуск троянской программы или ее загрузчика в вашей системе должен быть однозначно совершен или санкционирован вами. Если вы не запустите троянца или программу, которая скачает и установит его в ваш компьютер, он не сможет у вас появиться. Поэтому, как и в случае с вирусами-шифровальщиками, важным моментом защиты является внимательность и правильная работа firewall.
Другой фактор – это ваша антивирусная защита. В случае с троянскими программами антивирусы справляются очень хорошо, так как алгоритмы эвристического анализа почти безошибочно определяют программу, как зловредную. Установив хороший антивирус с постоянно обновляемыми базами и активированными функциями эвристического и логического анализа, вы обезопасите себя от внедрения троянского коня почти на 100%.
Третий фактор – это макросы и встроенный язык Visual Basic, используемый в приложениях Microsoft Office. Спрятать в макросе загрузчик вредоносного кода злоумышленники догадались на второй день после того, как Microsoft начала поддерживать макросы в Office. Получая по почте документ MS Word или таблицу MS Excel, будьте внимательны, и, прежде чем разрешать выполнение макросов этим документом, проверьте его на вирусы. Современные продукты MS Office поддерживают функцию защищенного просмотра – она активируется для любых файлов, скачанных из интернета. Для просмотра присланных документов защищенного просмотра обычно хватает, если источник файла является подозрительным или вам не известен – лучше не включать редактирование документа и не разрешать исполнение макросов.
Для того, чтобы на вашем компьютере не было «сюрпризов» в виде троянских программ, следуйте трем простым правилам.
Правило первое. На вашем компьютере должен стоять хороший антивирус со свежими антивирусными базами и включенными функциями эвристического анализа.
Правило второе. Еженедельное сканирование диска на предмет поиска вирусов. Понимаю, что сканирование может занимать много времени, однако оно необходимо, и необходимо регулярное. Запланируйте антивирусу сканирование всех ваших дисков, скажем, на ночь, и просто оставьте компьютер включенным этой ночью. Для того, чтобы во время работы компьютер нельзя было взломать извне, сеть от него можно отключить. При сканировании компьютера лучше не оставлять опцию автоматического удаления найденных угроз – некоторые слишком подозрительные антивирусы могут удалить и нужные файлы, заподозрив в них вирусы – поэтому лучше, если результатом сканирования будет формирование отчета с обнаруженными угрозами, по каждой из которых вы будете принимать решение самостоятельно.
Правило третье. Внимательное отношение к трафику входящих файлов и сообщений и отфильтровывание тех, которые явно несут вредоносное ПО. Об этом я уже говорил ранее на примере вирусов-шифровальщиков.
И помните. Троянские программы создаются не забавы ради, их основная функция – извлечение пользы из ваших данных, вашего компьютера. Поэтому «сосуществовать» с ними категорически нельзя. Восстановление данных и восстановление украденных денег – это совершенно разные задачи, лучше не доводить до того, чтобы киберпреступники имели возможность украсть ваши реальные деньги с использованием вашего же компьютера.
Безопасного вам интернета и не терять ваши данные!
Станислав Корб, ©2018