Уотергейтский принцип

О коррупции в правительстве всегда сообщается в прошедшем времени.

Маленькие хитрости: "Знаете ли вы, что если Золотую рыбку положить на сковородку, ...

Microsoft открыл код стандартной библиотеки С++, поставляемой в Visual Studio
Tue, 17 Sep 2019 22:38:43 +0300

Firefox переходит на сокращённый цикл подготовки релизов
Tue, 17 Sep 2019 19:40:35 +0300

Определена дата выпуска CentOS 8.0
Tue, 17 Sep 2019 13:17:28 +0300

Ричард Столлман покинул пост президента Фонда СПО
Tue, 17 Sep 2019 08:03:13 +0300

Эдвард Сноуден дал интервью, в котором поделился мнением о мессенджерах
Tue, 17 Sep 2019 00:56:09 +0300

Проект по добавлению в GCC поддержки распараллеливания процесса компиляции
Sun, 15 Sep 2019 10:09:35 +0300

В Chrome 78 начнутся эксперименты с включением DNS-over-HTTPS
Sat, 14 Sep 2019 20:23:14 +0300

Компания Huawei начала предустановку Deepin Linux на ноутбуки
Fri, 13 Sep 2019 10:05:57 +0300

Выпуск CentOS 8.0 снова откладывается
Fri, 13 Sep 2019 09:58:18 +0300

Доступен Jakarta EE 8, первый выпуск после передачи Java EE проекту Eclipse
Thu, 12 Sep 2019 20:24:02 +0300

Сравнение производительности сетевого драйвера в вариантах на 10 языках программирования
Thu, 12 Sep 2019 10:47:50 +0300

Погиб автор vkd3d и один из ключевых разработчиков Wine
Thu, 12 Sep 2019 08:26:00 +0300

DNS over HTTPS отключен по умолчанию в порте Firefox для OpenBSD
Thu, 12 Sep 2019 02:52:46 +0300

Mozilla тестирует прокси-сервис Private Network для Firefox
Tue, 10 Sep 2019 23:22:42 +0300

В Ubuntu 19.10 будет использована светлая тема оформления и ускорена загрузка
Tue, 10 Sep 2019 21:56:08 +0300

Новости OPENNET
Новости

Разработчики проекта Grsecurity поделились поучительной историей, демонстрирующей как необдуманное устранение предупреждений компилятора может привести к появлению уязвимостей в коде. В конце мая для ядра Linux было предложено исправление нового вектора эксплуатации уязвимости Spectre через системный вызов ptrace.

В процессе тестирования патча разработчики обратили внимание, что при сборке компилятор выводит предупреждение о смешивании кода и определений (структура была определена после кода с присвоением значения существующей переменной):

int index = n; index = array_index_nospec(index, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];

Линус принял исправление в свою master-ветку, избавившись от предупреждения путём переноса определения переменной в блок if:

int index = array_index_nospec(n, HBP_NUM); struct perf_event *bp = thread->ptrace_bps[index];

В июле исправление также было портировано в стабильные ветки ядра 4.4, 4.9, 4.14, 4.19 и 5.2. Сопровождающие стабильных веток также столкнулись с предупреждением и вместо того, чтобы проверить, не устранено ли оно уже в master-ветке Линуса, собственноручно внесли исправление. Проблема в том, что они, особо не задумываясь, просто перенесли определение структуры вверх, так, что вызов array_index_nospec, непосредственно обеспечивающий защиту от уязвимости, перестал использоваться при определении структуры, и вместо переменной "index" всегда использовалась переменная "n":

int index = n; struct perf_event *bp = thread->ptrace_bps[index]; index = array_index_nospec(index, HBP_NUM);

9.0392 70.6040 0.5928 64.1213

НОВОСТИ: Выпущена альфа-версия нового XMPP-сервера Xabber Server Sat, 14 Sep 2019 21:57:15 +0300

Разработчики XMPP-клиента Xabber выпустили собственный XMPP сервер, основанный на форке ejabberd. Код проекта распространяется под лицензией AGPLv3.

???????@Mail.ru Opera Firefox INFOBOX - хостинг Google Chrome