Информационная безопасность Модели управления доступом Разграничение доступа Глобальные сети Средства анализа и управления сетями Примеры скриптов на JavaScript Примеры программирования на Java

Информационная безопасность

Разграничение доступа к системному диску

Процессы в ОС Windows 95/98/ME

В ОС семейства Windows возможен запуск пользовательских (прикладных пользователей) и системных (виртуального пользователя «система») процессов. При этом некоторые ОС, например, Windows 95/98/ME, не позволяют идентифицировать, относится ли запускаемый процесс к системному, либо к пользовательскому. То есть любой процесс может быть идентифицирован только его именем и именем пользователя, от лица которого он был запущен.

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

Из-за того, что все процессы в ОС Windows 95/98/Ме сопоставляются с пользователем, то разграничение доступа для процессов может сводиться к разграничению доступа для пользователей. Если же рассматривать механизмы защиты, реализующие разграничение только для одного типа субектов доступа — субъекта «пользователь», то в общем случае доступ к системному диску не может быть запрещен ни для чтения,ни для записи. Таким образом, не может быть корректно реализован ни дискреционный, ни мандатный механизмы управления доступом, т.к. присутствуют объекты, доступ к которым не может быть разграничен между системы.

Проиллюстрируем сказанное с использованием матриц доступа Б, где системный диск обозначим как Ос.

В соответствии с введенным ранее определением модель управления доступом на основе произвольного управления виртуальными каналами взаимодействия субъектов доступа в рассматриваемом случае описывается матрицей доступа Б, имеющей следующий вид:

Аналогично матрица доступа Б для полномочной модели управления доступом с комбинированным управлением виртуальными каналами взаимодействия субъектов доступа в рассматриваемом случае принимает вид, представленный ниже:

Из анализа приведенных моделей можем сделать вывод о невозможности корректного решения задачи управления доступом к ресурсам (не реализуема каноническая модель доступа) так как существует объект (системный диск), доступ к которому для субъектов «пользователь» разграничить невозможно.

Шифры перестановки

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

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

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

Роторные машины

В 20-е годы были изобретены разнообразные механические устройства, призванные автоматизировать процесс шифрования и расшифрования. Большинство из них состояло из клавиатуры для ввода открытого текста и набора роторов — специальных вращающихся колес, каждое из которых реализовывало простую замену. Например, ротор мог заменять “А” на “Ф”, “Б” на “У”, “С” на “Л” и т. д. При этом, выходные контакты одного ротора подсоединялись к входным контактам следующего за ним.

Тогда, например, если на клавиатуре 4-роторной машины нажималась клавиша “А”, то первый ротор мог превратить ее в “Ф”, которая, пройдя через второй ротор, могла стать буквой “Т”, которую третий ротор мог заменить на букву “К”, которая могла быть преобразована четвертым ротором в букву “Е” шифртекста. После этого роторы поворачивались, и в следующий раз замена была иной. Чтобы сбить с толку криптоаналитиков, роторы вращались с разной скоростью.

Наиболее известной роторной машиной стала немецкая “Энигма”, которую Германия использовала для засекречивания своей переписки во время Второй мировой войны.

Операция сложения по модулю 2

Операция сложения по модулю 2, которая в языке программирования С обозначается знаком ˄ , а в математике — знаком ⊕, представляет собой стандартную операцию над битами:

0 ⊕ 0 = 0

0 ⊕ 1 = 1

1 ⊕ 0 = 1

1 ⊕ 1 = 0

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

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

Следует помнить, что с помощью данного алгоритма вы можете надежно спрятать от человека, не сведущего в криптоанализе, содержание своей переписки, однако опытному криптоаналитику понадобится всего несколько минут, чтобы его взломать. Делается это очень просто, если предположить, например, что открытый текст сообщения написан на английском языке.

1. Сначала следует определить длину ключа. Шифртекст последовательно

складывается по модулю 2 со своей копией, сдвинутой на различное число байт, и в полученном векторе подсчитывается число совпадающих компонентов. Когда величина сдвига кратна длине ключа, это число превысит 6% от общей длины исследуемого шифртекста. Если не кратна, то совпадений будет меньше 0,4%. Проанализировав полученные данные, можно сделать обоснованный вывод о длине ключа.

2. Затем надо сложить шифртекст по модулю 2 со своей копией,

сдвинутой на величину длины ключа. Эта операция аннулирует ключ и оставит в наличии открытый текст сообщения, сложенный по модулю 2 со своей копией, сдвинутой на величину длины ключа.

Общие принципы построения вычислительных сетей