Термин “вирус” стал термином, который обычно используется для описания любого нежелательного программного обеспечения, которое получает доступ к компьютерам без ведома пользователя. Но вирус программного обеспечения является специфическим типом вредоносных программ, который имитирует поведение вируса реального мира. Ему удается перемещаться с одного компьютера на другой, подключаясь к файлу хоста, который часто является исполняемым файлом.
Троян, с другой стороны, это просто кусок вредоносного кода, который замаскирован как безопасная программа или чаще всего как игра, чтобы побудить пользователей выполнить код. Трояны не имеют механизмов, необходимых для распространения или репликации себя и полагаются на пользователя что бы он выполнил их код.
Эти два типа вредоносных программ могут быть легко различимы из-за различных методов их распространения. Как отмечалось выше, вирус использует другой исполняемый файл в качестве хост-файла. Всякий раз, когда файл, который заражен запускается или к нему получают доступ, вирус может запустить свой код и искать другие файлы, которые он может заразить. Трояны, как и их тёзки, в этом отношении пассивные. Они ничего не могут сделать, если пользователь не скопирует их на жёсткий диск
Кодирование вируса может быть тяжелой работы, так как вам нужно будет запрограммировать механизмы для вируса, чтобы он мог прикрепить себя к другому файлу, при этом не делая его непригодным для использования. Трояны намного проще; пакетный файл, который удаляет файлы на жестком диске без подсказки, а затем может быть переименован в какую-нибудь игру, уже является трояном. Когда пользователь запускает его в ожидании игры, он получает неприятный сюрприз, так как троянец начинает удалять все свои файлы.
Поведение вируса , как только он находит хозяина и приобщает свою копию к новым хозяевам есть общая закономерность, которую можно обнаружить расширенным эвристическим анализом с помощью антивирусной программы. Это позволяет пользователям обнаруживать подозрительную активность, даже если вирус ещё не известен создателям антивирусной программы. Но трояны не имеют эти механизмы и, следовательно, их труднее обнаружить с помощью антивирусной программы, пока производители антивирусного ПО не определят их как трояны.
Резюме:
1. Вирус распространился по компьютерам, заражая другие программы, в то время как трояны полагаются на пользователей, чтобы они загрузили или скопировали их.
2. Вирусы сложные программы, которые могут скрывать себя в других программах, в то время как трояны очень упрощенные и используют только заманчивые имена файлов, чтобы замаскировать себя.
3. Вирус может быть обнаружен заранее эвристическим анализом антивирусным ПО из-за его поведения в то время как трояны могут легко быть не найденными, так как они не проявляют никакого подозрительного поведения.