25.8.16

Уязвимость или закладка? В чем разница?

На волне последних новостей о Shadow Broker и частично выложенным в открытый доступ, а частично выставленном на продажу наборе вредоносного ПО, мне хотелось бы вспомнить о терминологии. А то что-то внезапно и много развелось специалистов по закладкам. Особенно в среде специалистов по поиску уязвимостей. Причем некоторые подменяют понятия "уязвимость" и "закладка" непреднамеренно, а некоторые делают это осознанно, манипулируя терминами в своих интересах, зачастую коммерческих.

Итак, я приведу три определения (в разницу терминов defect, fault, failure, error и сленгового bug вдаваться не буду - они сейчас они имеют никакого значения):
  1. Уязвимость - свойство информационной системы, обусловливающее возможность реализации угрозы безопасности обрабатываемой в ней информации (ГОСТ Р 50922-2006 "Защита информации. Основные термины и определения"). В ГОСТ Р 56545-2015 "Защита информации. Уязвимости информационных систем. Правила описания уязвимостей" определение немного другое. Там уязвимость - это недостаток (слабость) программного (программно-технического) средства или информационной системы в целом, который может быть использован для реализации угроз безопасности информации. В ГОСТ Р 56545 есть еще и определение zero day, но дела это не меняет. Иными словами речь идет об ошибке в ПО или ИС, которая может привести к угрозе ИБ. Возможность реализации угрозы и разделяет ошибки и уязвимости, которые в большинстве случаев являются подмножеством ошибок.
  2. Программная закладка - это преднамеренно внесенный в программное обеспечение функциональный объект, который при определенных условиях инициирует реализацию недекларированных возможностей программного обеспечения. Это определение из ГОСТ Р 51275-2006 "Защита информации. Объект информатизации. Факторы, воздействующие на информацию. Общие положения". Аналогичное определение и в более старом ГОСТ Р 50.1.053-2005 "Информационные технологии. Основные термины и определения в области технической защиты информации". В РД ФСТЭК по недекларированным возможностям определение схожее - "программные закладки – преднамеренно внесенные в ПО функциональные объекты (то есть элементы программы, осуществляющие выполнение действий по реализации законченного фрагмента алгоритма программы), которые при определенных условиях (входных данных) инициируют выполнение не описанных в документации функций ПО, приводящих к нарушению конфиденциальности, доступности или целостности обрабатываемой информации".
  3. В свою очередь "недекларированные возможности" это, согласно ФСТЭК, функциональные возможности ПО, не описанные или не соответствующие описанным в документации, при использовании которых возможно нарушение конфиденциальности, доступности или целостности обрабатываемой информации. Реализацией недекларированных возможностей, в частности, являются программные закладки.
На мой взгляд деление очень четкое - грань проходит по понятию "умысел". Есть намерение навредить - значит речь идет о закладке. Нет такого намерения - это уязвимость. Нет возможности реализовать угрозу - речь идет об ошибке. При этом, по моему мнению, уязвимость не может считаться недекларированной возможностью, так не является функциональной возможностью ПО согласно приведенным определениям.

Поскольку в последнее время речь идет о известных и ранее неизвестных слабостях в ПО различных производителей, которые могли эксплуатироваться упоминаемыми в опубликованных материалах Shadow Broker программами, то речь идет об уязвимостях (и уязвимостях нулевого дня), но никак не о закладках. В противном случае почти все 15 тысяч уязвимостей в базе данных ФСТЭК можно тоже отнести к разряду закладок. В том числе и бреши в ПО отечественных производителей, которые, имея лицензии ФСТЭК или ФСБ, могут быть обвинены в тесных связях со спецслужбами, которые в свою очередь внедрили эти закладки для несанкционированного доступа к защищаемым системам. А почему бы и нет? Логика по крайней мере та же, что используют отдельные "эксперты", так прям и пышущие желанием найти в каждой становящейся достоянием гласности уязвимости злой умысел производителя или американских спецслужб. Желание попиариться или присосаться к государственным деньгам понятно, но стоит и просчитывать последствия своих высказываний, которые могут быть повернуты и против "экспертов", в продуктах которых могут быть тоже найдены уязвимости, которые тоже могут быть названы происками американского АНБ, российской ФСБ, белорусского КГБ, казахского КНБ и множества других структур, оканчивающихся на вторую букву русского алфавита.

ЗЫ. Кстати, Шнайер считает, что вторая часть архива Shadow Broker - это фейк, и цель была опубликовать именно первую с целью демонстрации своей мощи неизвестными хакерами, за которыми, по версии того же Шнайера, стоит... Кто бы вы думали? Да, опять Россия или, с меньшей вероятностью, Китай.

4 коммент.:

Сергей Борисов комментирует...

Не обосновано следующее мнение (хотя оно и не основное в данной статье)

"При этом, по моему мнению, уязвимость не может считаться недекларированной возможностью, так не является функциональной возможностью ПО согласно приведенным определениям"

По моему мнению, есть четкая связь:
НДВ - возможности ПО, не описанные в документации (например, возможность выполнить определенную команду и повысить свои привилегии до администратора, или отправка в облако некоторой информации или возможность производителя удаленно заблокировать работу СЗИ) -> если данные возможности могут использоваться для реализации угроз (а в приведенных примерах - могут) - это недостатки -> уязвимости

Алексей Лукацкий комментирует...

Ну я и не планировал вдаваться в тему уязвимостей и НДВ. Непростая тема, согласен. Много точек зрения. Для меня НДВ всегда связана с умыслом; в отличии от уязвимости.

Косвенно о различии в НДВ и уязвимостях говорит и то, что ФСТЭК это тоже разделяет в своих документах.

vsv комментирует...

Коллеги, в свое время (это 2012 год), разбирая ПП-1119, я анализировал что такое НДВ, закладки, уязвимости и пр. Мы еще тогда подискутировали С Е. Родыгиным. это можно посмотреть здесь: http://elvis.ru/upload/iblock/149/tam_na_nevedannyh_dorojkah.pdf . Могу сказать: НДВ - может быть уязвимостью, но не всякая уязвимость - НДВ.

Roman S комментирует...

Да подмочили репутацию циско все эти анб-шные закладки.