<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Итоги встречи разработчиков OpenBSD в Словении: nginx займет...</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html</link>
    <description>Под конец только что завершившегося хакатона (http://www.openbsd.org/hackathons.html) s2k11 в Словении, в базовую систему импортирован (http://marc.info/?l=openbsd-cvs&amp;m=131673440721777&amp;w=2) http-сервер nginx (http://www.nginx.ru/), развиваемый Игорем Сысоевым (http://www.sysoev.ru/). В ближайшем будущем планируется, что nginx займёт место Apache 1.3 в базовой системе OpenBSD. На данный момент nginx не включён в сборку, так как требуется решить ещё несколько технических вопросов, таких как использование встроенной PCRE-библиотеки, совмещение chroot, лог-файлов и обновления конфигурации.&lt;br&gt;&lt;br&gt;&lt;br&gt;Это далеко не единственное, что происходит в рамках разработки OpenBSD:&lt;br&gt;&lt;br&gt;&lt;br&gt;-  Полным ходом идут работы над полноценной загрузкой с softraid(4) (http://www.openbsd.org/cgi-bin/man.cgi?query=softraid&amp;sektion=4&amp;manpath=OpenBSD+Current&amp;format=html): корневой раздел в -CURRENT уже можно использовать прямо с softraid без ухищрений, но ядро пока что должно грузиться с отдельного диска;&lt;br&gt;&lt;br&gt;-  Готовится подд...&lt;br&gt;&lt;br&gt;URL: &lt;br&gt;Новость: http</description>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (Michael Shigorin)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#147</link>
    <pubDate>Sun, 09 Oct 2011 17:05:49 GMT</pubDate>
    <description>&amp;gt; Сборка как бы всегда нагружала в первую очередь процессор. ;)&lt;br&gt;&lt;br&gt;Смотря какая, сишное барахлишко уже довольно давно летит струёй, не загружая ядра полностью, если не поддать -j до N+1..2.  Плюсовое -- да, наваливается на CPU.&lt;br&gt;&lt;br&gt;&amp;gt; А в случае tmpfs говорить про ввод-вывод вообще не особо уместно. ;)&lt;br&gt;&lt;br&gt;Этот случай был упомянут &quot;хозяйке на заметку&quot; :)&lt;br&gt;&lt;br&gt;&amp;gt; И главное, причём тут самоуспокоение, если сборка как раз идёт не в ядре? :)&lt;br&gt;&lt;br&gt;А I/O где идёт?&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; и то 500Mb/s sustained write было не в диковинку &#091;...&#093;&lt;br&gt;&amp;gt; МегаБАЙТ или мегаБИТ? ;) &lt;br&gt;&lt;br&gt;Байт, конечно (иначе бы написал Mbps, хотя согласен, лучше уточнить сразу).&lt;br&gt;&lt;br&gt;&amp;gt; AFAIK, поток от одного контроллера не параллелится, прерывание-то одно.&lt;br&gt;&lt;br&gt;Ну так их и несколько ставят порой... в стораджевых драйверах я даже не чайник, что там с/от SMP, не знаю -- могу техдира спросить при случае.&lt;br&gt;&lt;br&gt;&amp;gt; И главное - куда этот поток пойдёт?&lt;br&gt;&lt;br&gt;Скорее уж не &quot;куда пойдёт&quot;, а &quot;какой поток упрётся в одно доступное ядро&quot;.&lt;br&gt;&lt;br&gt;&amp;gt; Эм, а чем это SAS не SCSI? :) &lt;br&gt;&lt;br&gt;Разъёмчиком не вышел. :)&lt;br&gt;</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (PereresusNeVlezaetBuggy)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#146</link>
    <pubDate>Sat, 08 Oct 2011 15:30:44 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Я говорил про собственно ввод-вывод. Который, на минуточку, практически всегда &lt;br&gt;&amp;gt;&amp;gt; медленнее, чем его может жевать процессор.&lt;br&gt;&amp;gt; Это на сейчас неверный подход и самоуспокоение.  Конкретно у меня на &lt;br&gt;&amp;gt; сборочном ноуте сейчас основной упор именно в процессор -- поскольку сборка &lt;br&gt;&amp;gt; в tmpfs и SSD.&lt;br&gt;&lt;br&gt;Сборка как бы всегда нагружала в первую очередь процессор. ;) А в случае tmpfs говорить про ввод-вывод вообще не особо уместно. ;) И главное, причём тут самоуспокоение, если сборка как раз идёт не в ядре? :)&lt;br&gt;&lt;br&gt;&amp;gt; Причём вычислительная мощность одного процессорного ядра скорее остановилась, а I/O призадумалось &lt;br&gt;&amp;gt; только на HDD, и то 500Mb/s sustained write было не в &lt;br&gt;&amp;gt; диковинку на железе дешевле $3000 опять же лет пять тому (помнится, &lt;br&gt;&amp;gt; HP DL385 с P400i и 6/8? 2.5&quot; SAS HDD).&lt;br&gt;&lt;br&gt;МегаБАЙТ или мегаБИТ? ;)&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; Или ваши жёсткие диски (вместе с контроллерами) научились отдавать (я молчу про запись) &lt;br&gt;&amp;gt;&amp;gt; эдак гигабайт в секунду?&lt;br&gt;&amp;gt; Это они у нас и пять лет тому умели, если уже не &lt;br&gt;&amp;gt; больше (одна 16-портовая Areca</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (Michael Shigorin)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#145</link>
    <pubDate>Sat, 08 Oct 2011 08:50:26 GMT</pubDate>
    <description>&amp;gt; Я говорил про собственно ввод-вывод. Который, на минуточку, практически всегда&lt;br&gt;&amp;gt; медленнее, чем его может жевать процессор.&lt;br&gt;&lt;br&gt;Это на сейчас неверный подход и самоуспокоение.  Конкретно у меня на сборочном ноуте сейчас основной упор именно в процессор -- поскольку сборка в tmpfs и SSD.&lt;br&gt;&lt;br&gt;Причём вычислительная мощность одного процессорного ядра скорее остановилась, а I/O призадумалось только на HDD, и то 500Mb/s sustained write было не в диковинку на железе дешевле $3000 опять же лет пять тому (помнится, HP DL385 с P400i и 6/8? 2.5&quot; SAS HDD).&lt;br&gt;&lt;br&gt;&amp;gt; Или ваши жёсткие диски (вместе с контроллерами) научились отдавать (я молчу про запись)&lt;br&gt;&amp;gt; эдак гигабайт в секунду?&lt;br&gt;&lt;br&gt;Это они у нас и пять лет тому умели, если уже не больше (одна 16-портовая Areca затыкалась, но две восьмипортовки в тупом режиме более-менее справлялись).  Сейчас же при необходимости организовать такой поток цена вопроса -- меньше килобакса.&lt;br&gt;&lt;br&gt;&amp;gt; Не, конечно, можно при желании достаточно современный SCSI-контроллер засунуть &lt;br&gt;&amp;gt; в машину с процом п</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (PereresusNeVlezaetBuggy)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#144</link>
    <pubDate>Sat, 08 Oct 2011 00:36:57 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; &#091;...&#093; &lt;br&gt;&amp;gt;&amp;gt; Если не будет параллельной работы userland-кода, то весь супер-пупер-быстрый ввод-вывод &lt;br&gt;&amp;gt;&amp;gt; будет всё равно упираться в не успевающую его прожёвывать программу.&lt;br&gt;&amp;gt; Ввод-вывод не может ни во что упереться, а программа ничего не должна &lt;br&gt;&amp;gt; успевать за ядром. Вы путаете причинно-следственную связь: программа через сисколы просит &lt;br&gt;&amp;gt; ядро сделать вон то и вон это. А ядро идет и &lt;br&gt;&amp;gt; делает. Ядро не может сделать больше чем его попросили. Оно может &lt;br&gt;&amp;gt; протормозить с выполнением сискола, но больше чем программе надо - оно &lt;br&gt;&amp;gt; в принципе запихнуть в нее не может. Потому что это программа &lt;br&gt;&amp;gt; инициирует запрос, а ядро его разруливает.&lt;br&gt;&lt;br&gt;И-и-и?..&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; Единственное исключение - ситуации, когда ввод-вывод полностью или &lt;br&gt;&amp;gt;&amp;gt; практически полностью обрабатывается ядром: та же маршрутизация сетевых &lt;br&gt;&amp;gt;&amp;gt; пакетов, например (т.е. сквозь машину, а не к ней или от неё).&lt;br&gt;&amp;gt; Что значит - единственное исключение? Юзерланд, особенно способный к работе на нескольких &lt;br&gt;&amp;gt; процессорах - на раз упр</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (paxuser)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#143</link>
    <pubDate>Sun, 02 Oct 2011 12:36:45 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Потому что одно не отменяет другого. Если у вас (хакера) есть два &lt;br&gt;&amp;gt;&amp;gt; врага, Вася (ядро) и Петя (обычный процесс), и на Пете есть &lt;br&gt;&amp;gt;&amp;gt; бронежилет, которого нет на Васе, это ещё не 100&#037; гарантия, что &lt;br&gt;&amp;gt;&amp;gt; Вася сдастся раньше Пети. Здесь можно вести речь лишь о вероятностях.&lt;br&gt;&amp;gt; Ну, как показала практика, Петя таки сдался раньше Васи. В OpenSSH опубликовали &lt;br&gt;&lt;br&gt;Имена перепутал. Вася, который ядро, сдался раньше.&lt;br&gt;</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (paxuser)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#142</link>
    <pubDate>Sun, 02 Oct 2011 08:20:41 GMT</pubDate>
    <description>&amp;gt; Не совсем понял фразы &quot;общий стек&quot;: для каждого потока выполнения в ядре &lt;br&gt;&amp;gt; свой стек. Но добраться до этого стека при условии, что мы &lt;br&gt;&lt;br&gt;Имелся ввиду общий стек системных вызовов.&lt;br&gt;&lt;br&gt;&amp;gt; Другое дело, что возможность считать произвольный адрес в памяти несёт в себе &lt;br&gt;&amp;gt; столько потенциальных угроз (вроде считывания ключей IPSec), что в гроб ложиться &lt;br&gt;&amp;gt; можно сразу. Так что я бы не стал заморачиваться утаиванием канарейки,&lt;br&gt;&lt;br&gt;&quot;Чтение произвольного адреса&quot; бывает разным - это может быть и off-by-one, и частично подконтрольное атакующему значение смещения относительно указателя, и целочисленное переполнение не более, чем на некоторую величину. Уязвимостей к абсолютно случайному чтению существует гораздо меньше, чем к ограниченному.&lt;br&gt; &lt;br&gt;&amp;gt; а обратил внимание в первую очередь на исходную проблему (возможности считывания), &lt;br&gt;&amp;gt; как более актульную. Тем более, что никакой дополнительный слой защиты от &lt;br&gt;&amp;gt; таких ошибок не спасёт: как он отличит легальное обращение к, скажем, &lt;br&gt;&amp;gt; контексту процесса от нелегального?&lt;br&gt;&lt;br&gt;В </description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#141</link>
    <pubDate>Sun, 02 Oct 2011 03:53:50 GMT</pubDate>
    <description>&#091;...&#093;&lt;br&gt;&amp;gt;&amp;gt; вычислительных задач (CPU-bound нежели I/O bound). Ну да, крякеры мд5 на &lt;br&gt;&amp;gt;&amp;gt; скорость тормзить не будут. А вот I/O bound программы (столь типичные &lt;br&gt;&amp;gt;&amp;gt; для серверов) будут часто стоять колом&lt;br&gt;&lt;br&gt;&#091;...&#093;&lt;br&gt;&amp;gt; Если не будет параллельной работы userland-кода, то весь супер-пупер-быстрый ввод-вывод &lt;br&gt;&amp;gt; будет всё равно упираться в не успевающую его прожёвывать программу. &lt;br&gt;&lt;br&gt;Ввод-вывод не может ни во что упереться, а программа ничего не должна успевать за ядром. Вы путаете причинно-следственную связь: программа через сисколы просит ядро сделать вон то и вон это. А ядро идет и делает. Ядро не может сделать больше чем его попросили. Оно может протормозить с выполнением сискола, но больше чем программе надо - оно в принципе запихнуть в нее не может. Потому что это программа инициирует запрос, а ядро его разруливает.&lt;br&gt;&lt;br&gt;&amp;gt; Единственное исключение - ситуации, когда ввод-вывод полностью или&lt;br&gt;&amp;gt; практически полностью обрабатывается ядром: та же маршрутизация сетевых&lt;br&gt;&amp;gt; пакетов, например (т.е. сквозь машину, а не к ней </description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (paxuser)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#140</link>
    <pubDate>Sun, 02 Oct 2011 03:14:34 GMT</pubDate>
    <description>&amp;gt; вызовов в случае ядра). Впрочем, для её считывания всё равно надо &lt;br&gt;&amp;gt; иметь возможность читать более-менее произвольную область памяти. (см. ниже) &lt;br&gt;&lt;br&gt;Для её считывания достаточно утечки неинициализированной переменной или неинициализированной области выравнивания полей структуры.&lt;br&gt;&lt;br&gt;Вы не знаете об этом или не рассматриваете по каким-то другим причинам?&lt;br&gt;</description>
</item>

<item>
    <title>Итоги встречи разработчиков OpenBSD в Словении: nginx займет... (PereresusNeVlezaetBuggy)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/80467.html#139</link>
    <pubDate>Fri, 30 Sep 2011 17:24:14 GMT</pubDate>
    <description>&amp;gt;&amp;gt; будет известно. Хреново.&lt;br&gt;&lt;br&gt;Можете мя закапывать - я сослепу перепутал в листинге запись константы и обращение к памяти по заданному адресу... После дополнительных проверок - таки да, канарейка выставляется случайная при запуске, общая для всех функций (системных вызовов в случае ядра). Впрочем, для её считывания всё равно надо иметь возможность читать более-менее произвольную область памяти. (см. ниже)&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; Если не стоковое, то нужна не просто утечка, &lt;br&gt;&amp;gt;&amp;gt; а из данного системного вызова. Две разных уязвимости на один системный &lt;br&gt;&amp;gt; Уязвимость к утечке может быть где угодно. Главное, чтобы утечка произошла с &lt;br&gt;&amp;gt; адреса на общем стеке, где лежит canary-значение, сохранившееся после предыдущего сисколла. &lt;br&gt;&lt;br&gt;Не совсем понял фразы &quot;общий стек&quot;: для каждого потока выполнения в ядре свой стек. Но добраться до этого стека при условии, что мы можем считывать произвольную область памяти через уязвимость в произвольном системном вызове, конечно, можно.&lt;br&gt;&lt;br&gt;Другое дело, что возможность считать произвольный адрес в памя</description>
</item>

</channel>
</rss>
