В продуктах Seagate и Western Digital обнаружены уязвимости

Две разные группы экспертов, не сговариваясь, опубликовали информацию о том, что устройства компаний Seagate и Western Digital содержат ряд уязвимостей. Особенно неприятные баги обнаружились в жестких дисках со встроенным шифрованием: My Passport и My Book.

Слабые места в Seagate Central network attached storage (NAS) были обнаружены компанией Docker software и экспертом Эриком Виндишем (Eric Windisch). Исследователь описал найденные локальные уязвимости в своем блоге, передает xakep.ru.

Во-первых, Виндиш пишет, что устройства Seagate «из коробки» оснащены очень простым, распространенным паролем, который очень легко узнать. Во-вторых, веб-приложение для NAS позволяет внести несанкционированные модификации в IP-адрес и имя хоста.  В-третьих, обновление прошивки происходит через HTTP, без подписи, что открывает широкие возможности для атак типа man-in-the-middle. Локальный атакующий также может повысить свои привилегии в системе благодаря тому, что некоторые системные файлы открыты для записи (mode 777).

Эксперт уверен, что похожие баги также присутствуют у девайсов линейки BlackArmor, так как код прошивок весьма похож. Виндиш сообщил Seagate о найденных проблемах еще в июле 2015 года, выждал положенные 90 дней и теперь, с чистой совестью, опубликовал информацию о своих находках. Представители Seagate еще летом пообещали эксперту выпустить обновленную версию прошивки, однако этого до сих пор не случилось.

С устройствами компании Western Digital все обстоит несколько хуже. Группа исследователей представила доклад (.pdf), из которого становится ясно, что устройства WD, оснащенные функцией встроенного шифрования «на лету» и защищенные паролем, это настоящее решето. Злоумышленник может получить практически любые данные с диска, даже не зная пароль, необходимый для их расшифровки.

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

Устройства с определенными микроконтроллерами на борту имеют серьезные проблемы с генератором случайных чисел (RNG), который используется как системой шифрования, так и во время обновления прошивки. Уязвимости в системе обновления прошивки позволяют осуществить атаки типа evil maid и bad USB, что в итоге позволяет просто воспроизвести ключ.

«Мы разработали сразу несколько атак для извлечения данных с защищенных паролем и шифрованием внешних жестких дисков, — пишут исследователи. — В дополнение к этому, мы обнаружили ряд уязвимостей, таких как возможность модификации прошивки и клиентского софта, работающего на компьютере пользователя. Благодаря атакам типа evil maid и bad USB возможно получить учетные данные пользователя и внедрить вредоносный код».

Компания Western Digital знает о проблемах, однако патчи для своих устройств выпускать не спешит. Представили WD дали комментарий изданию SecurityWeek:

«WD сотрудничает с независимыми ИБ-специалистами и ведет диалог, относительно опубликованных ими наблюдений о безопасности некоторых моделей жестких дисков My Passport. Мы продолжим оценивать важность их изысканий».

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

Новый способ перепрограммирования NES Tetris, не выходя из игры

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

Ранее в этом году стало известно, что один из игроков классического «Тетриса» впервые нажал на «kill screen» игры, активировав «аварийный режим» после невероятного 40-минутного прохождения 1 511 строк.

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

Некоторые игроки используют этот «экран убийства» и ряд сложных манипуляций с памятью, чтобы закодировать новое поведение в версиях NES Tetris, работающих на немодифицированном оборудовании и картриджах.

Ещё с 2021 года было известно о базовом методе внедрения внешнего кода в NES Tetris, когда игроки исследовали декомпилированный код игры.

Совсем недавно Displaced Gamers выложили видео, где подробно рассказывается, как перепрограммировать «Тетрис», играя в него, с помощью кодирования в таблице высоких результатов.

 

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

Зачастую именно это неожиданное прерывание является причиной перескакивания кода в самую глубь оперативной памяти, где «мусорные» данные считываются как код, что приводит к ошибке в игре.

Именно этим «прыжком» игроки научились управлять с помощью того, как Tetris обрабатывает потенциальные вводы при запуске на японской версии консоли Famicom.

Японская Famicom оснащается двумя контроллерами, подключаемыми к устройству, в отличие от американской Nintendo Entertainment System (NES). Через порт расширения на передней панели системы игроки могут подключить контроллеры сторонних производителей.

Код игры Tetris считывает входные данные с этого «дополнительного» порта контроллера, к которому можно подключить два дополнительных стандартных контроллера NES с помощью адаптера.

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

Таким образом, когда эта процедура перехода будет прервана в результате сбоя, в этой оперативной памяти будут храниться данные, представляющие кнопки, нажимаемые на контроллерах. Это дает игрокам потенциальный способ контролировать, куда именно отправится игровой код после сбоя.

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

Если поставить «(G» в целевую часть таблицы высоких результатов B-Type, то можно заставить игру перейти в другую область таблицы высоких результатов, где она начнет последовательно считывать имена «голым металлическим» кодом, где буквы и цифры представляют собой операционные коды для процессора NES.

В области ввода имени могут быть использованы лишь 43 возможных символа и 10 различных цифр, которые могут быть частью высокого балла. Это означает, что только небольшая часть доступных инструкций опкода NES может быть «закодирована» в таблицу высоких результатов, используя доступную поверхность атаки.

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

Из-за отсутствия системы сохранения, работающей от аккумулятора, все эти высокие баллы придется набирать хакерам каждый раз, когда они будут включать Tetris на стартовой NES.

Ограниченное пространство в таблице высоких результатов также не оставляет места для прямого кодирования сложных программ поверх реального кода Tetris.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новости на портале Anti-Malware.ru