Нет ничего смешнее, чем антивирус, который ведёт себя как вирус и работает даже под WinXP.


Напоминает рекетиров из 90-х — «Ты нам плати за безопасность, чтобы тебя другие бандиты не трогали».
Ой, можно подумать другие антивирусы используют исключительно «легальные» API. Без жеского хакинга ни одного современного зловреда не поймать, ибо играя по правилам не обыграешь того, кто эти правила нарушает.
Прекрасная статья. Особенно для конечного пользователя. Вот хочу я тестю купить подписку на этот продукт — и как?
На сайте paolo alto таже хрень — «contact with sales».
Я блин интроверт, я не хочу контакт, я хочу пыщь-пыщь карточкой и антивирус у моего тестя на компьютере… Есть для людей что-то? Или как всегда только суровый интырпрайз?
Да, пока это только enterprise-решение. Для функционирования нужно разворачивать сервер лицензирования ESM (Endpoint Security Manager), поэтому для дома не подойдет, к сожалению.
Энтерпрайз решение которое инжектится (а значит и защищает/проверяет) только в около 100 exeшников? А если неизвестный вирус? Что будет? Просто пропустит и даст сделать свое черное дело? В таком случае это хлам…

Перечитайте статью внимательно. Он инжектится в 100+ типов разных исполнительных файлов.

А вот автор утверждает, что из коробки таки только в заранее определенные приложения. Как и документация.


/offtopic


исполнительных файлов.

"Исполнительный файл" — это файл, который вовремя и аккуратно делает все, о чем вы его просите. :) А то, куда инжектится Traps — исполняемый.

>я хочу пыщь-пыщь карточкой и антивирус у моего тестя на компьютере
А они хотят только жырных энтерпрайзных клиентов)
Я правильно понял — что данный антивирус инжектируется только в «нужные» .exe, которые он знает? Как было сказано в статье «пока в реестре около ста программ». Не тупиковый ли подход?
Чтобы поймать маньяка, надо думать как маньяк. Тут это принцип не совсем применим.
«Из коробки” действительно инжектируется в самые распространенные, в основном типичные офисные приложения — браузеры, PDF-читалки, архиваторы, пакет Microsoft Office и т.д.
Разумеется, можно добавлять свои приложения для защиты. Процесс описан здесь: www.paloaltonetworks.com/documentation/41/endpoint/endpoint-admin-guide/getting-started-with-rules/process-management/add-a-new-protected-process
эээ, я правильно понимаю что мне нужно знать все exe-шники которые у меня на предприятии разрешены к запуску и для всех их все настроить чтоб гад не пролез? Не кажется ли вам что такой подход — большая дырень в защите? Ведь можно что-то пропустить или банально ошибиться в настройке.
Определить список разрешенных программ, которые у вас на предприятии — проще, чем определить список сигнатур запрещенных программ во всём мире. Но в этой индустрии упорно поддерживается обратное утверждение, что есть иллюзия.
Traps может сам собирать информацию о запускаемых exe-шниках и передавать на сервер управления, где потом можно создавать политики на основе этой информации.

Вообще это предлагаемый подход Palo Alto Networks — Zero Trust, принцип “нулевого доверия”. Разрешено только то, что описано явным образом, остальное запрещено. Это касается политик на их межсетевом экране в том числе.

В принципе это и без Traps становится достаточно распространенным подходом (настройка на винде штатного Applocker доменными политиками, и т.п.).

а что не так? политики, белый список, и эта штука следит за тем, чтобы адоб ридер не запустил зловреда из файла в почте

Как это соотносится с


Передача семпла происходила простым перетаскиванием исполняемого файла в целевую машину (drag’n’drop), после чего, в зависимости от типа файла, производился запуск. Либо двойным кликом, либо через консоль.

Куда в этом случае инжектился Traps?
Ведь при запуске создаётся новый процесс, в список процессов для проверки не входящий.


Второй вопрос: Сможет ли это решение обнаружить зловреда, написанного на Java?
Исходим из предположения, что пользователь его зачем-то запустил и инжект Traps в java.exe разрешён.


Вот, к примеру: https://www.pcworld.com/article/3031736/security/java-based-trojan-was-used-to-attack-over-400000-systems.html

1. На самом деле даже в рамках статьи мы не сильно углублялись в детали работы трапса. Фокусы с инжектированием DLL в терминологии вендора — это один механизм, Exploit Protection Modules (EPM), мы его детально описали в статье. Помимо этого есть еще Malware Protection Modules (MPM), куда входят в том числе Anti-Ransomware контрмеры, и именно их работу, а конкретно фичи статического анализа, мы проверяли в лабе на указанных семплах. Подробнее можно почитать тут: www.paloaltonetworks.com/documentation/41/endpoint/endpoint-admin-guide/malware-protection/manage-malware-protection-rules

2. Мы можем отслеживать вредоносную активность с помощью MPM, тут поможет Child Process Protection. Мы можем либо запретить процессу java.exe порождать дочерние процессы, либо жестко ограничить белыми списками разрешенные действия. Это, кстати, будет работать и для всяких powershell fileless малварей. Описание тут: www.paloaltonetworks.com/documentation/41/endpoint/endpoint-admin-guide/malware-protection/manage-restrictions-on-executable-files/define-java-restrictions-and-exemptions
Все отлично, как скачать?
А если разработчик закочевряжится и не даст согласие на такую «интеграцию»? По сути они просто патчат приложение на функционал контроля своей деятельности. На мой взгляд неоднозначное решение.
От разработчика не требуется согласия. Инжект делается in-memory, модификация исходных файлов не производится (насколько я понял из статьи).
Верно, поэтому взаимодействия с разработчиками не требуется.
Не верно.
Нормальные разработчики защищают свою программу от патчей (в том числе и в памяти), банальная проверка CRC, инжектов dll и более экзотические способы. Программа просто посчитает, что ее лицензию ломают и не даст пользователю с ней работать.

Кстати, вот пример от «больших» производителей.
Как я нашел в источниках, тот же Microsoft из своих продуктов запрещает инжект только для браузера Edge,
для него в Traps действительно есть исключение, которое отключает инъекцию в процесс для версий выше 11.00.15048 (см. скриншот). То есть, защита от эксплойтов (EPM) в этих версиях работать не будет. Таких исключений из коробки, опять же, совсем немного. В
основном это другие антивирусные продукты (в т.ч. встроенный Defender) и 2 браузера — Edge и Firefox (см. скриншот). Ну и если допустить успешную эксплуатацию уязвимости Edge, то в атаке должны быть еще какие-то действия: запуск других процессов, попытка связи
с C&C-центром и т.д… Такую активность можно задетектировать другими модулями Traps, а сетевую активность на файерволле.


Тут дело не в том, сколько приложений будет добавлено в исключения (и брошено на произвол судьбы :), а в самом подходе.

В Windows есть 2 основных легальных способа перехвата работы ф-ций приложения, это хуки (довольно обрезанный ф-ционал) и обработчики ф-ций уровня ядра (делаем всё что душе угодно, но если где-то зазевались — роняем систему) обычно продвинутые антивири используют именно последний способ, он требует ооочень кропотливого отношения к коду, но за-то позволяет перехватывать ф-ции без вмешательства в чужие приложения.

В случае же с инжектом — это чистый хак, причем заменяя адреса вызовов оригинальных ф-ций в адресном пространстве приложения Трапс напрямую нарушает лицензию приложения (т.к. обычно там практически всегда запрещается модификация кода), поэтому это очень скользкий путь… да инжект проще чем драйверы ядра и гораздо ф-циональнее хуков — но это тёмная сторона силы ;)

Ну, а про то, что приложения, которые защищают себя от крэка (а таких не мало) могут среагировать на инжект, я уже писал выше.
«Список протестированных семплов» должен включать и их хэши. Без них — не тестирование, а непонятно что.
md5 и sha256 хеши протестированных семплов есть на github: github.com/ytisf/theZoo/tree/master/malwares/Binaries
То, что где-то что-то есть, это, несомненно, хорошо. Да только тест без указания хэшей — фигня. Даже если эти хэши где-то есть.
Ссылки на скачивание демо версии нет, на сайте её тоже хрен найдешь с первого раза… В общем у вас минус 1 клиент
при установке надо указывать адрес сервера лицензирования ESM, его нужно устанавливать отдельно. По вопросам полноценного тестирования напишите мне в почту.
Логичнее было бы сделать триал на 5-10 дней если не обнаружен сервер лицензирования, для тестирования этого вполне бы хватило. Да и писать на почту чтоб попробовать… спасибо, мы лучше на старом решении останемся.
А как продукт ведёт себя с sandbox-aware вредоносами? И как они ведут себя с ним? ;)
Если речь про те вредоносы, которые детектируют, что они исполняются в виртуализированной среде, то Traps локальным анализом может предотвратить угрозу на самой машине. От типа вредоноса действия Traps не меняются. Protection flow
описан по ссылке: www.paloaltonetworks.com/documentation/41/endpoint/endpoint-admin-guide/malware-protection/malware-protection-flow

Если интересно протестировать конкретный экземпляр, можем попробовать запустить у себя в лабе.
В чём отличие с тем же sonar в symantec?
Что нового предлагает Palo Alto traps для разных реликтов, типа банкоматов, когда уже существует например, Symantec Critical System Protection?
Описанный подход хорошо работает против неизвестных угроз, но по нашему опыту — периодически бывают ложняки в связи с тем, что некоторые программы ведут себя не так как ожидается или их поведение похоже на поведение тех же шифровальщиков
Конечно, в реальной эксплуатации ложные срабатывания случаются. Но у Traps удобные инструменты управления политиками, и новые правила можно быстро раскатывать.
у Traps удобные инструменты управления политиками, и новые правила можно быстро раскатывать

Правила добавляются пользователем (тогда по сути это исключения) или программу, вызвавшее ложное срабатывание, нужно посылать вендору для добавления правил (это тогда правило самого поведенческого анализатора)?
В 99 процентах случаев самостоятельно
И кстати про прохождение PCI-DSS хотелось бы по подробнее. Там четко прописано, что требуется антивирус, обеспечивающий защиту от уже известных угроз. То есть прописано под сигнатуры
PCI-DSS мало что определяет конкретно, угроза != сигнатура. Сигнатурный анализ это лишь подход к определению этих угроз. В PCI-DSS пишут, что должен быть реализован периодический скан систем. Здесь мы ничего не сканируем, а мы мониторим процессы постоянно. Так что на вопрос — как вы сканируете и с каким периодом? Можете отвечать — у нас нет периода, мы постоянно сканируем и мониторим угрозы. А угрозой так же может быть определено аномальное поведение программы типа Buffer Overflow и т.д. Вобщем аудиторам можно это залить и 5.2 compliance.
Сканирование тут не причем. Пункт 5.1.1
Антивирусное программное обеспечение должно ...:
•обнаруживать все известные виды вредоносного программного обеспечения;
•удалять все известные виды вредоносного программного обеспечения;
•обеспечивать защиту от всех известных видов вредоносного программного обеспечения

То есть четко говорится, что:
— АВ должен обнаруживать известные вредоносные программы (а поведенческий анализатор, описанный в статье, нацелен на обнаружение угроз, пропущенных АВ, еще неизвестных АВ лаборатории)
— АВ должен обнаруживать все типы вредоносного ПО. А поведенческий анализатор, описанный в статье, нацелен на обнаружение угроз, которые могут быть найдены по поведению — инжекту вы процессы скажем

На всякий случай. Я совершенно с вами не спорю, что сигнатуры не панацея и лишь один компонент антивирусной защиты. Мы говорим исключительно о прохождении требований PCI-DSS
•обнаруживать все известные виды вредоносного программного обеспечения;
•удалять все известные виды вредоносного программного обеспечения;
•обеспечивать защиту от всех известных видов вредоносного программного обеспечения

PCI никак не определяет категоризацию этих видов и ни слова про сигнатуры.
Иными словами вредоносы можно перечислять как trojan, rootkit, backdoor, dos и т.д. а можно как application with Code Injection, Buffer overflow, Privileges Escalation…
да хоть к тому же CWE привязаться, кому как удобнее. Это будет нормально и аудитор с этим не поспорит.
Я не спорю, лишь хочу сказать, что на стандарте PCI-DSS безопасность не должна заканчиваться. В нём весьма обтекаемые формулировки, которые можно обойти.
Конечно. И это еще не самый плохой стандарт по ИБ
Просто у нас задача обычно не обосновать аудитору, а реализовать заказчику, который имеет свое мнение. Мы вендор и к нам приходят с требованием выполнить. По практике начнешь рассказывать заказчику, что он не прав — кивает и уходит к конкурентам.
Подробнее можно почитать по ссылке: researchcenter.paloaltonetworks.com/2016/10/achieve-pci-dss-hipaa-compliance-traps

Вкратце, есть компания Coalfire, которая является PCI Qualified Security Assessor (QSA), и в их отчете сказано, что “...an
organization who was using a traditional AV to remain PCI DSS compliant can confidently replace that solution with Traps and remain compliant"
О! Вот это спасибо!
Интересно как это решение работает с ПО, которое применяет продвинутые уровни защиты от дебага, в том числе внедрение DLL. Как раз такое чаще всего встречается в enterprise решениях. Части кода (или весь код) может быть помещаются в виртуальную машину, внутрь которой внедрить DLL так просто уже не получится. ПО просто может отказаться работать обнаружив внедрение чужеродного кода в свое адресное пространство.
Это не так работает. Перехватчик уже сидит в процессе и отслеживает попытки внедрения в него. А также поведение после внедрения. Поведенческий анализатор изнутри процесса, а не снаружи
Подобный поведенческий анализатор защищает обычно бразузеры, офисное ПО и ПО, с которым есть договор на контроль. Не все подряд.
Вопрос был в другом. Сами процессы могут быть против внедрения в них дллки антивируса.
Так он не внедряется во все подряд. Только в разрешенный вендором список. По сути это как разрешенный плагин
Речь о том, что далеко не все приложения, которые было бы полезно защитить, позволять внедрить в себя эту защитную dllку
Естественно. Более того, если в защищаемое приложение внедряются (легально естественно) дополнительные модули, то их тоже требуется тестировать на совместимость.
Дело в том, что поведенческий анализатор, контролирующий поведение, по сути начинает работу посоле внедрения эксплойта/плагина/допмодуля. И откатить назад к моменту внедрения в процесс близко к невозможному. Поэтому процесс убивается
При этом сейчас если не каждая, то каждая вторая игра\платфрма или еще чего идет с такой защитой, что при запущенной игре даже локальный отладчик в твоей любимой IDE не запускается.
С некоторых пор VirtualBox стал сильно параноидален к подобным трюкам. С ним работает это решение или нет?
В списке несовместимого софта его нет, в лабе сам VirtualBox у меня запустился нормально. Если интересует что-то конкретное, напишите в почту.
лет 10 назад нужно было заинжектить дллку в процесс фаерфокса для перехвата пары функций
все вроде работало у заказчика, но у некоторых тестеров падало
спустя много часов выяснилось, что касперский на рабочих станциях влезал во все процессы и рандомизировал адреса функций
сейчас это вроде как стандартная функция винды, интересно как обходите?
Если говорить про уязвимость в SMBv1 (WannaCry, Petya), то существовала она очень долго, и кто угодно, кто имел о ней информацию, мог её эксплуатировать незаметно. Но пользователи Traps были защищены.

А этому есть какое-то подтверждение?

О том, что были защищены?

Есть описание на сайте вендора.
researchcenter.paloaltonetworks.com/2017/05/traps-protections-wanacrypt0r-ransomware-attacks

Спасибо за ссылку, но по ней, по сути дела, обычная вендорская "вода" без конкретных примеров, как продукт реально кому-то помог. Там описано 4 способа предотвращения угрозы, пройдемся по пунктам:


WildFire Threat Intelligence:

Не работает, потому что угроза еще не известна. Плюс сама по себе фича не уникальна.


Local Analysis via Machine Learning: The local analysis malware prevention method blocks the execution of new and never-before-seen variants of WanaCrypt0r before they can compromise endpoints.

По описанию, предотвращает исполнение модификаций уже известных угроз. Для неизвестных опять не работает (или как повезет), если я правильно понимаю.


WildFire Inspection and Analysis

См. п. 1


Execution Restrictions

Сто лет как есть в винде штатно, Traps для этого не нужен.


Плюс еще очевидный момент — если бы "кто угодно" эксплуатировал уязвимость в сети с Traps и антивирус ее отловил бы, проблему обнаружили бы раньше. И вендор не упустил бы случая похвастаться, как его продукт помог отловить 0-day. ;) Отсюда вывод — либо не ловил, либо не сталкивался.


В сухом остатке реальных подтверждений того, что именно Traps тут бы помог, я пока не вижу. В идеале хотелось бы почитать о случае из реальной жизни, в крайнем случае — какой-то эксперимент типа того, что вы делали выше — создать изолированную среду с уязвимостью, поставить Traps в том виде, в котором он существовал до того, как эксплойт получил известность, запустить туда вирус и посмотреть, что будет. Причем сравнить со случаем, когда Traps нет, а есть защита "другими стиральными порошками".

Только полноправные пользователи могут оставлять комментарии.
Войдите, пожалуйста.