<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Для OpenBSD представлена новая техника рандомизации адресного пространства ядра]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=39250&amp;type=atom" />
	<updated>2017-06-13T03:31:01Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=39250</id>
		<entry>
			<title type="html"><![CDATA[Для OpenBSD представлена новая техника рандомизации адресного пространства ядра]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=455764#p455764" />
			<content type="html"><![CDATA[<p><br />&nbsp; &nbsp; Тео де Раадт (Theo de Raadt) представил новую технику рандомизации адресного пространства ядра KARL (Kernel Address Randomized&nbsp; &nbsp;Link), нацеленную на усиления защиты от атак, связанных с манипуляцией структурами и кодом ядра. KARL вводит в обиход новую модель отражения страниц памяти (mapping), при которой&nbsp; все относительные указатели между функциями и данными ядра никогда не повторяются между перезагрузками системы.&nbsp; &nbsp; &nbsp; В отличие от классической техники рандомизации памяти, которая затрагивает только операции распределения памяти, новая техника позволяет изменить первичную раскладку виртуального адресного пространства ядра. Метод достаточно прост в реализации и не требует переработки подсистем ядра - при каждой перезагрузке системы предлагается выполнять операцию перекомпоновки ядра, формируя исполняемый файл ядра на основе подключения объектных модулей и runtime-компонентов в случайном порядке. Таким образом, при каждой перезагрузке&nbsp; формируется уникальный экземпляр ядра, раскладка структур в котором заранее неизвестна.&nbsp; &nbsp; &nbsp;Компоновка осуществляется из rc-скриптов и замедляет загрузку примерно на секунду. При каждой загрузке генерируется ядро для следующей загрузки. Единственным повторяющимся известным адресом в подобных ядрах является точка активации кода начального запуска (bootstrap), поэтому для защиты от манипуляции с ним после завершения инициализации ядра выполнение bootstrap-кода блокируется через установку TRAP или выполнение unmap, в зависимости от используемой архитектуры.&nbsp; &nbsp; <br />&nbsp; &nbsp; Источник: <strong>http://www.opennet.ru/opennews/art.shtml?num=46687</strong><br />&nbsp; &nbsp; <br /><a href="http://www.opennet.ru/opennews/art.shtml?num=46687">_источник</a></p>]]></content>
			<author>
				<name><![CDATA[R2-D2]]></name>
				<uri>https://linuxforum.ru/profile.php?id=40794</uri>
			</author>
			<updated>2017-06-13T03:31:01Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=455764#p455764</id>
		</entry>
</feed>
