Выпуск OpenBSD 6.2

09.10.2017 20:41
Представлен новый выпуск свободной, кросс-платформенной UNIX-подобной операционной системы OpenBSD 6.2. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году, после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 13 аппаратных платформ), стандартизация, корректная работа, активная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 6.2 составляет 340 Мб. Кроме непосредственно операционной системы, проект OpenBSD известен своими компонентами, которые получили распространение в других системах и зарекомендовали себя как одни из наиболее безопасных и качественных решений. Среди них: LibreSSL (форк OpenSSL), OpenSSH, пакетный фильтр PF, демоны маршрутизации
Подготовлен выпуск операционной системы LibertyBSD 6.1, в рамках которой развивается ответвление от OpenBSD, избавленное от элементов загрузки прошивок и драйверов, содержащих несвободные бинарные компоненты. Разработчики LibertyBSD считают, что поставка бинарных прошивок несёт скрытую угрозу для безопасности системы из-за возможного наличия в бинарных прошивках закладок и непредвиденной функциональности. Участниками проекта также ведётся работа по созданию очищенного от блобов варианта коллекции портов и пакетов. Сборки подготовлены для архитектур i386 и AMD64. Новый выпуск примечателен обновлением кодовой базы до OpenBSD 6.1 и написанием скриптов для автоматизации избавления кодовой базы OpenBSD от блобов и ребрендинга, что позволит более оперативно выпускать новые выпуски после обновления OpenBSD. Кроме того, введены в строй новый сайт проекта, официальный FTP-сервер и CVS-сервер.
Тео де Раадт (Theo de Raadt) представил предварительную реализацию техники защиты RETGUARD, которую планируется интегрировать в OpenBSD для усложнения выполнения эксплоитов, построенных с использованием заимствования кусков кода и приёмов возвратно-ориентированного программирования (ROP, Return-Oriented Programming). Суть метода защиты RETGUARD заключается в искажении адреса возврата обработчиков типовых функций системных библиотек и ядра - перед началом обработчика и перед командой возврата управления (ret) добавляется вызов "xorl %rsp,(%rsp)" для x86_64 или "xorl %esp,(%rsp)" для 32-разрядных систем x86. При штатном ходе выполнения первый xor инвертирует адрес возврата, а второй инвертирует его второй раз, возвращая к изначальному виду. При выполнении эксплоита осуществляется переход на составляющий эксплоит блок заимствованных машинных инструкций (гаджет), точка входа в который как правило не совпадает с началом функции. Так как управление передано не на начало, а в определённую часть тела функции,
В состав OpenBSD принят набор патчей с реализацией технологии Trapsleds, позволяющей усложнить выполнение эксплоитов, использующих технику заимствования кусков кода, основанную на приёмах возвратно-ориентированного программирования (ROP, Return-Oriented Programming). Суть добавленного в OpenBSD метода защиты в применении для заполнения добавочных областей (используются для выравнивания блоков с кодом функций по 16-байтовой границе) инструкций INT3 вместо NOP на системах с архитектурой AMD64. Любые последовательности NOP длиннее двух байт заменяются на двухбайтовый короткий переход JMP поверх набора инструкций INT3, используемых для заполнения. Таким образом, при штатном выполнении программа перепрыгнет набор инструкций INT3 вместо холостого выполнения серии инструкций NOP. В случае осуществления атаки, при переходе на код гаджта (составляющий эксплоит блок заимствованных машинных инструкций) попадание на область заполнения на базе INT3 вместо NOP приведёт к возникновению исключения и остановке
Тео де Раадт (Theo de Raadt) представил новую технику рандомизации адресного пространства ядра KARL (Kernel Address Randomized Link), нацеленную на усиления защиты от атак, связанных с манипуляцией структурами и кодом ядра. KARL вводит в обиход новую модель отражения страниц памяти (mapping), при которой все относительные указатели между функциями и данными ядра никогда не повторяются между перезагрузками системы. В отличие от классической техники рандомизации памяти, которая затрагивает только операции распределения памяти, новая техника позволяет изменить первичную раскладку виртуального адресного пространства ядра. Метод достаточно прост в реализации и не требует переработки подсистем ядра - при каждой перезагрузке системы предлагается выполнять операцию перекомпоновки ядра, формируя исполняемый файл ядра на основе подключения объектных модулей и runtime-компонентов в случайном порядке. Таким образом, при каждой перезагрузке формируется уникальный экземпляр ядра, раскладка структур в котором заранее

Выпуск OpenBSD 6.1

11.04.2017 16:14
Представлен новый выпуск свободной, кросс-платформенной UNIX-подобной операционной системы OpenBSD 6.1. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году, после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 13 аппаратных платформ), стандартизация, корректная работа, активная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 6.1 составляет 199 Мб. Кроме непосредственно операционной системы, проект OpenBSD известен своими компонентами, которые получили распространение в других системах и зарекомендовали себя как одни из наиболее безопасных и качественных решений. Среди них: LibreSSL (форк OpenSSL), OpenSSH, пакетный фильтр PF, демоны маршрутизации
В рамках политики избавления от небезопасных протоколов в OpenBSD началось движение в сторону отказа от устаревших протоколов WEP и WPA1. Первым шагом станет отключение данных протоколов по умолчанию, при этом остаётся возможность включения их вручную через ifconfig. После релиза OpenBSD 6.1 или 6.2, в зависимости от результатов первого шага, планируется убрать соответствующий код из ядра. Версия стандарта IEEE 802.11-2012 также называет TKIP устаревшим и не рекомендует его к применению. Протокол WPA1 по сути является излишне рано реализованным черновым стандартом WPA2, и опирается на уязвимый к целому ряду атак TKIP. Среди прочих недостатков TKIP упоминается возможность лёгкого DoS любой основанной на нём сети Wi-Fi путём отправки точке доступа нешифруемых по стандарту служебных сообщений.
Следом за FreeBSD и DragonFly BSD в состав ветки OpenBSD Current, на основе которой формируется выпуск OpenBSD 6.1, включены компоненты LLVM и компилятор Clang (импортирован выпуск LLVM 3.8.1). Код LLVM размещён в директории "src/gnu/", наряду с GCC. Так как содержимое src/gnu/ не ограничивается проектами GNU (например, там находится Perl), разработчики явно обозначили в файле README, что директория названа по историческим причинам, а теперь служит для размещения больших и не совсем приемлемых программных пакетов, без которых, тем не менее, невозможно обойтись.

Выпуск OpenBSD 6.0

01.09.2016 17:01
Состоялся релиз операционной системы OpenBSD 6.0. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году, после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 20 аппаратных платформ), стандартизация, корректная работа, активная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 6.0 составляет 216 Мб. Кроме непосредственно операционной системы, проект OpenBSD известен своими компонентами, которые получили распространение в других системах и зарекомендовали себя как одни из наиболее безопасных и качественных решений. Среди них: LibreSSL (форк OpenSSL), OpenSSH, пакетный фильтр PF, демоны маршрутизации OpenBGPD и OpenOSPFD, NTP-сервер OpenNTPD, почтовый сервер
В дополнение к прекращению поддержки монтирования файловых систем непривилегированным пользователем разработчики OpenBSD удалили ряд подсистем, которые потенциально могут оказывать негативное влияние на безопасность, создавая дополнительные цели для проведения атак. В состав OpenBSD 6.0, релиз которого намечен на 1 сентября, не войдёт система ограничения системных вызовов systrace и компоненты эмуляции Linux. В OpenBSD 6.0 также будет включён по умолчанию механизм защиты W^X и добавлены настройки sysctl net.inet.tcp.rootonly и net.inet.udp.rootonly, позволяющие выборочно запретить приём соединений по указанным в списке сетевым портам непривилегированными процессами.