habrahabr

Shit и меч

  • понедельник, 21 апреля 2014 г. в 03:10:53
http://habrahabr.ru/post/220083/

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

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


Что мы имеем на сегодняшний день? Два больших класса вредоносных программ: массовые (Zeus, ZeroAccess, Sality и т.д.) и APT (читай, вредоносы, написанные под конкретные задачи). Кто у нас основные покупатели антивирусных продуктов? Правильно, крупные компании. Основной ущерб им наносят именно угрозы класса APT, потому что массовое уже все задетектированно. А теперь, внимание — кто мешает отслеживать новые методы обхода (на которых, собственно, и базируется APT)?

Встраивание кода (inject) по книжке Рихтера уже, конечно, не прокатывает (слава байтам, хоть это антивирусы отлавливают). Две самые ходовые техники на сегодня — это CreateProcess/MapViewOfSection/QueueUserAPC/ResumeThread и Shell_TrayWnd/SetWindowLong/SendNotifyMessage. А известны они в узких кругах трояномейкеров с 2009 года (а то и раньше), между прочим. Кто мешал их выявить и закрыть — сие тайна, покрытая мраком.

Простой пример: инжект в svchost.exe путем запуска его в приостановленном состоянии — неужели сложно сделать проактивное правило, что svchost.exe всегда запускается из-под учетки System, а не от имени любого другого пользователя? Вот поэтому APT и существует, потому что разработчикам антивирусов это все глубоко по барабану. У них принцип работы другой — вот будет зараза на сто тысячах компов, мы сигнатурку добавим, а проактивку нечего подкручивать, и так, зараза много ресурсов и памяти кушает.

Складывается такое впечатление, что антивирусные аналитики только и заняты разбором очередной APT угрозы, с мыслями: «Блин, а чо — так можно было»? То, что на всяких античатах, васмах и дамейджлабах вовсю барыжат малварью с различными новыми трюками и регулярно устраивают разбор полетов, им, похоже, невдомек.

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

Каждый отчет об очередной кибершпионской компании начинается со слов: в результате расследования, заказанного компанией, пожелавшей остаться неизвестной, наши «эксперты» обнаружили новый вредонос, действующий в течении N лет (где N варьируется, в среднем, от двух до пяти). То есть APT не детектируется антивирусами (что логично), а находится вручную. И где же все эти хваленые проактивные технологии?

Один из посылов заметки следующий — доколе антивирусные конторы будут нас кормить маркетинговой лапшой? Может стоит взяться за работу (постоянно мониторить, что происходит в стане врага), а не строчить отчеты в стиле: мы тут такое нашли!

Отдельный привет поклонникам песочниц, как-то в комментах мне попеняли, что sandbox спасет отца русской демократии. Однако не стоит забывать принцип, все что может сделать пользователь, сделает и программа, им запущенная. Для особо интересующихся темой изоляции — см. проект Qubes OS от Джоаны Рутковской.

Тут всегда есть противоречие между удобством и безопасностью, чем безопаснее, тем неудобнее. Напрашивается сразу аналогия с диктатурой и демократией. Пока антивирусники будут продолжать в Windows-like стиле безопасности (что не запрещено, то разрешено), ничего хорошего не будет.

Снова пример: svchost.exe находится в доверенных приложениях, потому что обновление Windows идет через него. И что дальше? Да сделайте правило, что разрешено заходить только на сервера Microsoft! Но нет, а вдруг мы обновляемся внутри корпоративной сети через wsus? Поэтому тут рулит Sophos, он по дефолту даже себе самому обновляться не разрешает (нужно самому правило прописывать).

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

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