Почему я могу заразиться вирусом или трояном от посещения веб-сайта?


16

Я видел это много в последнее время. Вы нажимаете на ссылку, и мгновенный троян. Не нужно скачивать или что-нибудь.

Как это возможно? Есть ли способ проверить ссылки перед посещением, чтобы убедиться, что я не заразился?


Возможный дубликат: superuser.com/questions/13507/…
Hello71,

Это возможно, потому что веб-браузеры (например, Internet Explorer) являются чрезвычайно сложными частями программного обеспечения, несмотря на то, что они хорошо написаны. Хакеры обнаруживают недостатки, которые можно использовать для запуска выбранной вами программы на вашем компьютере, например, трояна.
unixman83

Ответы:


14

Чтобы ответить, как это возможно:

На сайте есть некоторый скрипт, который запускается при загрузке страницы. Это то, что заражает ваш ПК с Windows - я не уверен на 100% в деталях, загружает ли он код или просто запускает его.На этой странице есть пример того, как это было сделано в одном случае. Также необходим уязвимый браузер, и практически любой популярный браузер является уязвимым, так как на многих компьютерах стоит ориентироваться.

По большей части это будут ПК с Windows, которые заражаются, когда пользователи работают как администраторы, а не как пользователи с ограниченными правами. Причин этому много и они разнообразны. Как отмечает в своем комментарии Роджер, его популярность, а не какая-то внутренняя слабость - вот главный фактор:

Windows нацелена больше, потому что она более популярна. Некоторые говорят, что Windows менее безопасна, чем альтернативы, но я должен сказать, что, как вы подчеркиваете, это не так. Я запускаю Linux дома, и если троянец может запускаться под моей учетной записью пользователя, он все равно может нанести немало вреда файлам, которые меня волнуют, он просто не сможет захватить систему.

Хотя, работая с пользователем с ограниченными правами, вы можете ограничить ущерб, но не обязательно устранить его.

С Vista и теперь 7, имея более жесткий контроль над тем, что запускается от имени администратора, вы можете начать видеть падение таких сайтов - хотя это будет только тогда, когда большинство работает под управлением более новых ОС.


Благодарю. Мне просто трудно поверить, что он может автоматически загрузить ваш браузер и запустить его. Что это за сценарий? JavaScript?
Роб

@Rob - Да, это будет JavaScript, и для этого нужен уязвимый браузер, а пользователь должен быть администратором.
ChrisF

Ему удалось установить себя через FireFox. Вот вам и самый безопасный веб-браузер. FML
Роб

@Rob - Firefox давно не был самым безопасным браузером. Как только он достиг приличной доли рынка, вирусные и троянские авторы начали искать эксплойты, поскольку это того стоило. Если вы хотите «безопасный» просмотр, выберите браузер с самой низкой долей на рынке;)
ChrisF

1
К сожалению, я боюсь перемен. Я буду придерживаться Firefox, поскольку у него есть тонна аддонов, которые я использую ежедневно. FML снова. Теперь мне просто нужно знать, возможно ли принять два ответа на один вопрос?
Роб

8

Хорошо, когда вы открываете веб-сайт, веб-сайт может указывать браузеру делать все от его имени. В простейшем случае он просто отправляет текст и изображения для отображения, но он также может отправлять небольшие программы, которые будут запускаться браузером (в JavaScript, который встроен в браузеры, или с использованием плагина браузера, такого как Java или Flash). ,

В принципе, заразиться только от посещения сайта должно быть невозможно:

Хотя браузеры будут запускать программы от имени посещаемых вами веб-сайтов, эти программы строго ограничены, поэтому они могут выполнять только «безвредные» действия. С помощью JavaScript вы можете, например, изменить страницу, к которой принадлежит JavaScript (так как оба исходят с одного и того же сайта, никакого вреда не может быть), но JavaScript не может изменить страницу с другого сайта (поэтому хитрый сайт не может изменить ваш отображение домашнего банка), и он может не иметь прямого доступа к файлам на вашем компьютере.

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

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

Примеры:

  • Как и в обычных программах, реализация браузера или плагина может иметь переполнение буфера, что позволяет веб-сайту запускать специально созданный код, отправляя его в браузер в качестве входных данных.
  • В старых версиях Java-плагина Sun была уязвимость в отношении песочницы. Песочница запрещает (и все еще запрещает) доступ ко всем функциям Java, которые могут позволить программе наносить ущерб, такой как чтение или удаление локальных файлов. Однако, хотя песочница действительно правильно блокировала доступ к этим функциям из Java-апплета, браузеры также разрешали косвенный доступ к этим функциям из JavaScript (с помощью метода, называемого «отражение»). Этот «черный ход» не был в достаточной степени учтен разработчиками и позволял обойти ограничения песочницы, нарушив песочницу. См. Https://klikki.fi/adv/javaplugin.html для получения подробной информации.

К сожалению, было несколько уязвимостей в песочницах JavaScript, Java и Flash, и это лишь некоторые из них. Это все еще своего рода гонка между злонамеренными хакерами, которые обнаруживают эти уязвимости, чтобы использовать их, и хорошими хакерами и разработчиками, которые обнаруживают и исправляют их. Обычно они исправляются быстро, но иногда появляется окно уязвимости.

Кстати: песочница - это причина, по которой некоторые Java-апплеты при запуске выдают предупреждение «Доверяете ли вы этому апплету»? Эти апплеты просят вас выпустить их из своей песочницы и предоставить им доступ к вашему компьютеру. Это иногда необходимо, но должно предоставляться только по уважительным причинам.

PS: причина того, что ActiveX (по крайней мере ранние версии) были настолько ужасно небезопасными, в том, что ActiveX сделал не использовал песочницу. Любой код ActiveX с веб-страницы имел полный доступ к вашей системе. Чтобы быть справедливым, это было (частично) исправлено в более поздних версиях.


2

Я упоминаю это, чтобы ответить на ваш последний вопрос о предупреждающих действиях. Один не очень распространенный вариант - использовать виртуальную машину (ну, это часто встречается в кругах безопасности). Есть несколько бесплатных. Установите свою ОС, браузер и надстройки на виртуальной машине и сохраните состояние. Затем вы можете перейти на любой сайт. Когда вы закончите, вы вернетесь к этому сохраненному состоянию и все, что произошло на виртуальной машине после этой точки, будет отброшено. Это очень просто, как только вы попадаете в него, но может представлять небольшую кривую обучения.

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


Это не очень практично. Noscript с Firefox НАМНОГО лучше.
unixman83

1
На самом деле, это очень практично с точки зрения безопасности, о чем и просили. NoScript просто отключает загрузку JavaScript по умолчанию, за исключением сайтов, которые вы разрешаете; Есть и другие векторы атаки. Без помощи это может быть утомительно и неприятно, чтобы получить права. Виртуальная машина действует как песочница, обеспечивает регулярный / полный просмотр и предоставляет средства для простого / быстрого восстановления. Не нужно использовать виртуальную машину для доверенных / известных сайтов, если ваш рабочий стол заблокирован, только для новых / сомнительных. Этой теме тоже 2 года ...
Ioan

Только 5% реальных векторов атаки успешны с отключенными скриптами и плагинами. то есть с NoScript. многие сайты работают без включенных скриптов.
unixman83

1
Это хорошо, я упомянул, что это не обычно используется и требует привыкания. Голосование вниз, потому что вам нравится другое решение, неверно. Ответ не неправильный. Вы бы лучше добавили свой собственный ответ или проголосовали бы за другой, который вы предпочитаете. По крайней мере, так я понимаю систему голосования для работы.
Иоан
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.