16

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

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

3 ответа3

14

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

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

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

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

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

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

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, обновления и т. д. В этом случае вы можете вернуться в это состояние, применить обновления и сохранить новое состояние. То же самое можно сделать для всего, что вы хотите сохранить. Ничто из этого не влияет на ваш реальный компьютер, только на виртуальную машину.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .