Недокументированные возможности

Недокументи́рованные возмо́жности (англ. undocumented features), НДВ — возможности технических устройств и/или программного обеспечения, не отраженные в документации. Чаще всего недокументированные возможности сознательно закладываются разработчиками в целях тестирования, дальнейшего расширения функциональности, обеспечения совместимости или же в целях скрытого контроля за пользователем. Кроме того недокументированные возможности могут стать следствием побочных эффектов (чаще всего в переходных режимах или при переключении режимов), не учтенных разработчиками. От недокументированных возможностей следует отличать возможности системы, скрытые от конечного потребителя, но приведенные в официальной сервисной документации. Недокументированные возможности обнаруживаются, обычно, в процессе обратной разработки, но могут быть обнаружены и случайно. Частным случаем недокументированных возможностей являются недокументированные функции.

В тех случаях, когда изготовитель несёт ответственность за работоспособность продукта или обязуется осуществлять его техническую поддержку, соответствующие обязательства обычно распространяются лишь на описанное в сопроводительной документации. С этим может быть связан ещё один мотив не упоминать в документации некоторые полезные функции. В частности, это позволяет избавиться от них в следующих версиях продукта, не предупреждая об этом пользователей. Это несёт определённые риски для пользователей, полагающихся на недокументированные возможности[1].

Отдельный интерес, особенно в случае программного обеспечения, представляют недокументированные возможности, которые могут поставить под угрозу правильную работу, целостность, конфиденциальность — иными словами безопасность — программной или информационной системы. В этом контексте обычно используются термин уязвимость (перевод англ. vulnerability) (на профессиональном компьютерном жаргоне также «дыра»), а в некоторых официальных документах вводится понятия «недекларированные возможности» и «незаявленные возможности» (см. раздел «Недекларированные возможности (информационная безопасность)»).

Недокументированные возможности в разных сферах

В машинах и механизмах

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

  • В швейных машинах сложного зигзага, выпущенных подольским заводом, конструктивная особенность реализации кулачково-копирного узла позволяла получать штриховую строчку, не предусмотренную конструкторами машины, при установке переключателя зигзага в промежуточное нерабочее положение. Данная возможность случайно была обнаружена одной из читательниц журнала «Работница», о чём она написала письмо в редакцию. После публикации в журнале этой заметки исследование недокументированных возможностей швейных машин и их применение стало регулярным.
  • В задних фонарях легкового автомобиля Chrevrolet Lacetti (модификация в кузове седан) имеются по две секции стоп-сигнала с установленными в них лампами, из которых к бортовой проводке автомобиля подключена только одна (верхняя); нижняя секция стоп-сигнала ни к чему не подключена и концы провода от нее просто болтаются. Таким образом, в штатном режиме при нажатии на педаль тормоза загорается только верхняя секция стоп-сигнала. Просто подключив провода от второй (нижней) секции к проводам от верхней секции, получаем загорающиеся при торможении сдвоенные секции стоп-сигнала.
  • В ряде модификаций токарного станка 16К20 в виду неописанных в документации особенностей реализации коробки подач появлялась возможность изготавливать резьбы с нестандартным шагом, что широко использовалось в годы СССР для изготовления самодельных замков и ключей к ним с нестандартной резьбой вместо секретного механизма.
  • Особенности конструкции главной передачи автомобиля «Запорожец» допускали в процессе сборки агрегата переворот коробки дифференциала с ведомой конической шестерней, что вызывало изменение направления вращения полуосей. Этим широко пользовались создатели самодельных автомобилей, применявшие ЗАЗовский силовой агрегат, установленный в передней части машины. Иногда эта особенность приводила к курьёзам, когда после ремонта автомобиля при включении передачи переднего хода он ехал назад.
  • Старые типы автоматических коробок передач имеют отдельный планетарный ряд повышающей передачи («овердрайв»), который управляется независимо от основного трёх- или четырёхступенчатого ряда. Хотя штатные системы управления АКПП включают овердрайв только в сочетании с прямой передачей в основном планетарном ряду, ничего не мешает использовать его и на других передачах, что фактически удваивает общее число передач в АКПП. Этой особенностью иногда пользуются производители автомобилей, например, вводя в управление АКПП дополнительную программу мягкого старта (что удобно зимой на скользкой дороге). Суть этой программы заключается в том, что овердрайв работает на всех передачах, снижая передаточное отношение и, следовательно, динамику автомобиля.
  • Кинематическая схема пятиступенчатой АКПП A750 фирмы Aisin такова, что она может реализовывать 7 передач переднего хода и 3 передачи заднего хода. Однако в этих дополнительных режимах нагрузка на фрикционы и тормоза слишком велика и производители автомобилей их не используют. Но любители тюнинга автомобилей пользуются этой возможностью. Позже фирма Aisin доработала конструкцию этой АКПП, реализовав в ней 6 передач переднего хода.
  • Батарейки типа AAA можно использовать в устройствах с разъёмами для типа АА. Достаточно замкнуть контакты на более короткой батарейке путём добавления прокладки из любого проводника (подойдёт комок фольги). Большинство устройств заработают даже с неподходящими батарейками.

В механических фотоаппаратах

  • В фотоаппаратуре «Зенит» не было предусмотрено автоматических длительных выдержек. Однако особенности реализации механизма автоспуска приводили к тому, что при установке затвора в режим «В» автоспуск мог формировать длительные выдержки (до 9 секунд). Интересно, что руководство по эксплуатации вообще не давало никаких сведений о сочетании режима «В» и автоспуска.
  • В фотоаппаратах «ФЭД-3» подобная комбинация позволяла получить выдержку около 4—4,5 секунды.

В нецифровой электронной аппаратуре

  • У многих всеволновых радиоприемников (практически все приемники, выполненные на пальчиковых лампах), выпускавшихся в СССР, переключение диапазонов в области коротких волн осуществлялось подключением с помощью механического переключателя, подключающего параллельно колебательному контуру гетеродина группы частотопонижающих конденсаторов. В промежуточных положениях переключателя дополнительные конденсаторы не были подключены, и частота гетеродина определялась только конденсатором переменной ёмкости. При этом гетеродин работал на повышенной частоте. Эта особенность позволяла принимать радиостанции в диапазонах волн 19, 16 и 11 метров и слушать «вражеские голоса». Приём был достаточно нестабильным, но, тем не менее, позволял слушать передачи. В радиоприемнике «Сакта» для этого нужно было нажать одновременно кнопки КВ1 и КВ2. В «Ригонде» и её клонах («Кантата», «Рапсодия», «Урал») этот эффект достигался при переключении из режима КВ1 в КВ2, если кнопку КВ1 удерживать и плавно отпускать при нажатии на кнопку КВ2.
  • Практически все недорогие рации, работающие на частоте 27 МГц, в режиме амплитудной модуляции могли нормально принимать сигналы раций этого же диапазона, но работавших с частотной модуляцией. Это было связано с тем, что упрощенный фильтр промежуточной частоты, выполненный всего на одном колебательном контуре, имел участки АЧХ с достаточно хорошей линейностью и прекрасно справлялся с непредусмотренной разработчиками функцией частотного дискриминатора. Примечательно также и то, что по причине упрощенной реализации передающего тракта многих подобных раций амплитудная модуляция сопровождалась сильной паразитной девиацией частоты, дающей возможность приема сигнала аппаратами, работающими в режиме частотной модуляции.
  • Практически все пентоды и лучевые тетроды могут работать в триодном включении (анод соединён со второй сеткой), обладая при этом хорошими показателямии линейности (зачастую лучшими, чем у специальных триодов), что активно используется поклонниками лампового звука. Хотя такой режим разработчиками не был предусмотрен и согласно руководящим техническим материалам (РТМ), действовавшим в СССР, — запрещён.
  • Некоторые старые чёрно-белые видеомагнитофоны (например, «Малахит») могут записывать цветное изображение. Это возможно, если сигналы цветности попадают в рабочую полосу частот видеотракта. В таком случае они записываются и воспроизводятся не как в цветном магнитофоне, а напрямую, без переноса спектра и иных преобразований. Также необходимым условием является отсутствие у чёрно-белого видеомагнитофона фильтров, вырезающих «ненужные» сигналы цветности из полного видеосигнала. У старых аппаратов их не было, а внедрять фильтры начали только с широким распространением цветного телевещания.

В цифровой технике

  • Множество недокументированных возможностей присутствовало в советских программируемых микрокалькуляторах (см. Еггогология).
  • Почти все домофоны старых типов имеют в своем составе микроконтроллеры с достаточно ограниченными вычислительными ресурсами и сравнительно малым объёмом энергонезависимой памяти, в которой сохраняется только часть ROM-кода ключа. Отдельной таблицы свободности ячеек нет, поэтому признаком того, что ячейка памяти свободна и в неё можно записать новый ключ, является такое её состояние, при котором все биты установлены в логическую 1. По причине упрощенного алгоритма проверки ROM-кода ключа iButton валидным окажется также ключ, у которого 6 байт уникальной части ROM-кода состоят из одних единиц. Такой ключ будет с одинаковым успехом открывать двери, оснащённые домофонами различных типов. Эта особенность позволила создавать так называемые «ключи-вездеходы». Таких ключей не может быть среди изделий, выпускаемых официально, так как указанный ROM-код не определён спецификацией шины 1-Wire, но, тем не менее, он может быть эмулирован с помощью специальных микросхем. Отключить такую недокументированную возможность штатными средствами было невозможно. Единственное, что можно было сделать, — заполнить всю память устройства ROM-кодами ключей (в том числе фиктивных). Позже производители домофонов стали поддерживать данную возможность специально, предусматривая средства её отключения при необходимости.

В программном обеспечении

  • Например, в Blitz BASIC есть такие функции, как Handle и Object (и несколько других), описание которых не дано в официальной документации. Их назначение и использование было раскрыто пользователями[2].
  • Если создать закладку с адресом javascript:document.getElementsByClassName("video-stream html5-main-video")[0].playbackRate = 4.0; а затем нажать её на сайте YouTube, скорость видео изменится на указанную в конце ссылки (в данном случае 4). Таким образом можно смотреть видео с любой скоростью, хотя официально доступны только 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75 и 2.

Недекларированные возможности (информационная безопасность)

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

Например, имеется утверждённый председателем Государственной технической комиссии[3] при Президенте руководящий документ[4], посвященный, в частности, классификации ПО средств защиты информации по уровню контроля отсутствия недекларированных возможностей, который определяет их следующим образом:

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

Преднамеренно внесённые в ПО функциональные объекты, обладающие такими возможностями, названы программными закладками. Эти термины использует и ГОСТ Р 51275-2006 (недоступная ссылка)[5]. Зачастую такие возможности определяются как "умышленно внесенные уязвимости", а применительно к криптографическим алгоритмам - "умышленное внесенная слабость алгоритма".

Процедура поиска недекларированных возможностей в программных продуктах зачастую аналогична процедурам поиска уязвимостей, поэтому в 2019 году методика выявления уязвимостей и НДВ при сертификации были объединены ФСТЭК России в один документ[6].


Программные закладки следует отличать от недекларированных возможностей, появившихся вследствие ошибок в программе (иногда называемых багами)[7].

Доктрина информационной безопасности РФ[8] среди угроз «безопасности информационных и телекоммуникационных средств и систем» называет также и «внедрение в аппаратные и программные изделия компонентов, реализующих функции, не предусмотренные документацией на эти изделия».

Примеры

Технические устройства и ПО

В качестве примеров недокументированных возможностей и команд могут быть приведены:

  • как правило, не документирующиеся специальные номера или комбинации клавиш сотовых телефонов, открывающие доступ к инженерным или диагностическим меню, получению дополнительной информации или использованию некоторых других возможностей[9] (например, команда мобильных телефонов *#06#, осуществляющая переход в меню отображения IMEI, а также, в зависимости от модели аппарата, различных аспектов его конфигурации);
  • команда перехода современных телевизоров и мониторов в инженерное меню — зажав несколько кнопок на пульте управления одновременно, оператор пульта попадает в исходно недоступное для пользователя пространство инженерного меню, в котором перемещается уже с помощью обычных команд пульта («вверх», «вниз», «влево», «вправо», «ok»)[10];
  • в ОС Windows к таким возможностям часто относят работу с реестром, файлами, некоторые возможности Windows API[11][12];
  • В приложении Википедии на Андроиде есть возможность (2018 год) посмотреть обсуждение статьи прямо в приложении (хотя, если внизу статьи нажать на "Обсуждение", то открывается браузер). Надо в поле поиска по Википедии набрать "Обсуждение:" и название статьи.

Массовая культура

  • переход из «матрицы» в «реальность» в фильме «Матрица» осуществлялся главными героями через поднятия трубки телефона в кабине виртуального телефона-автомата в «матрице».
  • в эпизоде 3.11 «Enter 77» сериала «Остаться в живых» переход к режиму основных возможностей, который не знали герои сериала, был случайно реализован одним из персонажей путём выигрыша в компьютерные шахматы.

См. также

Примечания

  1. Особенно актуально для программных библиотек, поскольку желательно, чтобы обновление их версий не приводило к необходимости доработки использующих их программы.
  2. Help
  3. В 2004 году. преобразована в ФСТЭК России.
  4. Руководящий документ. Защита от несанкционированного доступа к информации. Часть 1. Программное обеспечение средств защиты информации. Классификация по уровню контроля отсутствия недекларированных возможностей. Утверждено решением председателя Государственной технической комиссии при Президенте Российской Федерации от 4 июня 1999 г. № 114
  5. ГОСТ Р 51275-2006. «Защита информации. Объект информатизации. Факторы, воздействующие на информацию. Общие положения» (утв. приказом Федерального агентства по техническому регулированию и метрологии от 27 декабря 2006 г. N 374-ст).
  6. Методика выявления уязвимостей и недекларированных возможностей в программном обеспечении, утверждена ФСТЭК России 11 февраля 2019 г.
  7. Подробнее об этом можно прочитать в разделе «Безопасность программного кода и отладка» статьи «Отладка», а также в статьях, входящих в категорию «Компьютерные ошибки».
  8. Доктрина информационной безопасности Российской Федерации
  9. Недокументированные возможности телефонов
  10. Описания инженерных меню некоторых мониторов.
  11. Свен Шрайбер «Недокументированные возможности Windows 2000». Спб, 2002
  12. Секреты Windows: статьи о реестре, rundll32.exe, программах. Книга Недокументированные возможности Windows XP. Часть 2

Литература

На английском языке

  • Gupta G. Computers in Engineering. American Society of Mechanical Engineers, 1991. ISBN 0-7918-0622-7, ISBN 978-0-7918-0622-7, ISBN 0-7918-0622-7 (в особенности раздел «Documented and Undocumented Features», p.78)
  • Szyperski C., Gruntz D., Murer S. Component software: beyond object-oriented programming. Pearson Education Publishers, 2003. ISBN 978-0-201-17888-3 (в особенности раздел 5.1.5. Undocumented «features», p.54)
  • Smith Sean W. Trusted computing platforms: design & applications. 2005, XX, 244 p. 28 illus., Hardcover. ISBN 978-0-387-23916-3 (в особенности раздел 3.4 Undocumented Functionality, p.35)

На русском языке

  • Адаменко М. В. Секреты сотовых телефонов: сервисные коды мобильных телефонов; недокументированные возможности; изменение мелодии звонка; разблокировка телефонов. Изд. 2-е. М.: "ДМК Пресс, «СОЛОН-Пресс», 2002, 240 стр. — ISBN 5-98003-026-3, ISBN 5-94074-191-6
  • Букин М. С. Секреты сотовых телефонов. СПб.: «Питер», 2005, 208 стр. — ISBN 5-469-00638-7
  • Зыков Н. К. Недокументированные возможности Windows: Справочник для программиста-практика. М.: «Радио и связь», 1994, 176 стр. — ISBN 5-256-01212-6, ISBN 5-256-01212-6
  • Кингслей-Хагис К. Недокументированные возможности GPS. СПб.: «Питер», 2007 г., 304 стр. — ISBN 978-5-469-01410-2
  • Коберниченко А. В. Недокументированные возможности Windows NT. М.: «Нолидж», 287 стр. — ISBN 5-89251-048-4
  • Свен Шрайбер. Недокументированные возможности Windows 2000. СПб., 2002 г., 544 стр. — ISBN 5-318-00487-3
  • Фленов М.. Программирование в Delphi глазами хакера. Издательство: «БХВ-Петербург», 2007 г. ISBN 978-5-9775-0081-4

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.