В компьютерной безопасности скрытый канал — это тип атаки , создающий возможность передачи информационных объектов между процессами, которым политика компьютерной безопасности не разрешает взаимодействовать . Термин, введенный в 1973 году Батлером Лэмпсоном , определяется как каналы, «вообще не предназначенные для передачи информации , например, для воздействия служебной программы на загрузку системы », чтобы отличать их от законных каналов, которые подвергаются контролю доступа со стороны COMPUSEC . [1]
Скрытый канал так называется, потому что он скрыт от механизмов контроля доступа защищенных операционных систем, поскольку он не использует законные механизмы передачи данных компьютерной системы (обычно чтение и запись), и поэтому не может быть обнаружен или проконтролирован механизмами безопасности, лежащими в основе защищенных операционных систем. Скрытые каналы чрезвычайно сложно установить в реальных системах, и часто их можно обнаружить путем мониторинга производительности системы. Кроме того, они страдают от низкого отношения сигнал/шум и низкой скорости передачи данных (обычно порядка нескольких бит в секунду). Их также можно удалить вручную с высокой степенью уверенности из защищенных систем с помощью хорошо зарекомендовавших себя стратегий анализа скрытых каналов.
Скрытые каналы отличаются от и часто путаются с эксплуатацией законных каналов, которая атакует псевдобезопасные системы с низкой степенью уверенности, используя такие схемы, как стеганография или даже менее сложные схемы для сокрытия запрещенных объектов внутри законных информационных объектов. Неправомерное использование законных каналов стеганографией, в частности, не является формой скрытого канала. [ необходима цитата ]
Скрытые каналы могут проходить через защищенные операционные системы и требуют специальных мер для контроля. Анализ скрытых каналов является единственным проверенным способом контроля скрытых каналов. [ требуется цитата ] Напротив, защищенные операционные системы могут легко предотвратить нецелевое использование законных каналов, поэтому важно различать их. Анализ законных каналов на предмет скрытых объектов часто неверно представляется как единственная успешная мера противодействия нецелевому использованию законных каналов. Поскольку это равносильно анализу больших объемов программного обеспечения, еще в 1972 году было показано, что это непрактично. [2] Не будучи информированными об этом, некоторые ошибочно полагают, что анализ «управит риском» этих законных каналов.
Критерии оценки надежности компьютерной безопасности (TCSEC) — это набор критериев, ныне устаревших, которые были разработаны Национальным центром компьютерной безопасности — агентством, находящимся в ведении Агентства национальной безопасности США .
Определение скрытого канала Лэмпсона было перефразировано в TCSEC [3] специально для обозначения способов передачи информации из отсека более высокой классификации в отсек более низкой классификации. В общей среде обработки трудно полностью изолировать один процесс от воздействия другого процесса на операционную среду. Скрытый канал создается процессом-отправителем, который модулирует некоторое условие (например, свободное пространство, доступность некоторой службы, время ожидания выполнения), которое может быть обнаружено процессом-получателем.
TCSEC определяет два вида скрытых каналов:
TCSEC, также известный как « Оранжевая книга» , [4] требует, чтобы анализ скрытых каналов хранения данных был классифицирован как система B2, а анализ скрытых каналов синхронизации является требованием для класса B3.
Использование задержек между пакетами, передаваемыми по компьютерным сетям, впервые было исследовано Гирлингом [5] для скрытой связи. Эта работа побудила многие другие работы установить или обнаружить скрытую связь и проанализировать фундаментальные ограничения таких сценариев.
Обычные вещи, такие как существование файла или время, используемое для вычисления, были средством, через которое общается скрытый канал. Скрытые каналы нелегко обнаружить, поскольку эти средства очень многочисленны и часто используются.
Два относительно старых метода остаются стандартами для обнаружения потенциальных скрытых каналов. Один работает путем анализа ресурсов системы, а другой работает на уровне исходного кода.
Вероятность существования скрытых каналов невозможно исключить [2] , хотя ее можно значительно снизить путем тщательного проектирования и анализа.
Обнаружение скрытого канала может быть затруднено за счет использования характеристик среды связи для легитимного канала, которые никогда не контролируются и не проверяются легитимными пользователями. Например, файл может быть открыт и закрыт программой в определенном, синхронизированном шаблоне, который может быть обнаружен другой программой, и шаблон может быть интерпретирован как строка битов, образуя скрытый канал. Поскольку маловероятно, что легитимные пользователи будут проверять шаблоны операций открытия и закрытия файлов, этот тип скрытого канала может оставаться незамеченным в течение длительного времени.
Аналогичный случай — port knocking . В обычных коммуникациях время запросов не имеет значения и не отслеживается. Port knocking делает его значимым.
Хэндел и Сэндфорд представили исследование, в котором они изучают скрытые каналы в рамках общей конструкции сетевых коммуникационных протоколов. [6] Они используют модель OSI в качестве основы для своей разработки, в которой они характеризуют элементы системы, имеющие потенциал для использования для сокрытия данных. Принятый подход имеет преимущества по сравнению с ними, поскольку рассматриваются стандарты, противопоставленные конкретным сетевым средам или архитектурам.
Их исследование не ставит целью представить надежные стеганографические схемы. Вместо этого они устанавливают основные принципы сокрытия данных на каждом из семи уровней OSI . Помимо предложения использовать зарезервированные поля заголовков протоколов (которые легко обнаруживаются) на более высоких уровнях сети, они также предлагают возможность каналов синхронизации, включающих манипуляцию CSMA/CD на физическом уровне.
Их работа выявляет такие достоинства скрытых каналов, как:
Их анализ скрытых каналов не учитывает такие вопросы, как совместимость этих методов сокрытия данных с другими сетевыми узлами, оценка пропускной способности скрытых каналов, влияние сокрытия данных на сеть с точки зрения сложности и совместимости. Более того, общность методов не может быть полностью оправдана на практике, поскольку модель OSI как таковая не существует в функциональных системах.
В качестве первого анализа скрытых каналов в сетевой среде Гирлинг. Его работа фокусируется на локальных сетях (ЛВС), в которых определены три очевидных скрытых канала (два канала хранения и один канал синхронизации). Это демонстрирует реальные примеры возможностей пропускной способности для простых скрытых каналов в ЛВС. Для конкретной среды ЛВС автор ввел понятие прослушивателя, который отслеживает действия определенного передатчика в ЛВС. Скрыто общающимися сторонами являются передатчик и прослушиватель. Скрытая информация, по мнению Гирлинга, может передаваться любым из следующих очевидных способов:
Сценарий передает скрытую информацию с помощью стратегии «когда-отправлено», поэтому называется таймингом скрытого канала. Время передачи блока данных рассчитывается как функция времени обработки программного обеспечения, скорости сети, размеров сетевых блоков и накладных расходов протокола. Предполагая, что блоки различных размеров передаются по локальной сети, накладные расходы программного обеспечения вычисляются в среднем, а для оценки пропускной способности (емкости) скрытых каналов также представлена новая оценка времени. Работа прокладывает путь для будущих исследований.
Статья, опубликованная Крейгом Роулендом, посвященная заголовкам IP и TCP набора протоколов TCP/IP, разрабатывает правильные методы кодирования и декодирования с использованием поля идентификации IP, начального порядкового номера TCP и полей порядкового номера подтверждения. [7] Эти методы реализованы в простой утилите, написанной для систем Linux, работающих под управлением ядер версии 2.0.
Роуленд предоставляет доказательство концепции, а также практические методы кодирования и декодирования для эксплуатации скрытых каналов с использованием набора протоколов TCP/IP. Эти методы анализируются с учетом механизмов безопасности, таких как трансляция сетевых адресов брандмауэра.
Однако необнаруживаемость этих методов скрытой связи сомнительна. Например, в случае, когда поле порядкового номера заголовка TCP подвергается манипуляциям, схема кодирования принимается таким образом, что каждый раз, когда один и тот же алфавит скрытно передается, он кодируется одним и тем же порядковым номером.
Более того, использование поля порядкового номера, а также поля подтверждения не может быть специфичным для кодировки ASCII английского алфавита, как предлагается, поскольку оба поля учитывают получение байтов данных, относящихся к конкретному сетевому пакету(ам).
После Роуленда несколько авторов в академических кругах опубликовали больше работ по скрытым каналам в наборе протоколов TCP/IP, включая множество контрмер, от статистических подходов до машинного обучения. [8] [9] [10] [11] Исследования сетевых скрытых каналов пересекаются с областью сетевой стеганографии, которая появилась позже.
{{cite book}}
: CS1 maint: другие ( ссылка )