Уязвимость во Flash'е или кто думает о нашей безопасности - Общий форум по информационной безопасности - Форумы Anti-Malware.ru Перейти к содержанию
WindXpForre

Уязвимость во Flash'е или кто думает о нашей безопасности

Recommended Posts

WindXpForre

Не моё - взято на Хабре.

"Теплым зимним вечером сидел я за компьютером и решил расслабиться, поиграв на пианино. Так как не фортепьяно, не синтезатора у меня нет, я, воспользовавшись поиском, начал искать онлайн пианино с примерами для обычной клавиатуры QWERTY.

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

Не поверив, попытался еще что-нибудь набрать и снова услышал звук. Начал разбираться из какой программы идет звук, ведь ту страницу с пианино я закрыл, а страница с форумом осталась. Методом тыка, закрыв несколько вкладок, был найден источник звуков. Им оказалось Flash пианино ZebraKeys, размещенное в сообщении на форуме.

Поняв, что это серьёзная уязвимость. Начал пробовать в других браузерах (до этого было в Oper'е).

Проверка показала:

Mozilla — звук издавался во всех вкладках, в том числе, когда фокус находится просто на странице;

Chrome — только в текущей вкладке и когда фокус находится в любом Flash приложении на этой странице;

IE 9 — только в текущей вкладке, в том числе, когда фокус находится просто на странице.

Так как данная уязвимость может привести к перехвату личных данных, в том числе паролей, были написаны письма компаниям Opera, Mozilla (в Mozilla Security Bug Bounty Program) и Adobe. Так как английским в разговорной форме не владею, воспользовался Google Translate.

В течение суток, первой ответила Opera, поблагодарив за найденную ошибку и исправив её в короткое время, причем переключив меня на русскоговорящего сотрудника, чтобы было легче донести мысли.

Теперь приложения Flash получают клавиатурные нажатия, только когда какое-нибудь Flash приложение находится в фокусе, даже в другой вкладке. Разделить по вкладкам, как в Chrome нельзя, так как у Chrome отдельные процессы на каждую вкладку.

Mozilla ответила позднее, сказав, что повторить у них не получается, опишите какая ОС и плагины установлены. Ответив, что ОС Windows и такие-то плагины, ждал дальше ответа, и с удивлением услышал опять, не удается повторить проблему. Написав им еще раз, что ОС Windows, а не Linux и не Mac OS, наконец-то услышал ответ от Mozilla, что да, повторить удалось, мы пробовали на других ОС, попробовали на Windows и услышали звук. Поблагодарив за моё упорство и найденную ошибку, также написали, что баг известный (привели ссылку) и данную проблему уже решают. То есть 3000$ на синтезатор по программе Mozilla Security Bug Bounty Program мне не видать. Написав им, что сообщение о уязвимости могли и сами написать, задним числом. К слову, прошло чуть меньше месяца и в новом Mozilla 9 данная уязвимость присутствует и можно «поиграть на пианино прямо в строке адреса».

Adobe до сих пор не ответила, хотя я написал на, с трудом найденный в интернете адрес, support [] adobe.com Возможно его и не существует, но и на сайте без регистрации форма для отправки чего-либо не найдена.

Итоги

Уязвимость в том или ином роде есть во всех браузерах на Windows, так как Flash на этой ОС использует Windows API, вместо того, чтобы получать клавиатурные события через Browser Plugin API (NPAPI). Есть способ заблокировать чтение клавиш для всех flash приложений, но невозможно это сделать для отдельных приложений. То есть или все flash приложения будут читать клавиатуру, или не будет ни один (спасибо за данные разъяснения сотруднику Opera).

P.S. На той страничке форума есть прекрасное пианино, которое будет интересно для людей, владеющих десятипальцевым методом печати, так как там можно открыть одновременно примеры мелодий (какую клавишу на обычной клавиатуре нажать) и само пианино. Очень удобно. Также в их группе на FaceBook есть много других примеров".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • demkd
      Да есть такой баг, выбор целого диска не предусмотрел.
    • PR55.RP55
      Сейчас попробовал добавить файлы и... E:\ [Error: 0x3 - The system cannot find the path specified. ] т.е. Файл > Добавить в список >  Все исполняемые файлы каталога. или пишет вышеуказанную ошибку или вешается. Это и на Win 7 и на Win 10 и с HDD дисками и с USB Диски нормально открываются т.е. доступны.
    • demkd
      А ничего с этим не сделать старые версии windows проблемные там система сама балуется внедрением потоков при очень низком уровне защиты системных процессов, а эцп вообще ничего не гарантирует когда речь заходит о внедренных потоках, зловред вполне может внедрить поток в системный процесс как с помощью подкинутой в правильное место "легитимной" dll, так и просто создав его, а тот уже в свою очередь внедрить в следующий системный и ищи концы среди вот этого вот всего.
      Все это усугубляется тем что тот же SVCHOST.EXE который был когда запущен может оказаться совсем не системным, хотя путь у него будет правильным как и файл будет иметь валидную эцп и запущен он будет якобы services.exe, в 10ке такое провернуть уже сложнее, а вот 7ке легко, потому урезать лог по принципу "оба файла имеют эцп" никак нельзя.
    • PR55.RP55
      uVS v5.0.6v x64 [http://dsrt.dyndns.org:8888]: Windows 7 Home Basic x64 (NT v6.1 SP1) build 7601 Service Pack 1 [C:\WINDOWS] (!) ПРЕДУПРЕЖДЕНИЕ: Ф зафиксировал внедрение потока C:\WINDOWS\SYSTEM32\SERVICES.EXE [428] внедрил поток [380] в процесс: C:\WINDOWS\SYSTEM32\SVCHOST.EXE [876]   C:\WINDOWS\SYSTEM32\SVCHOST.EXE [1060] внедрил поток [1276] в процесс: C:\WINDOWS\SYSTEM32\SVCHOST.EXE [336] и т.д.  А есть ли смысл выводить в лог десяток - другой аналогичных записей, если все эти файлы  в базе проверенных и у них легальная цифровая?  
    • demkd
      ---------------------------------------------------------
       5.0.6
      ---------------------------------------------------------
       o Добавлено 4 новых ключа автозапуска в список для проверки.

       o Добавлен новый статус "UWP".
         Его получают пакеты приложений универсальной платформы Windows (Universal Windows Platform Apps).

       o Добавлен новый твик #46: Отключить Windows Terminal и очистить реестр.
         Если Windows Terminal активен, в лог выдается предупреждение.
         При обнаружении подозрительных настроек Windows Terminal в конфигурационных файлах, реестре или в каталогах с фрагментами в лог выводится предупреждение.
         Если подозрительная строка найдена в JSON-файле настроек, то в список автозапуска добавляется этот файл с содержимым со статусом "подозрительный".
         В любом случае рекомендуется отключить Windows Terminal, а еще лучше немедленно удалить это из системы.
         Windows Terminal — крайне уязвимый и неоптимизированный кусок кода.

       o Улучшена функция масштабирования удаленного рабочего стола, повышено качество аппаратного апскейла, добавлен параметр "Резкость".
         (Требуется D2D и DX11 на клиентском компьютере)

       o Исправлена старая ошибка в функции отправки ответов серверной части uVS.
         Из-за ошибки в редких случаях могло происходить подвисание серверной и клиентской частей uVS при работе с удаленной системой.

       o Исправлена ошибка в функции завершения серверной части при выходе из удаленной системы.

       o Оптимизирована функция подключения к удаленной системе.

       o Оптимизирована функция сжатия фреймов для DDAL/DDAw режимов: шрифты теперь не теряют яркость, а картинка DDAL практически неотличима от DDA1/DDA2 на глаз, 
         при этом размер сжатого фрейма вырос лишь незначительно.

       o Добавлена x64 версия report_crash.

       o Обновалена функция сбора дампа при падении uVS, функция перенесена в утилиту report_crash, что позволит
         получить максимально точную информацию о произошедшей ошибке.

       o Временно добавлена аппаратная функция обнаружения разрушения списка автозапуска в памяти uVS, что позволит отлавливать сложные в обнаружении ошибки.
         Есть 5 дампов, по которым не удалось выяснить точное место ошибки и эта функция должна помочь найти проблемное место.
         Функция снижает скорость формирования списка на ~5% на современных процессорах.

       o Исправлена ошибка в функции подсчета удаленных ключей реестра.

       o Исправлена ошибка в функции записи параметров при выходе из uVS.

       o Исправлена ошибка разбора JSON-файлов.

       o Исправлена ошибка проверки переменных окружения загруженного пользователя.

       o Из списка доступных для подключения IP-адресов удалены адреса активных VPN.

       
×