СИСТЕМА ДЛЯ ОБНАРУЖЕНИЯ СКРЫТЫХ ОБЛАСТЕЙ ФЛЭШ-ПАМЯТИ БАЗОВОЙ СИСТЕМЫ ВВОДА-ВЫВОДА КОМПЬЮТЕРА

Полезная модель относится к вычислительной технике и может быть использовано при для обнаружения скрытых областей флэш-памяти базовой системы ввода-вывода компьютера (БИОС), представляющую собой набор микропрограмм, обеспечивающих начальную загрузку компьютера и последующий запуск операционной системы.
Известно устройство на основе программируемых логических интегральных схем, которые конфигурированы в виде процессорного ядра и связанного с ним блока периферийных устройств, при этом, устройство снабжено портами ввода-вывода, связанными с периферийными устройствами, и энергонезависимой флэш-памятью, связанной с процессорным ядром и внешним оперативным запоминающим устройством, связанным с процессорным ядром [RU 41168, Ul, G06F 9/455, 10.10.2004].
Недостатком устройства является относительно узкие функциональные возможности, поскольку оно не позволяет обнаруживать скрытые области флэш-памяти.
Известно также устройство, содержащее флэш-память, оперативную память, отдельную энергонезависимую память, средство для копирования страницы флэш-памяти в виде образа страницы в оперативную память и обновления этого образа страницы, средство для записи обновленного образа страницы назад в флэш-память на свободную страницу, средство для обновления главной таблицы записи в энергонезависимой памяти [RU 2182375, С2, G06F 12/00, 10.05.2002].
Недостатком этого устройства также является относительно узкие функциональные возможности, поскольку оно не позволяет обнаруживать скрытые области флэш-памяти.
Кроме того, известна микро-ЭВМ, содержащая процессор, ОЗУ, ППЗУ, контроллер внутренней информационной магистрали, локальную магистраль, два контроллера внешней радиальной информационной сети и флэш-память, причем, процессор, ППЗУ и контроллер внутренней информационной магистрали объединены через локальную магистраль, первые входы-выходы процессора соединены с входами-выходами ОЗУ, внешний двунаправленный вход контроллера внутренней информационной магистрали имеет выход на внутреннюю информационную магистраль, первый и второй контроллеры внешней радиальной информационной сети и флэш-память объединены через локальную магистраль, внешние двунаправленные входы-выходы первого и второго контроллеров внешней радиальной информационной сети соответственно связаны с основной и резервной внешними радиальными информационными сетями [RU 89733, U1, G06F 15/16, 10.I2.2009].
Это устройство также обладает относительно узкими-функциональными возможностями, поскольку оно не позволяет обнаруживать скрытые области флэш-памяти.
Наиболее близким по технической сущности к предложенному является техническое решение, содержащее энергонезависимую память, адаптер интерфейса и процессор, выполненный на многофункциональном микроконтроллере, аппаратно реализующем криптографические алгоритмы, и построен так, чтобы все ключи шифрования использовались только внутри него и никогда не передавались бы через интерфейс, и доступ к критичным данным, хранящимся в энергонезависимой памяти процессора, был бы возможен также только изнутри него, причем, его память расширена внешней, по отношению к процессору, флэш-памятью данных файловой системы, доступ к которой защищен PIN-кодом [RU 83862, U1, G06F 13/00, 20.06.2009].
Недостатком наиболее близкого технического решения является относительно узкие функциональные возможности, поскольку оно позволяет, в частности, реализовать санкционированный доступ к флэш-памяти, но, в частности, не позволяет обнаруживать скрытые области флэш-памяти и определять способы их создания.
Требуемый технический результат заключается в расширении функциональных возможностей.
Требуемый технический результат достигается тем, что, в систему, содержащую процессор с системной шиной компьютера и флэш-память, введен контроллер управления, вход-выход которого соединен с входом-выходом флэш-памяти, причем, вход-выход буфера данных контроллера управления соединен с адресным окном для отображения содержимого флэш-памяти в адресном пространстве системной шины компьютера, а вход-выход регистра управления контроллера управления - соединен с адресным окном для отображения регистров управления контроллера управления в адресном пространстве системной шины компьютера.
Кроме того, требуемый технический результат достигается тем, что, в системе процессором формируется транзакция чтения информации из регистров управления контроллера управления в системе и замеряется время прохождения этой транзакции, после чего стандартной командой чтения идентификатора размера флэш-памяти считывается информация об ее объеме, прошитая в ней на этапе изготовления, и последовательно сканируется все адресное пространство, закрепленное за флэш-памятью в адресном пространстве системной шины компьютера, а в соответствии со считанным идентификатором ее размера, выявляют диапазоны адресов со временем доступа на чтение, соответствующего времени чтения из регистров управления контроллера управления, и, если интервал адресов, отклик которых соответствует отклику регистров управления контроллера управления, меньше размера флэш-памяти, то декларируется наличие скрытой области флэш-памяти, реализованной с помощью контроллера управления способом уменьшения адресного окна для отображения содержимого флэш-памяти.
Кроме того, требуемый технический результат достигается тем, что, в системе процессором последовательно замеряется время доступа на чтение для всего адресного пространства флэш-памяти и строится карта времени доступа к флэш-памяти, которая имеет зоны адресов с тремя временами доступа - на чтение нового сектора флэш-памяти через каждые 512-4096 байта в зависимости от архитектуры флэш-памяти, на чтение в буфер данных контроллера управления через каждые 4-64 байта адресного пространства в зависимости от архитектуры контроллера управления и на чтение из буфера данных контроллера управления, после чего в построенной карте проверяется наличие периодических увеличений времен доступа на занесение дополнительной информации в буфер данных контроллера управления и, если не выявляется факт периодического увеличения времени доступа для занесения дополнительной информации в буфер данных контроллера управления из флэш-памяти, то декларируется наличие скрытых областей флэш-памяти, реализованных с помощью контроллера управления.
Кроме того, требуемый технический результат достигается тем, что, в системе процессором последовательно замеряется время доступа на чтение для всего адресного пространства флэш-памяти и строится карта времени доступа к флэш-памяти, которая будет иметь зоны адресов с тремя временами доступа - на чтение нового сектора флэш-памяти через каждые 512-4096 байта в зависимости от архитектуры флэш-памяти, на чтение в буфер данных контроллера управления через каждые 4-64 байт адресного пространства в зависимости от архитектуры контроллера управления и на чтение из буфера данных контроллера управления, после чего в построенной карте проверяется наличие периодических увеличений времен доступа на активацию страниц внутри флэш-памяти и, если не выявляется факт периодического увеличения времени чтения, то декларируется наличие скрытых областей флэш-памяти, реализованных с помощью секьюрити-модулей, размещенных на чипе флэш-памяти.
Кроме того, требуемый технический результат достигается тем, что, в качестве контроллера управления использован контроллер флэш-памяти чипсета компьютера.
Кроме того, требуемый технический результат достигается тем, что, система может быть реализована виртуально путем эмуляции процессором.
На чертеже представлена функциональная схема системы для обнаружения скрытых областей флэш-памяти базовой системы ввода-вывода компьютера.
Система для обнаружения скрытых областей флэш-памяти базовой системы ввода-вывода компьютера содержит процессор 1 с системной шиной 2 компьютера и флэш-память 3, а также контроллер 4 управления, вход-выход которого соединен с входом-выходом флэш-памяти 3.
В системе для обнаружения скрытых областей флэш-памяти базовой системы ввода-вывода компьютера вход-выход буфера 5 данных контроллера управления соединен с адресным окном 6 для отображения содержимого флэш-памяти в адресном пространстве системной шины 2 компьютера, а вход-выход регистра 7 управления контроллера управления - соединен с адресным окном 8 для отображения регистров управления контроллера управления в адресном пространстве системной шины 2 компьютера.
Работает система для обнаружения скрытых областей флэш-памяти базовой системы ввода-вывода компьютера следующим образом.
Флэш-память 3 базовой системы ввода-вывода компьютера (БИОС) подключаются к адресному пространству через системную шину 2 и контроллер 4 управления, который имеет регистры 7 управления контроллера управления, подключенные к системной шине 2 компьютера через адресное окно 8 для отображения регистров управления контроллера управления.
Кроме этого, для аппаратного отражения содержимого флэш-памяти 3 на системной шине 2 компьютера контроллер 1 управления имеет адресное окно 6 для отображения содержимого флэш-памяти 3.
Скрытые области флэш-памяти 3 могут создаваться, в частности, следующими способами:
- системной шиной - методом уменьшения адресного окна для отображения содержимого флэш-памяти;
- контроллером управления - с использованием специальных возможностей аппаратуры блокировки доступа к защищенным адресным областям флэш-памяти;
- специальными секьюрити-модулями, размещенными непосредственно на чипе флэш-памяти.
Обнаружение скрытых областей флэш-памяти 3 основано на замерах времени прохождения транзакции чтения содержимого, находящегося на системной шине 2 компьютера в адресном окне 6, закрепленным для аппаратного отображения содержимого флэш-памяти 3, адресном пространстве управляющих регистров 7 контроллера управления и адресном пространстве системной шины 2 компьютера, не закрепленным за конкретными устройствами (для определения времени тайм-аута). Транзакции чтения информации будут иметь три типовые длительности:
- транзакция, информация для которой находится в буфере 5 данных контроллера управления (в этом случае нет цикла чтения флэш-памяти 3 и все выполняется на уровне контроллера 4 управления);
- транзакция, информация для которой находится в активной странице флэш-памяти 3, но отсутствует в буфере 5 данных контроллера управления (в этом случае контроллер 4 управления выполняет цикл чтения порции данных из флэш-памяти 3 в буфер 5 данных контроллера управления и только после этого выдает информацию из буфера 5 данных контроллера управления в системную шину 2 компьютера);
- транзакция, информация для которой находится на неактивной странице флэш-памяти 3 (в этом случае контроллер 4 управления выдает последовательно команды на активацию запрошенной страницы, затем на чтение из активированной страницы в буфер 5 данных контроллера управления и только после этого выдает на системную шину 2 компьютера результат чтения из буфера 5 данных контроллера управления).
Для выявления наличия скрытых областей флэш-памяти 3, реализованной с помощью контроллера 7 управления способом уменьшения адресного окна 6 для отображения содержимого флэш-памяти производятся следующие процедуры.
Процессором 1 формируется транзакция чтения информации из регистров 7 управления контроллера управления и замеряется время прохождения этой транзакции, после чего стандартной командой чтения идентификатора размера флэш-памяти 3 считывается информация об ее объеме, прошитая в ней на этапе изготовления, и последовательно сканируется все адресное пространство, закрепленное за флэш-памятью 3 в адресном пространстве системной шины 2 компьютера, а в соответствии со считанным идентификатором ее размера, выявляют диапазоны адресов со временем доступа на чтение, соответствующего времени чтения из регистров 7 управления контроллера управления, и, если интервал адресов, отклик которых соответствует отклику регистров 7 управления контроллера управления, меньше размера флэш-памяти 3, то декларируется наличие скрытой области флэш-памяти 3, реализованной с помощью контроллера 4 управления способом уменьшения адресного окна для отображения содержимого флэш-памяти 3.
Для выявления наличия скрытых областей флэш-памяти 3, реализованных с помощью контроллера 4 управления производятся следующие процедуры.
Процессором 1 последовательно замеряется время доступа на чтение для всего адресного пространства флэш-памяти 1 и строится карта времени доступа к флэш-памяти 3, которая имеет зоны адресов с тремя временами доступа:
- на чтение нового сектора флэш-памяти 3 через каждые 512-4096 байта в зависимости от архитектуры флэш-памяти 3;
- на чтение в буфер данных5 контроллера управления через каждые 4-64 байта адресного пространства в зависимости от архитектуры контроллера 4 управления;
- на чтение из буфера данных 5 контроллера управления.
После этого в построенной карте проверяется наличие периодических увеличений времен доступа на занесение дополнительной информации в буфер данных 5 контроллера управления и, если не выявляется факт периодического увеличения времени доступа для занесения дополнительной информации в буфер данных 5 контроллера управления из флэш-памяти 3, то декларируется наличие скрытых областей флэш-памяти, реализованных с помощью контроллера управления 4.
Для выявления наличия скрытых областей флэш-памяти 3, реализованных с помощью секьюрити-модулей, размещенных на чипе флэш-памяти 3, производятся следующие процедуры.
Процессором 1 последовательно замеряется время доступа на чтение для всего адресного пространства флэш-памяти 3 и строится карта времени доступа к флэш-памяти, которая будет иметь зоны адресов с тремя временами доступа:
- на чтение нового сектора флэш-памяти через каждые 512-4096 байта в зависимости от архитектуры флэш-памяти 3;
- на чтение в буфер данных 5 контроллера управления через каждые 4-64 байт адресного пространства в зависимости от архитектуры контроллера 4 управления;
- на чтение из буфера данных 5 контроллера управления.
После этого в построенной карте проверяется наличие периодических увеличений времен доступа на активацию страниц внутри флэш-памяти и, если не выявляется факт периодического увеличения времени чтения, то диагностируется наличие скрытых областей флэш-памяти 3, реализованных с помощью секьюрити-модулей, размещенных на чипе флэш-памяти 3.
В качестве контроллера управления может быть использован контроллер флэш-памяти чипсета компьютера, а сама система может быть реализована виртуально путем эмуляции процессором.
Таким образом, предложенная система обладает более широкими функциональными возможностями, поскольку оно позволяет нет только реализовать, в частности, санкционированный доступ к флэш-памяти, но и позволяет обнаруживать скрытые области флэш-памяти и определять способы их создания.