Сценаристы-злодеи: скрипты и защита от них
27 сентября 2018
Что такое скрипт и в чем его особенность? Давайте для сравнения откроем бинарный и скриптовый файлы:
Слева – всем известный Explorer (Проводник Windows), справа – первый попавшийся скрипт, скачанный браузером при открытии какой-то страницы. Разница очевидна. Бинарный файл сразу готов к запуску – фактически это машинные коды, понятные только процессору вашего компьютера. То есть для работы бинарного файла в идеальном случае ничего не нужно, а вот скрипт – другое дело. Он не исполняется сам – его исполняют.
Проще говоря, скрипт – это нечто вроде сценария (например, фильма или спектакля).
АКТ I СЦЕНА 1 Эльсинор. Площадка перед замком. Франсиско на страже. Входит Бернардо, Бернардо Кто здесь? Франсиско Нет, сам ответь мне; стой и объявись.
Сам по себе сценарий – это просто текст. Чтобы он превратился в действие, нужны режиссер и актеры.
Так и в случае скриптов. Это описание действий, которые должны быть выполнены. Для этого нужен интерпретатор – специальная программа, которая исполняет скрипт.
Это интересно. Мы несколько упростили определение скрипта. Бывают еще скомпилированные скрипты и т. д. – вариантов много. Забавно, что действительно проще открыть файл и самому увидеть, текстовый он или нет. Сделать это внешней программой куда сложнее!
- Дан произвольный файл. Требуется написать программу, определяющую, является он текстовым или бинарным. Существует ли такой алгоритм на данный момент?
- Однозначно определить, конечно, невозможно, но в текстовом файле заведомо не будет таких символов, как #0 (нулевое значение байта).
Чем опасен скрипт?
Проблема – не в опасности как таковой. Шифровальщики могут быть созданы и в виде бинарных файлов, и в виде скриптов. Но бинарный файл, во-первых, «плотно упакован», а во-вторых, обязан иметь определенную структуру. Поэтому опознать его с помощью сигнатуры можно достаточно просто и точно.
Дело в том, что бинарный файл может перестать работать, если мы попробуем его произвольно изменить (скажем, вписав пару пробелов в код). А вот со скриптовыми вредоносными файлами все не так просто.
Что в этом коде характерного, пригодного для использования в виде сигнатуры? Код как код, на вид – ничего страшного.
Вредоносный скрипт вообще может не содержать вредоносного кода как такового. Например, написать шифровальщик можно, только используя средства операционной системы: все необходимые программы в ней есть, нужно только их вызвать.
Мы прочитали порядок команд и тут нашли ответ, почему антивирус никак не отреагировал на работу скрипта.
После запуска программы начинается обращение к сайту злоумышленника, с его сайта скачиваются программы для шифрования – безвредный сам по себе софт для PGP шифрования.
По сути антивирус сам не видит в подобном алгоритме ничего вредного, считая подобные действия – действиями пользователя, который сам решил защитить свои документы.
Итого: почему страшен скриптовый вирус или троянец?
✔ Сложно выделяется сигнатура | ✔ Сигнатуру легко изменить | ✔ Действия ВПО выглядят как действия пользователя! |
При этом она может оказаться очень длинной для достижения уникальности. | Существуют специальные сервисы, позволяющие злоумышленникам определять сигнатуру вредоносного файла, на которую реагирует антивирус. | С точки зрения внешней контролирующей системы (антивируса). |
Почему злоумышленники любят скрипты?
Помимо вышеперечисленного, скрипты имеют еще один плюс: они могут исполняться на самых разных платформах, чего не умеют бинарные файлы. Ведь это – просто сценарий.
Первые атаки с применением троянца, вошедшего в семейство Linux.LuaBot, специалисты «Доктор Веб» фиксировали еще в декабре 2016 года. Все представители семейства написаны на скриптовом языке Lua.
Вредоносная программа Linux.LuaBot представляет собой набор из 31 Lua-сценария и двух дополнительных модулей, каждый из которых выполняет собственную функцию.
Троянец способен заражать устройства с архитектурами Intel x86 (и Intel x86_64), MIPS, MIPSEL, Power PC, ARM, SPARC, SH4, M68k – иными словами, не только компьютеры, но и широчайший ассортимент роутеров, телевизионных приставок, сетевых хранилищ, IP-камер и других «умных» девайсов.
А есть ли опасное вредоносное ПО в виде скриптов?
Его более чем достаточно. Пример из недавнего выпуска новостей компании «Доктор Веб»:
- JS.BtcMine
- Семейство сценариев на языке JavaScript, предназначенных для скрытой добычи (майнинга) криптовалют.
- JS.Inject
- Семейство вредоносных сценариев, написанных на языке JavaScript. Встраивают вредоносный скрипт в HTML-код веб-страниц.
Скрипты – сегодня самое популярное вредоносное ПО!
Это интересно. Среди скриптов не отмечено вирусов – вредоносных программ, заражающих другие файлы. А вот троянцев и червей – очень много. Например, JS.Faceworm.1 – JavaScript-червь, распространяющийся через Facebook. Пример троянца – Trojan.Encoder.4860, троянец-шифровальщик, известный также под именем JS.Crypt и полностью написанный на языке JScript.
#ScriptHeuristic #троянец #безопасность #скрипт #технологии_Dr.Web #вредоносное_ПО
Антивирусная правДА! рекомендует
Есть ли защита от скриптов? Естественно.
Выше мы говорили, что при анализе поведения скрипта есть риск ошибиться. Но можно предсказать его поведение – используя правила, формируемые с помощью технологий машинного интеллекта. Эта возможность внедрена в решения компании «Доктор Веб» начиная с Dr.Web Security Space версии 11.5 и Dr.Web Enterprise Security Suite 11.0.
Эта технология удачно дополнила технологию ScriptHeuristic, предотвращающую исполнение любых вредоносных скриптов в браузерах и PDF-документах.
Технология ScriptHeuristic
- Предотвращение исполнения любых вредоносных скриптов в браузере и PDF-документах без нарушения функциональности легитимных скриптов.
- Защита от заражения неизвестными вирусами через веб-браузер.
- Работа независимо от состояния вирусной базы Dr.Web совместно с любыми веб-браузерами.
Защита от скриптов существует – надо лишь правильно выбрать средство для этого!
Нам важно ваше мнение
Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.
Комментарии пользователей
a13x
16:41:25 2018-10-11
Вячeслaв
09:50:44 2018-10-01
Любитель пляжного футбола
23:30:18 2018-09-28
Я как-то год назад тоже пробовал отключать Javascript по совету АВП, не понравилось, решил оставить как есть. Хотя, конечно, как вариант, можно настроить исключения для проверенных сайтов, на которые заходишь каждый день. Может, и займусь этим, если руки дойдут.
GREII
19:29:56 2018-09-28
b_ice
18:31:34 2018-09-28
Вячeслaв
18:11:43 2018-09-28
Вячeслaв
15:01:42 2018-09-28
Вячeслaв
11:57:57 2018-09-28
Влад
06:02:32 2018-09-28
Sasha50
02:53:22 2018-09-28
Sasha50
02:52:14 2018-09-28
GREII
01:19:58 2018-09-28
Неуёмный Обыватель
01:05:36 2018-09-28
GREII
01:03:29 2018-09-28
razgen
23:51:08 2018-09-27
Littlefish
23:29:45 2018-09-27
Lia00
23:27:21 2018-09-27
Littlefish
23:26:51 2018-09-27
Zserg
22:27:41 2018-09-27
Nice
22:21:13 2018-09-27
I23
22:15:42 2018-09-27
I46
22:02:40 2018-09-27
Marsn77
22:02:35 2018-09-27
vla_va
21:56:02 2018-09-27
Любитель пляжного футбола
21:47:41 2018-09-27
Andromeda
21:18:33 2018-09-27
Dvakota
20:54:27 2018-09-27
kva-kva
20:43:15 2018-09-27
anatol
20:40:03 2018-09-27
Неуёмный Обыватель
20:29:34 2018-09-27
Lenba
20:23:58 2018-09-27
Пaвeл
20:22:51 2018-09-27
Пaвeл
20:21:14 2018-09-27
Шалтай Александр Болтай
20:15:37 2018-09-27
Сергей
20:09:47 2018-09-27
Шалтай Александр Болтай
20:09:40 2018-09-27
МЕДВЕДЬ
20:01:54 2018-09-27
Toma
20:00:32 2018-09-27
mk.insta
19:59:29 2018-09-27
razgen
19:56:54 2018-09-27
razgen
19:50:27 2018-09-27
Альфа
19:26:12 2018-09-27
Damir
19:22:39 2018-09-27
Дмитрий
18:43:58 2018-09-27
Татьяна
18:35:33 2018-09-27
Геральт
18:29:42 2018-09-27
Влад
18:24:47 2018-09-27
tigra
18:20:09 2018-09-27
Masha
18:07:44 2018-09-27
tigra
18:06:18 2018-09-27