- Вы используете устаревшую версию браузера. Обновите Ваш браузер для надежной и безопасной работы.
- Операционные системы Astra Linux
- Linux Unified Key Setup: как защитить флэшки и внешние диски от взлома
- Шифрование на этапе инсталляции
- Шифрование внешних накопителей
- Как это сделать с помощью LUKS
- 1. Подключите и найдите свой внешний диск
- 2. Очистите диск
- 3. Отформатируйте диск под LUKS
- 4. Откройте LUKS-том
- 5. Создайте файловую систему
- Финал: монтирование LUKS-тома
Вы используете устаревшую версию браузера.
Обновите Ваш браузер для надежной и безопасной работы.
Работа во встроенном оборудовании зачастую должна соответствовать ряду требований и условий: заранее определенный набор задач; ограниченные вычислительные ресурсы; зачастую необслуживаемый режим работы; высокая надежность системы. Для решения задачи защиты и обеспечения надежности функционирования в указанных условиях для операционной системы Astra Linux Special Edition разработан особый режим системного киоска.
В данной статье описывается новый вариант реализации системного киоска в Astra Linux Special Edition, который в эксплуатационной документации называется kiosk2. Будут приведены основные особенности указанного решения и его место в комплексе средств защиты информации операционной системы
Операционная система Astra Linux позволяет реализовать многоуровневую модель защиты от эксплуатации уязвимостей за счет одновременного применения мандатного контроля целостности, замкнутой программной среды и ограничения программной среды посредством механизмов системного киоска (рис. 1).
Первым уровнем служит политика мандатного контроля целостности, реализованная в модуле ядра – parsec, который выполняет функции монитора обращений (диспетчера доступа).
Parsec обеспечивает разделение системных компонентов операционной системы по уровням доверия, существенно сокращая поверхность атаки для злоумышленника. За счет применения указанной технологии даже использование уязвимости в ряде системных компонентов не приведет к полной компрометации системы и скрытии следов взлома. К таким компонентам мы можем отнести графический сервер, сетевые сервисы, средства виртуализации.
За счет применения механизма мандатного контроля целостности мы получаем возможность разделить программные компоненты по уровням целостности и вынести настройки системного киоска на отдельный не нулевой уровень доверия.
Второй ключевой механизм контроля целостности – это подсистема замкнутой программной среды, реализованная посредством модуля ядра digsig_verif.
Инструменты замкнутой программной среды (ЗПС) предоставляют возможность внедрения цифровой подписи в исполняемые файлы формата ELF, входящие в состав устанавливаемого ПО и в расширенные атрибуты файловой системы. Механизм ЗПС позволяет реализовать запрет на открытие файлов и загрузки модулей ядра, поставленных на контроль, с неверной электронной подписью (ЭП) или без ЭП.
+file r o: /usr/bin
+file wr ou: /dev/tty
+file r o: /etc/ld.so.cache
+file r o: /bin/bash
+file r o: /lib/terminfo/*/*
+link r o: /lib/x86_64-linux-gnu/libpthread.so.0
+file r o: /etc/init.d
+file r o: /etc/bash_completion.d/*
+file r o: /etc/profile
За счет реализации механизма замкнутой программной среды обеспечивается надежная защита от подмены компонентов операционной системы, при этом отсутствует необходимость хранения закрытого ключа подписи в защищаемой системе.
Таким образом, формируется доверенная программная среда.
Финальным компонентом обеспечения целостности системы является реализованный механизм системного киоска, работающего по принципу белого списка приложений, функционал которого реализуется также модулем ядра parsec.
Степень ограничений прав пользователей задается специально в создаваемом профиле киоска.
Инструментарий Astra Linux позволяет сформировать профиль в автоматическом режиме за счет:
- режима глобальной записи событий от действий пользователя;
- режима записи событий от конкретного приложения.
Применение профиля системного киоска аналогично действию маски umask с тем отличием, что если umask накладывается при создании новых объектов ФС, то маска киоска накладывается на права доступа к файлу при любой попытке пользователя получить доступ. При этом для загрузки списка разрешенных операций по определенному пользователю применяется единственный дополнительный системный вызов.
Сам «системный киоск» работает по принципу конечного автомата.
При применении правил ограничения «системного киоска» происходит компиляция препроцессором профиля в бинарный файл. В ходе компиляции обрабатываются директивы включения вложенных профилей, производится преобразование пользовательского синтаксиса в формат, пригодный для проверки операций, обработка мягких ссылок и многое другое.
При этом дальнейшая обработка правил осуществляется файловым фильтром в модуле ядра parsec.
«Файловый фильтр» в модуле ядра сопоставляет:
- комбинацию режима открытия файла (read/write/create);
- флага владения файлом (u=владелец o=остальные);
- имени файла со списком разрешенных режимов+имён для данного пользователя (uid).
В системе независимо и глобально переключаются настройки сигнализации о нарушении правил (complain) и предотвращения нарушения правил (enforce).
В режиме киоска (маска по умолчанию) пользователь, для которого создан пустой профиль, не имеет возможности запустить ни одну системную программу, так как эти действия замаскированы.
При этом применение или изменение профиля пользователя позволяет в удобной форме, в том числе через графический интерфейс, управлять профилями доступа пользователей к программным компонентам, включая возможность вложенных профилей.
Все действия пользователя в киоске попадают в журнал аудита подсистемы безопасности parsec и могут быть отфильтрованы по типам событий. На рис. 4 показан журнал аудита, в котором зафиксированы неудачные попытки запустить несколько приложений, доступ к которым у пользователя в режиме киоска отсутствует.
Включение контроля доступа | 1. Включение контроля доступа с сохранением данного состояния до перезагрузки ОС: echo 1 | sudo tee /sys/module/parsec/parameters/uc_enforce |
2. Включение контроля доступа с сохранением данного состояния после перезагрузки ОС: echo 1 | sudo tee /etc/parsec/kiosk2_enforce | |
Отключение контроля доступа | 1. Отключение контроля доступа с сохранением данного состояния до перезагрузки ОС: echo 0 | sudo tee /sys/module/parsec/parameters/uc_enforce |
2. Отключение контроля доступа с сохранением данного состояния после перезагрузки ОС: echo 0 | sudo tee /etc/parsec/kiosk2_enforce | |
Включение режима протоколирования | 1. Включение протоколирования с сохранением данного состояния до перезагрузки ОС: echo 1 | sudo tee /sys/module/parsec/parameters/uc_complain |
2. Включение протоколирования с сохранением данного состояния после перезагрузки ОС: echo 1 | sudo tee /etc/parsec/kiosk2_complain | |
Отключение режима протоколирования | 1. Отключение протоколирования с сохранением данного состояния до перезагрузки ОС: echo 0 | sudo tee /sys/module/parsec/parameters/uc_complain |
2. Отключение протоколирования с сохранением данного состояния после перезагрузки ОС: echo 0 | sudo tee /etc/parsec/kiosk2_complain |
Таким образом мы последовательно:
- а) разделяем доверенную среду по уровням целостности (МКЦ);
- б) фиксируем доверенную среду (ЗПС);
- в) реализуем ограниченную программную среду для пользователя, от которого работает приложение для встроенного решения (киоск).
Системный киоск не зависит от процессорной архитектуры и типов аппаратных платформ и не увеличивает расход системных ресурсов при его активации, а его эффективность сложно переоценить, поскольку он обеспечивает применение профилей для разных сценариев без пересборки и изменения состава дистрибутива.
Из особенностей реализации системного киоска можно отразить следующие моменты:
- 1. Работает с шаблонами имён файлов, а не только с фиксированными именами. Это важно на фоне использования средства инициализации systemd, которое обращается при работе с пользователем к файлам с заранее неизвестными именами.
- 2. Предсказуемо реагирует на переименования файлов (при фильтрации учитывается только новое имя, разрешения не «прилипают» к inode файла и не сохраняются при переименовании).
- 3. Работает одинаково со всеми файловыми системами (в том числе proc, sysfs), не зависит от поддержки acl на файловой системе и от ее драйвера.
- 4. Позволяет фильтровать доступ к собственным файлам пользователя, сохраняя при этом общую работоспособность системы.
- 5. Не затрагивает процессы, не выполняющиеся от пользователей с ограниченной средой исполнения, например, системные сервисы под системными аккаунтами.
Для упрощения администрирования системного киоска разработчиками Astra Linux реализована графическая утилита fly-admin-kiosk, которая позволяет управлять системным киоском в графическом режиме, легко создавать и редактировать профили.
Важным отличием настройки «системного киоска» от ручного выставления дискреционных прав на исполняемые программы является отсутствие необходимости ручного контроля прав доступа для каждого из приложений системы (так как допускается запуск только явно разрешенных приложений), а также отсутствие необходимости ручного изменения прав при обновлении системы (так как фактически права доступа определяются профилем киоска).
В заключение следует отметить, что описанная разработка хорошо дополняет уровни защиты Astra Linux Special Edition для конечных потребителей в тех решениях, где требуется жестко ограничить выбор исполняемых приложений и их работу в особых условиях эксплуатации, в том числе и во встраиваемых системах.
Источник: Журнал «Системный администратор»
Источник
Операционные системы Astra Linux
Оперативные обновления и методические указания
Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).
1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).
Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».
На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.
Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!
Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.
Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.
В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.
Очередные обновления (версии) предназначены для:
- реализации и совершенствования функциональных возможностей;
- поддержки современного оборудования;
- обеспечения соответствия актуальным требованиям безопасности информации;
- повышения удобства использования, управления компонентами и другие.
Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:
- инструкций и методических указаний по настройке и особенностям эксплуатации ОС, содержащих сведения о компенсирующих мерах или ограничениях по примене- нию ОС при эксплуатации;
- отдельных программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, инструкций по их установке и настройке, а также информации, содержащей сведения о контрольных суммах всех файлов оперативного обновления;
- обновлений безопасности, представляющих собой файл с совокупностью программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, а также информации, содержащей сведения о контрольных суммах всех файлов обновлений безопасности, указания по установке, настройке и особенностям эксплуатации ОС с установленными обновлениями безопасности.
Ввиду совершенствования нормативно-правовых документов в области защиты информации и в целях обеспечения соответствия информационных актуальным требованиям безопасности информации, а также обеспечения их долговременной эксплуатации, в том числе работоспособности на современных средствах вычислительной техники, рекомендуется на регулярной основе планировать проведение мероприятий по применению очередных и оперативных обновлений операционной системы.
Источник
Linux Unified Key Setup: как защитить флэшки и внешние диски от взлома
Посмотрим, как с помощью системы на базе спецификации Linux Unified Key Setup (LUKS) и утилиты Cryptsetup можно зашифровать флэш-накопители, внешние жёсткие диски и прочие переносные устройства, хранящие дорогую вашему сердцу информацию.
Чаще всего, пользователи рассуждают достаточно просто: накопители в безопасности, пока их никто не украл. Некоторые идут в размышлениях дальше: если для входа в систему нужно знать пароль — злоумышленнику будет сложно получить доступ к данным на украденном диске. Успокаиваясь на этой мысли, они забывают задать себе важный вопрос: к чему именно мешает получить доступ их пароль на самом деле?
Во многих случаях они всего лишь служат для разблокировки пользовательского сеанса. И тогда злоумышленник может забрать данные с диска, не зная пользовательский пароль: он просто обойдётся без разглядывания заставки на вашем рабочем столе.
Особенно хорошо это понимают специалисты, которые сталкивались с последствиями такой недальновидности и сделали соответствующие выводы. Доступ к необходимой информации можно получить, подключив к машине свой внешний загрузочный диск, и после некоторых успешных манипуляций читать диск пользователя, как открытую книгу.
Если время сильно ограничено, злодеи действительно могут украсть накопитель и взять работу на дом. Особенно легко это им удаётся, если он внешний и подключён через USB. В этой статье речь пойдёт о простом инструменте, позволяющем защитить от несанкционированного доступа данные на внешних накопителях. Даже если они уже попали в руки к злоумышленникам. Речь пойдёт о шифровании дисков в операционных системах семейства Linux.
Linux Unified Key Setup (LUKS) — это система шифрования дисков, которая хранит данные в зашифрованном физическом разделе. Зашифровать их помогает модуль ядра dm-crypt, позволяющий создавать виртуальное блочное устройство, с которым взаимодействует пользователь.
Если пользователь хочет записать данные на виртуальное устройство, они на лету шифруются и записываются на диск. Если же он хочет читать с виртуального устройства, данные, хранящиеся на физическом диске, дешифруются и передаются в открытом виде через виртуальный диск пользователю. Данные остаются под защитой и в том случае, когда диск подключают к другому компьютеру.
Шифрование на этапе инсталляции
Проще всего выполнить полное шифрование диска, выбрав соответствующую опцию в процессе установки операционной системы. Большинство современных Linux-дистрибутивов позволяют это сделать. Здесь не буду расписывать в деталях, так как статья посвящена шифрованию внешних накопителей (далее я подробно буду рассматривать именно его).
Изображение: Seth Kenlon, CC BY-SA 4.0
После установки у вас будет зашифрованный диск. Перед загрузкой системы потребуется ввести парольную фразу. Если захотите извлечь диск или получить к нему доступ из другой операционной системы, нужно выполнить дешифрацию с помощью той же системы LUKS.
Шифрование внешних накопителей
Внешние накопители созданы для того, чтобы их подключали к разным устройствам, быстро обмениваясь информацией, таскали с собой по работе и иногда… теряли. Я находил случайно оставленные диски в USB-портах компьютеров в вестибюле отелей, в принтерах бизнес-центров, диски, потерянные в учебных аудиториях и даже в прачечной. Вряд ли их владельцы хотели бы, чтобы кто-то нашёл эти накопители и добрался до рабочих документов или личных архивов.
LUKS вместе с утилитой Cryptsetup позволяет шифровать внешние накопители почти так же просто, как и при инсталляции ОС.
Как это сделать с помощью LUKS
ВАЖНО: внешний накопитель должен быть либо пустым, либо содержать ненужные вам данные. Так что, если оба этих условия не выполнены, нулевым шагом должен стать бэкап.
1. Подключите и найдите свой внешний диск
Я для примера взял небольшую флэшку. Представим, что путь к ней выглядит как /dev/sdX. Утилита lsblk покажет мне вот такую информацию о блочных устройствах:
Всё правильно, моя флэшка обнаружена. Да, это именно она. Я точно знаю, что её размер 1.8Gb. В списке всего один диск (disk) с таким размером (ему соответствует один раздел part).
Я уделяю такое внимание этой, казалось бы, мелочи, так как дисков может быть много. И в случае ошибки на следующем шаге вы сотрёте с другого диска данные, которые вам всё ещё нужны.
2. Очистите диск
На этом шаге я обнуляю таблицу разделов диска:
Это, конечно, необязательно, но я люблю это состояние чистого листа.
3. Отформатируйте диск под LUKS
Используем для этого утилиту Cryptsetup. Её подкоманда luksFormat запускает первый этап создания зашифрованного раздела LUKS (позже мы создадим там файловую систему).
После этого появится предупреждение об удалении всех данных (которые могли всё ещё оставаться на диске). Кроме того, вас попросят придумать и ввести парольную фразу для диска.
4. Откройте LUKS-том
Процесс создания зашифрованного раздела завершён. Теперь для продолжения работы с диском нужно вводить парольную фразу. Открыть произвольный LUKS-том (то есть, подключить виртуальное блочное устройство) можно с помощью подкоманды open.
Я придумал фразу (а точнее, просто пароль в одно слово) «vaultdrive». У вас будет какой-то свой вариант. Чтобы посмотреть список открытых томов, нужно вывести содержимое каталога /dev/mapper:
Чтобы закрыть LUKS-том vaultdrive нужно написать:
После этого он исчезнет из каталога /dev/mapper.
5. Создайте файловую систему
Создайте файловую систему, чтобы иметь возможность хранить свои данные на диске. Я выбрал XFS, но это далеко не единственный вариант: можно использовать, например, ext4 или JFS. И многие другие.
Финал: монтирование LUKS-тома
Можно делать это через терминал. Например, мы хотим использовать для нашей цели директорию /mnt/hd
А рабочий стол KDE, например, позволяет указать диск для монтирования в специальном разделе с настройками. Но и там я тоже должен вводить пароль или парольную фразу, прежде чем произойдёт монтирование.
Изображение: Seth Kenlon, CC BY-SA 4.0
А какие инструменты для шифрования внешних дисков на Linux используете вы? Какие инструменты используете для аналогичных задач на macOS и Windows?
Недорогие VDS для любых задач. Используем новейшее железо, лучший дата-центр в Москве уровня надёжности TIER IV, бесплатно предоставляем защиту от DDoS-атак на любом тарифном плане, который можно создать самостоятельно в течение минуты.
Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!
Источник