stringtranslate.com

Прошивка

Прошивка обычно хранится в EEPROM , который использует протокол ввода-вывода, такой как SPI .

В вычислительной технике прошивка это особый класс компьютерного программного обеспечения , который обеспечивает низкоуровневый контроль над конкретным оборудованием устройства . Прошивка, такая как BIOS персонального компьютера, может содержать базовые функции устройства и может предоставлять услуги аппаратной абстракции для программного обеспечения более высокого уровня, такого как операционные системы . Для менее сложных устройств встроенное ПО может выступать в качестве полноценной операционной системы устройства , выполняя все функции управления, мониторинга и манипулирования данными. Типичными примерами устройств, содержащих встроенное ПО, являются встроенные системы (на которых работает встроенное программное обеспечение ), бытовая и бытовая техника, компьютеры и компьютерная периферия .

Прошивка хранится в энергонезависимых запоминающих устройствах, таких как ROM , EPROM , EEPROM и флэш-память . Обновление встроенного ПО требует физической замены интегральных схем ПЗУ или перепрограммирования EPROM или флэш-памяти с помощью специальной процедуры. [1] Некоторые устройства памяти встроенного ПО установлены постоянно и не могут быть заменены после изготовления. Распространенными причинами обновления прошивки являются исправление ошибок или добавление функций.

История и этимология

Ашер Оплер использовал термин «прошивка» в статье Datamation 1967 года как промежуточный термин между «аппаратным обеспечением» и «программным обеспечением». [2] В этой статье Оплер имел в виду новый вид компьютерной программы, которая с точки зрения пользователя имела практическое и психологическое назначение, отличное от традиционных программ.

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

Первоначально это означало содержимое доступного для записи хранилища управления (небольшого специализированного высокоскоростного запоминающего устройства), содержащего микрокод , который определял и реализовывал набор команд компьютера и который можно было перезагружать для специализации или изменения инструкций, которые центральный процессор (ЦП) ) может выполнить. Первоначально встроенное ПО отличалось от аппаратного обеспечения (сам ЦП) и программного обеспечения (обычные инструкции, выполняемые на ЦП). Он состоял не из машинных инструкций ЦП, а из микрокода более низкого уровня, участвующего в реализации машинных инструкций. Он существовал на границе между аппаратным и программным обеспечением; отсюда и название прошивки . Со временем слово «прошивка» стало широко использоваться для обозначения любой компьютерной программы, которая тесно связана с аппаратным обеспечением, включая BIOS на ПК, загрузочную прошивку на смартфонах, компьютерную периферию или системы управления на простых бытовых электронных устройствах, таких как микроволновые печи , пульты дистанционного управления. .

Приложения

Компьютеры

Прошивка ROM BIOS на материнской плате Baby AT

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

Прошивка компьютера может быть обновлена ​​пользователем вручную с помощью небольшой служебной программы. Напротив, встроенное ПО в устройствах хранения данных (жестких дисках, приводах оптических дисков, флэш-памяти, например твердотельном накопителе) обновляется реже, даже когда для встроенного ПО используется флэш-память (а не ПЗУ, EEPROM).

Большинство компьютерной периферии сами по себе являются компьютерами специального назначения. Такие устройства, как принтеры, сканеры, веб-камеры, USB-накопители и карты расширения , имеют встроенное ПО, хранящееся внутри; на некоторых устройствах также может быть разрешено обновление прошивки на месте.

Примеры встроенного программного обеспечения компьютера включают в себя:

Обновление прошивки камеры Fuji Instax

Товары для дома и личного пользования

Бытовая техника, такая как игровые консоли , цифровые камеры и портативные музыкальные плееры, поддерживает обновление прошивки. Некоторые компании используют обновления прошивки для добавления новых воспроизводимых форматов файлов ( кодеков ). Другие функции, которые могут измениться при обновлении прошивки, включают графический интерфейс или даже время автономной работы. Смартфоны имеют возможность обновления прошивки по беспроводной сети для добавления новых функций и устранения проблем безопасности.

Автомобили

С 1996 года в большинстве автомобилей используются бортовые компьютеры и различные датчики для обнаружения механических проблем. По состоянию на 2010 год в современных автомобилях также используются антиблокировочная система тормозов (ABS) с компьютерным управлением и блоки управления коробкой передач (TCU). Таким образом, водитель также может получать информацию с приборной панели во время вождения, например, данные об экономии топлива и показания давления в шинах. Местные дилеры могут обновить большинство прошивок автомобиля.

Другие примеры

Другие приложения прошивки включают в себя:

Мигает

Перепрошивка [4] предполагает перезапись существующей прошивки или данных, содержащихся в EEPROM или модуле флэш-памяти электронного устройства, новыми данными. [4] Это можно сделать для обновления устройства [5] или для смены поставщика услуги, связанной с функцией устройства, например, при смене одного поставщика услуг мобильной связи на другого или установке новой операционной системы. Если прошивку можно обновить, это часто делается с помощью программы от поставщика и часто позволяет сохранить старую прошивку перед обновлением, чтобы можно было вернуться к ней в случае сбоя процесса или если более новая версия работает хуже. Разработаны бесплатные программные замены вендорным инструментам для прошивки, например Flashrom .

Взлом прошивки

Иногда третьи стороны разрабатывают неофициальную новую или модифицированную («послепродажную») версию прошивки, чтобы предоставить новые функции или разблокировать скрытые функции; это называется кастомной прошивкой . Примером может служить Rockbox как замена прошивки портативных медиаплееров . Существует множество самодельных проектов для различных устройств, которые часто открывают функциональные возможности вычислений общего назначения в ранее ограниченных устройствах (например, запуск Doom на iPod ).

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

Большинство хаков прошивки являются бесплатным программным обеспечением .

Хаки прошивки жесткого диска

Московская « Лаборатория Касперского» обнаружила, что группа разработчиков, которую она называет « Группой Equation », разработала модификации прошивки жесткого диска для различных моделей накопителей, содержащие троянского коня , который позволяет хранить данные на диске в местах, которые будут не будут удалены, даже если диск был отформатирован или очищен. [6] Хотя в отчете «Лаборатории Касперского» прямо не утверждается, что эта группа является частью Агентства национальной безопасности США (АНБ), данные, полученные из кода различного программного обеспечения Equation Group, позволяют предположить, что они являются частью АНБ. [7] [8]

Исследователи «Лаборатории Касперского» назвали действия Equation Group самой продвинутой хакерской операцией из когда-либо обнаруженных, а также зафиксировали около 500 заражений, вызванных Equation Group, по меньшей мере в 42 странах.

Безопасность

Марк Шаттлворт утверждает, что некачественная проприетарная прошивка представляет собой серьезную угрозу безопасности системы. В качестве потенциального решения этой проблемы он предложил использовать декларативную прошивку, которая описывала бы связь и зависимости оборудования и не включала бы исполняемый код . [9]

Взломы пользовательских прошивок также направлены на внедрение вредоносного ПО в такие устройства, как смартфоны или USB-устройства . Одна такая инъекция смартфона была продемонстрирована в ОС Symbian на MalCon , [10] [11] хакерском съезде . Взлом прошивки USB-устройства под названием BadUSB был представлен на конференции Black Hat USA 2014 , [12] демонстрируя, как микроконтроллер USB-накопителя можно перепрограммировать для подделки различных других типов устройств с целью получения контроля над компьютером, кражи данных или шпионажа за компьютером. пользователь. [13] [14] Другие исследователи безопасности продолжили работу над тем, как использовать принципы, лежащие в основе BadUSB, [15] одновременно выпустив исходный код хакерских инструментов, которые можно использовать для изменения поведения различных USB-устройств. [16]

Смотрите также

Рекомендации

  1. ^ «Что такое прошивка?». 23 января 2013 г.
  2. ^ Оплер, Ашер (январь 1967 г.). «Программное обеспечение четвертого поколения». Датаматизация . 13 (1): 22–24.
  3. ^ «Введение в компьютерные приложения и концепции. Модуль 3: Системное программное обеспечение». Люмен.
  4. ^ ab «Прошивка». Tech-Faq.com. Архивировано из оригинала 27 сентября 2011 года . Проверено 8 июля 2011 г.
  5. ^ «Центр разработчиков HTC». ХТК . Архивировано из оригинала 26 апреля 2011 года . Проверено 8 июля 2011 г.
  6. ^ «Группа уравнений: главный создатель кибершпионажа». Лаборатория Касперского . 16 февраля 2015 г. Архивировано из оригинала 2 декабря 2015 г.
  7. ^ Дэн Гудин (февраль 2015 г.). «Как «всемогущие» хакеры, связанные с АНБ, прятались 14 лет — и наконец были найдены». Арс Техника . Архивировано из оригинала 24 апреля 2016 г.
  8. ^ «Срочное: Касперский разоблачает АНБ по всему миру, бэкдор-взлом практически всех прошивок жестких дисков» . Ежедневный Кос . 17 февраля 2015 г. Архивировано из оригинала 25 февраля 2015 г.
  9. ^ «Шаттлворт: Прошивка — универсальный троян • The Register» . Регистр . Проверено 03 мая 2023 г.
  10. ^ "Технические брифинги MalCon 2010" . Малкон.орг . Архивировано из оригинала 4 июля 2011 г.
  11. ^ «Хакер устанавливает лазейку в прошивке Symbian» . H-online.com . 08.12.2010. Архивировано из оригинала 21 мая 2013 года . Проверено 14 июня 2013 г.
  12. ^ «Почему безопасность USB принципиально нарушена» . Wired.com . 31 июля 2014 г. Архивировано из оригинала 3 августа 2014 г. Проверено 4 августа 2014 г.
  13. ^ «BadUSB - Об аксессуарах, которые превращают зло» . BlackHat.com . Архивировано из оригинала 8 августа 2014 г. Проверено 6 августа 2014 г.
  14. ^ Карстен Ноль; Саша Крисслер; Якоб Лелль (07 августа 2014 г.). «BadUSB – Об аксессуарах, которые превращают зло» (PDF) . srlabs.de . Архивировано (PDF) из оригинала 19 октября 2016 г. Проверено 23 августа 2014 г.
  15. ^ «Выпущено вредоносное ПО BadUSB — заразите миллионы USB-накопителей» . Хакерский пост . Архивировано из оригинала 6 октября 2014 года . Проверено 7 октября 2014 г.{{cite web}}: CS1 maint: неподходящий URL ( ссылка )
  16. ^ Гринберг, Энди. «Необновляемое вредоносное ПО, заражающее USB-накопители, теперь находится на свободе». ПРОВОДНОЙ . Архивировано из оригинала 7 октября 2014 года . Проверено 7 октября 2014 г.