Книга: Отъявленный программист: лайфхакинг из первых рук
Про ФБР и тренды ИБ
Про ФБР и тренды ИБ
Не знаю ничего про твою текущую работу, но вот что интересно. Я лично не знаком с рядовыми айтишниками, которые стали долларовыми миллионерами. Насколько я в теме, ты — один из них. Дает ли это какие-то особые ощущения?
Теперь долларовых миллионеров столько, что их никто не считает. Даже миллиардеров и то не считают, ибо слишком много. Долларовых миллионеров только среди моих очень близких друзей я могу перечислить несколько, и никакой элитарности в них не наблюдается.
До сих пор ношу майку, купленную больше пяти лет назад. Всю в дырках и заплатах. В тире надо мной смеются. Спрашивают: «Это дырки от пуль?»
Так что миллион — это очень мало на самом деле. Это верхне-средний класс. С другой стороны, одни интересные люди предлагали мне два «лимона». Я спросил у них, что можно сегодня купить на эти деньги. Интересные люди неправильно меня поняли и, не торгуясь, предложили сразу двадцать, но были посланы, потому что на текущие расходы я и сам заработаю, а большего мне не надо. [1 http://en.wikipedia.org/wiki/Operation_Aurora]
Давай еще немного погутарим про интересных людей, так и шарящихся вокруг тебя. Слышал из новостей, что в США у тебя было неприятное приключение — однажды к тебе с обыском нагрянуло ФБР...
Очевидно, меня подозревали и что-то искали, а потому изъяли все, что могли. Никаких обвинений не предъявляли. Так что по существу мне рассказать нечего.
Чем все закончилось?
История имела приятное продолжение и закончилась внесудебным урегулированием с выплатой мне отступных в размере зарплаты сферического программиста из РФ за несколько лет, так что никакие это не потери, а сплошные приобретения. Выводы? Все, что не убивает, делает нас сильнее. Хотя кастрированный кот с этим может быть не согласен.
Подобные бодрящие дух инциденты регулярно случаются с известными специалистами по ИБ и «полевыми хакерами». Пройдя через это лично, что посоветуешь своим коллегам?
С тех пор, когда внезапно ФБР постучалось в дверь и изъяло все железо, флешки и все-все-все, у меня появился ценный жизненный опыт. Теперь время от времени самые важные для меня данные я сбрасываю на «винт» и кладу в банковскую ячейку. Это — мои личные файлы (не для чужих глаз). А все, что не представляет секрета, я активно раздаю народу. В тот раз мне пришлось собирать себя по кусочкам, качая файлы взад у тех, кому я их давал ранее. Месяца за три я собрал себя процентов на девяносто, кое-что оказалось утеряно безвозвратно, ну и фиг с ним.
Переходя к твоей специализации — реверсинг любого кода, анализ вирусов и разной малвари. Расскажи про их эволюцию — вначале были стелз-вирусы, затем пришла эпоха полиморфов, а что было потом?
А потом «замысловатые слова» посыпались как из рога изобилия. Advanced persistent threat (или сокращенно APT) обычно включает в себя сокрытие факта своего присутствия в системе (он же Stealth, он же Root-Kit), активное/пассивное противодействие обнаружению и удалению и т. п.
Полиморфизм — это частный случай метапрограммирования. В computer science под метапрограммированием обычно подразумевают программу, результатом работы которой является другая программа. Пассивные детекторы сканируют файлы в поисках уникальных последовательностей символов. Активные (их принято называть «проактивные») детекторы работают по принципу поведенческого анализа. Грубо говоря, последовательность вызова API-функций — это метрика. Поведенческий анализ распознает определенные сценарии (например, инъекцию кода в доверенный процесс) безотносительно того, как именно они реализованы, и последние несколько лет идут кровопролитные бои за видоизменение поведенческих сценариев до состояния, когда они становятся практически неотличимы от легитимных сценариев популярных программ.
Изменились и угрозы. Если во времена MS-DOS вирусы были «проблемой грязных рук» и не затрагивали тех, кто пользовался лицензионным программным обеспечением, то сейчас основная масса вредоносных программ распространяется через документы, эксплуатируя ошибки проектирования. Дороже всего приходится расплачиваться за ошибки в сетевом стеке — чтобы подхватить заразу, достаточно всего лишь интернет-подключения, даже браузер запускать не обязательно, хотя ошибки в сетевом стеке — большая редкость и гораздо чаще хакеры проникают через святую троицу — pdf, jar, swf. По умолчанию браузер загружает их автоматически, и если не установлены обновления — ждите проблем.
Вообще, полиморфическим технологиям сейчас переломили хребет?
Отнюдь. Во времена MS-DOS вирусы включали в себя генератор кода, доступный для анализа. Сейчас же код генерируется удаленно на хакерском сервере и отдается по http-запросу. Или... не отдается. Сервер проверяет IP-источник запроса, и в случае каких-либо подозрений последующие ответы возвращают 404 или чистую страницу. К тому же, хакеры обязательно проверяют IP на принадлежность к антивирусным компаниям и разным правительственным лабораториям. Да и сам генератор в любом случае остается недоступен. В самом лучшем случае вы можете его купить на черном рынке за наличные деньги, но чаще всего такая возможность недоступна, а потому в распоряжении аналитиков есть лишь отдельные экземпляры работы генератора, в которых необходимо выделить неизменную часть, что существенно затрудняет разработку детектора.
К тому же централизованный генератор хакеры могут обновлять так часто, как им вздумается. Прошли времена, когда вирусы работали только под MS-DOS и только под Intel x86. Сейчас необходимо распознавать не только машинный код x86, ARM, PowerPC, не только байт-код (Java, Flash), но и бесчисленное множество скриптовых языков (JavaScript, VBScript, Python).
Например, на Маках Python идет предустановленным, что открывает для хакеров новые перспективы. Кстати, Python замечательно распространяется не только в виде скриптов, но и байт-кода.
На фоне всего сказанного, что можно сказать про перспективы традиционного автоматического лечения вирусов?
Автоматическое лечение (удаление троянцев) неуклонно сдает свои позиции, и зачастую лечение сводится к переустановке системы. Кроме того, лечение возможно только на end-points. Типичный IPS в лучшем случае предотвращает атаку, но не в состоянии обезвредить уже атакованные системы, поскольку IPS находится между атакуемым и атакующим.
Вообще сейчас перед хакером стоит другой приоритет — любой ценой передать управление на свой код, например, расположенный в файле документа и не рассчитанный на исполнение. Эта новая доминанта содействовала развитию веера новых технологий от NOP Slides до Heap-Spay и Return oriented programming (оно же ROP).
Крис, как человек изнутри этой темы, поясни, как антивирусная индустрия вообще справляется с таким огромным потоком новых зловредов? Сколько «дохлых тушек», положенных реверсеру на стол, он способен физически обработать в сутки?
Этим занимаются специально обученные люди и машины, причем машины все более активно вытесняют людей. Все, что можно автоматизировать, — давно автоматизировано. Сейчас этих тушек столько, что никаких человеческих ресурсов на них не хватит. В качестве примера устройства этого процесса могу посоветовать интересную презентацию, ищите ее по ключевым словам: Adobe Malware Classifier.Вообще, дизассемблировать каждую тушку зловреда — это все равно, что хватать вражеских солдат по одному и допрашивать. Оно, конечно, полезно. Добыть языка. Одного. А лучше двух. Но что они могут рассказать? Стратегические планы верховного командования им все равно не известны.
Сегодня зловреды уже не сами по себе. Они — пушечное мясо на поле кибер-войн, сегодня от них зависит чуть больше, чем ничего. Сейчас важно суметь понять устройство хакерской экосистемы — круговорота машинного кода и наличных денег.
Каковы сейчас самые общие тренды ИБ в рамках этого круговорота?
Основные тренды уже сидят, причем сидеть им еще долго — лет двадцать, а то и больше. На помощь антивирусам пришли FBI, CIA, US Secret Service и другие страшные слова. Поэтому сейчас маржа везде падает, а посадки растут.
Самый последний писк моды — в прицел атаки попали встраиваемые устройства. В первую очередь это, конечно, роутеры. Зловредный код в роутере очень сложно обнаружить. А тем временем хакеры наши способ проникнуть внутрь камер наблюдения, подключенных к Ethernet, например используя процессорные мощности для майнинга биткоинов. На очереди умная бытовая техника (например, холодильники), а также атаки на бортовой компьютер автомобиля — это фантастика новой реальности.
Куда растет современный рынок коммерческих решений в области ИБ? Насколько я знаю, это одно из самых быстрорастущих и популярных направлений вообще в ИТ?
У меня лет двадцать опыта работы в индустрии безопасности, в том числе и на позиции архитектора. Я хорошо знаю рынок и видел множество примеров успешных начинаний, впрочем, неуспешных примеров было еще больше. Рынок систем безопасности действительно очень быстро растет. И растет он потому, что совсем недавно вирусами занимались школьники, «подонки» и прочие «креативные» личности. Затем ПК подключили к банкам, и тут оказалось, что на троянах можно делать деньги.
Рекорд в этом деле — двадцать лет отсидки за шесть доказанных нулей. Накинем еще один нуль за счет недоказанных, но... когда к Интернету подключили госучреждения, когда спецслужбы полностью компьютеризировались, внезапно выяснилось, что хакеры — это не просто «оболтусы с Дерибасовской», а угроза национальной безопасности. Уже несколько лет, как действия в кибер-пространстве США могут официально расцениваться как объявление войны и быть достаточным основанием для введения реальных войск на территорию противника.
Поэтому, как только государство появилось на рынке ИБ, домашние пользователи перестали быть в центре внимания просто потому, что у них нет пары десятков миллионов, с которыми они готовы расстаться (и еще столько же заплатить за поддержку). Причем государства всех стран крайне смутно понимают, что им нужно покупать для своей безопасности, посему покупают они много лишнего.
В итоге все крупные игроки, ну то есть абсолютно все, купили огромное количество решений безопасности, и на гребне следующей волны пришли системные интеграторы, пытающиеся собрать эту груду разрозненного говна воедино. Но и этот гребень уже пошел на спад, а на горизонте маячит новый третий. В практическом плане это означает, что скоро предстоят сделки на миллионы и миллиарды долларов, но «повезет» здесь только тем, кто к этому уже готов и у кого уже есть готовые решения.
Напомню, что в свое время антивирусы для ПК дали рождение многим нынешним компаниям-миллиардерам, возникшим буквально на пустом месте без каких-либо инвестиций. Но это было относительно давно, в девяностых. Впрочем, суть осталась неизменной — большие деньги зарабатывает тот, кто первым предлагает «спасительную» услугу, когда еще никто толком не осознал своих потребностей и необходимостей.
Развивая эту тему, можно ли поговорить о третьем гребне волны? Конечно, тебе это не интересно, но среди наших читателей-айтишников многие неравнодушны к деньгам. Можно ли привести примеры пока не заполненных ниш, чтобы молодые и амбициозные специалисты по ИБ с твоей помощью могли бы разглядеть, где же лежит этот новый и такой вожделенный Клондайк?
Чего только не ломают хакеры сегодня! И если на POS-терминале антивирус еще можно представить (хотя с большим трудом), то, например, на surveillance camera антивирус тупо не встанет потому, что это конструктивно не предусмотрено. Хотя де-факто там, скорее всего, ARM и портированная версия Linux. Такая камера вещает потоковое видео, и там хакеры уже нашли дыры, позволяющие заливать шелл-коды со всеми вытекающими отсюда последствиями.
Вот мой личный пример из этой оперы. Недавно я прикупил пару Ethernet-камер для дома. С камерами идут аккаунты на сервере их производителя с персональным доменом третьего уровня — заходи себе через браузер, введи пароль и смотри удаленно, что там дома у тебя происходит. Два сервомотора обеспечивают свободу наведения, а ИК-подсветка видит даже в темноте — все было бы хорошо, если бы не было так плохо.
Жизнь показала, что эти камеры оказались дырявые, и в них уже поселился ботнет. Сетевым червям даже мозги напрягать не нужно: ваш домен третьего уровня (точка входа в контрольную панель камеры) — это, грубо говоря, число (в данном случае) очень короткое, а потому все камеры сканируются перебором влет и тут же автоматически взламываются. А вот обнаружить такую атаку — затруднительно. Ну, то есть не то, чтобы совсем затруднительно... Например, если в камере не включен протокол https, то шелл-коды ловятся сниффером, а если включен? Мне повезло, что в моем случае производитель сделал фейковый https (ну, практически фейковый — у моей камеры нет ресурсов для шифрования видео, потому по https она только пароль с логином передает, а все остальное — гонит через http).
Поэтому мне пришлось после работы самолично поковырять такую камеру из-за ее заражения, и я обнаружил, что ботнет откликается на определенные http-запросы к камере. Детектор зараженности, быстро написанный мною на «питоне», укладывается меньше чем в сотню строк. Если накинуть еще пару сотен, то можно на Squid proxy через icap-фильтры давить попытки таких червей проникнуть в камеру, тупо заворачивая их «на юг».
Другой личный пример. Видел в местном магазине микроволновку с Ethernet. По сети она сама выкачивает из Интернета время и режимы приготовления тех или иных блюд, используя сканер штрих-кода с упаковки товара. От наших электронщиков слышал, что там при старте прошивка грузится в ПЗУ, распаковываясь в память, и что холодный рестарт, возможно, спасет домохозяек. Но что такое холодный рестарт для микроволновки, особенно в США? Если черви будут атаковать потоково, просто устанешь перезагружаться.
Подводя итог — через несколько лет на рынке бытовой электроники будут миллиарды (!) подобных «умных» устройств, подключенных к Интернету, многие из которых — на самом деле не умные, а очень даже глупые (потому как дырявые и уязвимые). Особенно, если они подключены к ПК. Тогда тот, кто заразил ПК, может контролировать весь «умный» дом удаленно.
Но известные мировые производители бытовой электроники разбираются в безопасности как «тузик в апельсинах» (смотрите два моих личных примера выше). И потому они будут вынуждены выкупать сторонние решения. Все это — огромный, только зарождающийся рынок. И он просто гигантский! Поверьте, что рынок ПК в сравнении с ним «нервно курит в сторонке». Сюда уже устремились первые и пока «совсем зеленые» поставщики решений ИБ.
В первую очередь это стартапы, один из которых недавно приобрел очень известный бренд бытовой электроники за деньги, которые лично мне даже не снились. А в том стартапе работает всего несколько человек, и они, между нами говоря, ничего нового и не сделали (слегка пропатченная OpenBSD, чуть переделанная OpenJava, а также расширения для отражения атак типа use after free). Но денег уже заработали на всю жизнь.
- 8.2. Языки программирования Виды программирований
- 1.1. Введение в объектно-ориентированное программирование
- 3.2.4. Ошибки при задавании вопросов
- Покупатель на крючке. Руководство по созданию продуктов, формирующих привычки
- 11.2. СВОЙСТВА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
- Сущность процесса миграции
- Особый процесс, или обратная миграция
- Ошибки проектирования базы данных
- Профилактика повреждений баз данных InterBase
- Повышение производительности приложений с помощью хранимых процедур
- Простейшие трансформации
- СТРУКТУРА ПРОСТОЙ ПРОГРАММЫ