Security Week 21: сотни уязвимостей Adobe Flash

    7 июня компания Adobe закрыла критическую уязвимость в Flash Player (новость, сообщение компании). Уязвимость CVE-2018-5002 обнаружена сразу несколькими исследовательскими командами из Китая — речь идет об удаленном выполнении произвольного кода в результате ошибки переполнения буфера. Это уязвимость нулевого дня: на момент обнаружения она уже использовалась в целевых атаках на Ближнем Востоке. Эта достаточно серьезная проблема воспринимается как рутинная новость просто из-за названия пострадавшего продукта: ну кого уже может удивить RCE во флеше?

    Только в нынешнем году это уже вторая критическая уязвимость нулевого дня, первую срочно закрывали в феврале. Adobe Flash вообще стал образцовым примером небезопасного софта, он стабильно находится в топе самых часто атакуемых приложений, причем не покидает этот рейтинг годами. Он по-прежнему распространен у пользователей, несмотря на многолетние попытки заменить его объективно более эффективными технологиями. Независимо от отношения к технологии, Flash стал неотъемлемой частью истории Интернета. При помощи пары ссылок и одного графика попробуем посмотреть на Flash с точки зрения безопасности и не только.

    От славного прошлого к унылому настоящему

    Ранняя история предка Adobe Flash, программы для рисования SmartSketch — это полезный кейс про то, как делать ставку на развитие перспективных технологий в условиях недостатка информации. Вот представьте себя году в 1992-1993-м. Веба еще как такового нет, Интернет — игрушка для ученых и закрытый клуб любителей общения в почте и ньюсах. При этом перспективные технологии все описаны: есть стандарты для мультимедийных ПК, для носимых устройств, есть первые концепты планшетов. Непонятно лишь, что из этого будет развиваться и приносить деньги, и главное — в какой последовательности все эти технологии будут выстреливать. Разработчики SmartSketch сначала сделали неправильную ставку на одну из первых ОС для носимых компьютеров с сенсорным экраном (PenPoint).

    Система так и не дожила до коммерческого релиза, а SmartSketch пришлось быстро портировать на Mac OS и Windows, где программ для рисования и так было немало. И вот второе стратегическое решение — перепрофилировать проект под создание анимации, да еще и обеспечить возможность публикации в вебе — оказалось верным. В 1996-м продукт, переименованный в FutureSplash Animator, был выпущен. Примерно тогда же Microsoft осознала, что за Интернетом будущее, начала накачивать соответствующие проекты бюджетами на маркетинг и разработку и создавать то, что реально юзабельным станет только лет через 10-15 — всякое веб-телевидение и прочий интерактив. Интерактив — это в том числе анимация, и тут-то создателям софта карта и поперла.


    В том же 1996 году проект был приобретен компанией Macromedia (и переименован в Flash). К началу нового тысячелетия бесплатно распространяемый клиентский плагин стал самым распространенным расширением для браузеров. В 2005-м компания Macromedia была продана Adobe, и уже тогда это был не только софт для создания сложных веб-объектов, но скорее платформа для разработки ПО, у которой Flash Player стал просто способом доставки. Где-то вдали уже тогда можно было разглядеть отблески светлого будущего, в котором производители компьютеров, разработчики операционных систем и даже браузеров играют роль операторов кабельного телевидения, отвечающих за прокладку проводов. Настоящие бабки при этом зарабатываются на контенте, который создается и доставляется через платформу Flash, а ее всецело контролирует Adobe. Здорово, правда?

    Возможно, все так и было бы, если бы не развитие мобильных устройств, в которых был иной сценарий взаимодействия (перо и пальцы вместо мыши) и гораздо более слабое, чем у обычных ПК, железо. Flash присутствовал, скажем, в ОС Windows Mobile, но экспириенс был так себе. В 2007 году Apple выпустила первый iPhone, смартфон, в котором просмотр полноценного веба стал более-менее удобным. Отсутствие Flash часто преподносилось как один из серьезных недостатков устройства: без него в конце нулевых было невозможно стримить видео и аудио с множества ресурсов, использовать некоторые бизнес-приложения, и, конечно, нельзя было играть в какую-нибудь веселую ферму. В 2010-м, сразу после выпуска iPad, на котором тоже не было Flash, Стив Джобс пишет открытое письмо, где объясняет, почему Flash не появится на мобильных устройствах Apple никогда.


    Перечислю основные доводы Джобса против Flash коротко. Закрытый стандарт (Джобс оговаривается, что у Apple тоже много проприетарного, но стандарты веба должны быть открыты). В качестве контрпримера приводится движок WebKit, разработанный Apple и использующийся повсеместно (в письме упоминаются смартфоны Nokia, и тогда это было еще актуально!).

    Ресурсы и батарейка: приводится в пример неэффективная реализация кодека H.264 в Flash, не позволяющая полноценно задействовать аппаратные средства декодирования видео. Отсюда повышенная нагрузка на процессор и полчаса автономной работы. Заточенность на управление мышью и неспособность нормальной работы при управлении пальцами. Отсутствие мотивации у Adobe оптимизировать Flash-приложения для iPhone и iPad. Наконец, была упомянута и безопасность, и надежность («причина падения компьютеров Macintosh номер один»).

    Ой, че тут началось. Директор Adobe, конечно, отреагировал: «маки», мол, падают, потому что ось кривая. Про потребление батарейки — это все вранье. И, конечно, «мы за мультиплатформенность». Кажется, мечту о том, что программа пишется один раз и потом работает на чем угодно — хоть на ПК, хоть на кофеварке, реализовать так и не удалось. Проблемы эффективного кодинга как-то решаются, просто уже без Adobe и платформы Flash.

    Она относительно долго была довольно простым и удобным инструментом, с работающим механизмом доставки до огромной аудитории. А потом перестала таким инструментом быть: 25 июля 2017 года Adobe объявляет о сворачивании разработки и поддержки Flash. В качестве причины приводится универсальное применение тех самых открытых стандартов веба. С тех пор началась история Flash как зомби-платформы АКА мины замедленного действия на компьютерах миллионов пользователей.



    Насколько все плохо?

    Вопрос следует разделить на две части: насколько все плохо лично у вас и насколько все плохо у Adobe Flash в принципе с точки зрения безопасности? На первый вопрос легко ответить самостоятельно: зайдите на страницу сайта Adobe с виджетом проверки версии Flash Player. В моем случае браузер Chrome сначала попросил разрешения на запуск Flash, а потом показал, что версия у меня самая последняя, с запатченным зиродеем от 7 июня. Вроде все нормально: производитель браузера (Chrome) автоматически поддерживает актуальность плагина Flash. С другой стороны, вполне можно выключить данную функциональность совсем: у обычного пользователя предложение запустить Flash при загрузке страницы не вызовет особых вопросов. А ситуаций, когда даже самая последняя версия плагина критически уязвима — множество.


    Насколько все плохо у Flash Player в целом? Общее представление дает база уязвимостей CVE. Там для Flash Player на момент публикации была информация о 1047 уязвимостях, начиная с 2005 года. Наибольшее количество уязвимостей было добавлено в базу в 2015 и 2016 годах, как раз когда Adobe объявила о радикальном повышении безопасности платформы. У программы Adobe Reader, которая также довольно часто используется для кибератак, в той же базе CVE записано 368 уязвимостей — почти в три раза меньше. 86% уязвимостей Flash Player в базе CVE отнесены к 9-10 уровню безопасности, то есть это критические уязвимости. 79% напрямую отмечены как приводящие к выполнению произвольного кода.

    Цена небезопасного софта

    Не могу сказать, что я согласен с письмом Стива Джобса о Flash. Не стоит забывать, что оно было написано в 2010 году, когда посмотреть видео на Ютюбе в HTML5 без танцев с бубном было затруднительно (Flash там вообще был выключен только в 2015-м). Проигрыш Flash — это бизнес-история про технологию, которая начала терять позиции задолго до того, как стала чуть ли не самым часто атакуемым софтом.

    И вот представьте себя на месте Adobe: за 13 лет технология принесла компании немало денег. По ряду причин технологии пора на покой, но еще года три она будет приносить доход — из-за желания индустрии обеспечить совместимость. Разработка прекращена, инвестиций ноль, доход есть, красота! Но нет, какие-то (давно принятые) технические решения либо просто недосмотр по части безопасности вынуждают тратить немалые средства и ресурсы на поддержание в минимально пристойном виде продукта, который этого уже не заслуживает. Но приходится: иначе ущерб репутации, а то и юридические издержки.

    Было бы интересно почитать чьи-нибудь воспоминания с анализом: как так вышло-то? Желательно еще с советами, как такого избежать в будущем. Пока лишь можно сделать вывод, что инвестировать в безопасность надо чуть ли не до начала разработки продукта. Можно, конечно, подумать о том, что разгребать заложенные изначально косяки будут уже какие-то другие люди, после того как будут получены прибыль и бонусы. Но это несерьезный подход. Насколько ответственно подходят к разработке системообразующего софта в наше время? Узнаем лет через 10-15?

    Disclaimer: Мнения, изложенные в этом дайджесте, могут не всегда совпадать с официальной позицией «Лаборатории Касперского». Дорогая редакция вообще рекомендует относиться к любым мнениям со здоровым скептицизмом.
    «Лаборатория Касперского» 336,81
    Ловим вирусы, исследуем угрозы, спасаем мир
    Поделиться публикацией
    Комментарии 18
    • –1
      Он по-прежнему распространен у пользователей, несмотря на многолетние попытки заменить его объективно более эффективными технологиями.

      Нет никаких более эффективных технологий, не обманывайтесь.
      • –1
        Давно удалил этот плагин со всех машин. Ноут стал меньше греться, не выскакивают постоянные предупреждения браузера о небезопасном плагине и необходимости обновиться, постоянное скачивание и установка обновлений (на Маке оно точно не автоматизированно), и это не считая того что это даже не дыра в безопасности, а, скорее, решето или парадный вход. Вообще не понимаю как люди это всё терпят, и главное зачем? Даже если где-то встречается сайт требующий флэш — легче найти аналогичный ресурс, который его не требует. Хотя я уже и не помню когда в последний раз на такой попадал…
        • +2
          Вы путаете теплое с мягким. Ваш ноут кипел не от флеша, а от того что этим флешом делали. Как правило это были баннеры. От джс баннеров у меня ноут кипит точно так же. Насчет безопасности стоит отметить что флеш был самым популярным способом отображать медиа контент, от этого он хорошо изучен и там искались дыры. Сейчас дыры ищут в джс и браузерах и так-же их находят. Следите? www.cvedetails.com/vulnerability-list/vendor_id-1224/product_id-15031/opec-1/Google-Chrome.html
          В данный момент все технологии лишь чуть приближаются к тому что умел флеш 5 лет назад)
          Ну плюс ко всему нормальный ООП.
          • +1
            На ютубе, вроде, не так уж и много баннеров. Дыры в браузерах есть, да, но добавлять к ним ещё и флэшевые — не самая хорошая идея. Да и сам установщик флэша, помнится, постоянно пытался McAfee поставить, не убери случайно галку. На андроид его проблемно было поставить, на iOS отродясь не бывало, а иногда так хотелось.

            Не спорю, когда то он был очень хорош, и почти безальтернативен, но сейчас он скорее раздражает, т.к. незаменимого функционала не имеет, а проблем в безопасности, необходимости обновления, и несовместимости с мобильными браузерами добавляет.
          • 0
            Подскажите, как его удалить из Windows 10, а то в апдейтах постоянно мелькает, и файлов от него кучка.
          • –2
            Вообще не понимаю как люди это всё терпят, и главное зачем? Даже если где-то встречается сайт требующий флэш — легче найти аналогичный ресурс

            Вконтактик требует флеш для проигрывания музыки. Хотя раньше работало без него. Так что нет причин удивляться популярности флеша.
            • –2
              Как минимум лет пять музыка и видео ВК работают через HTML5. Как удаливший флеш из своего фаерфокса я гарантирую это, только что запустил — тоже работает. Кроме того, в мобильной версии ВК флеша вовсе никогда не было, а музыка тоже играет
              • –1
                Я знаю что раньше работало без флеша. Говорю же, что-то изменилось


                Но это уже оффтоп.
                • –2
                  У меня всё работает прямо сейчас в Firefox без флеша. Может, вы просто сломали mp3-кодеки в своей системе?)
                  • 0
                    У меня тоже без флэша всё работает — специально проверил. Видимо у Вашего браузера проблемы какие то возникли или ВК глючит.
                    • +1
                      И какой URL по ссылке на установку?
                      • +1
                        Проверьте свой комп на вирусы/браузер на трояненые плагины, могут ждать неприятные открытия.
                        • 0
                          У меня такое было в Chromium, потому что он не умел mp3 из коробки.
                          Какой у вас браузер?
                    • +3
                      Да, золотые были времена. Один неловкий щелчок по ссылке в IE6, и у тебя сразу открывается 100500 закладок с «порнухой» (на самом деле с дорвеями и ссылками и малвар), миллион алертов с предложениями увеличить член, ускорить работу компьютера и «удалить вирусы». В фоне заботливо скачивается и запускается дроппер адвара, малвара, троянов и браузер хайджекеров, и прописывает все это дело в автозагрузку :) Если особо повезет, можно было словить что-нибудь экзотическое, сразу стирающее таблицу разделов с диска, без лишних вопросов.
                      • 0
                        В фоне заботливо скачивается и запускается дроппер адвара, малвара, троянов и браузер хайджекеров, и прописывает все это дело в автозагрузку

                        Почему бы не запускать браузер из-под урезанного пользователя?
                        сразу стирающее таблицу разделов с диска, без лишних вопросов.

                        У вас flash из-под рута работал?
                        • 0
                          Это когда было? Я тогда слов таких не знал.
                      • +1
                        Меня, как сисадмина, всегда убивало нежелание Adobe отдать нормальный, полный, msi-ник для установки этого самого флеша. Я излазивал все странички с загрузками, заключал с Adobe соглашение о распространении, которое заканчивалось вроде через год, но всё равно, чтобы скачать инсталлятор приходилось постоянно делать массу лишних усилий. Проще было на рубоде взять готовую прямую ссылку на загрузку.
                        • 0
                          Лет 5 назад тоже искал msi для распространения через WSUS Package Publisher. Оказалось, что WPP понимает каталоги для MS SCUP. У меня таким образом сам качает обновы для Adobe Reader, Flash Player. Гуглите Adobe SCUP Catalog.

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

                        Самое читаемое