<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Критическая уязвимость в обучающей среде Moodle </title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html</link>
    <description>В Moodle (https://moodle.org) (Modular Object-Oriented Dynamic Learning Environment),  свободной модульной системе для организации дистанционного обучения, выявлена (http://netanelrub.in/2017/03/20/moodle-remote-code-execution/) критическая узявимость (https://moodle.org/mod/forum/discuss.php?d=349419) (CVE-2017-2641 (https://security-tracker.debian.org/tracker/CVE-2017-2641)), позволяющая осуществить подстановку SQL-кода и организовать выполнение произвольного PHP-кода на сервере. На основе Moodle построены обучающие системы многих известных университетов. В каталоге Moodle (https://moodle.net/sites/) зарегистрировано более 78 тысяч обучающих сайтов, в том числе 2160 в России, 655 - Украине, 151 - Беларуси и 116 - Казахстане. &lt;br&gt;&lt;br&gt;&lt;br&gt;В ветке Moodle  3.2 уязвимость могут эксплуатировать зарегистрированные пользователи через манипуляции с настройками профиля пользователя  в web-интерфейсе. В более ранних выпусках атака возможна только через API для взаимодействия в web-сервисами при наличии соответствующих расшир</description>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#36</link>
    <pubDate>Fri, 24 Mar 2017 11:19:20 GMT</pubDate>
    <description>Непонятно с чего оппонент пытается выдать PDO за честные prepared statements, хотя &quot;be aware that PDO will silently fallback to emulating statements that MySQL can&apos;t prepare natively&quot;. Похапе - не просто г-но, хуже того, это ВНЕЗАПНО не работающее г-но.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (DeadLoco)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#34</link>
    <pubDate>Thu, 23 Mar 2017 22:12:14 GMT</pubDate>
    <description>&amp;gt; Для пользования хранимками нужна хорошая СУБД умеющая нормально работать с курсорами &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;&lt;br&gt;У кого вообще может хватить ума дать публичный доступ к базе для произвольных запросов? Сам в свою - сколько угодно, но когда это продукт для других - за такое надо гнать из профессии. &lt;br&gt;&lt;br&gt;&amp;gt; Так, например, prepared запрос, или вызываемый из хранимки, пессимизируется. &lt;br&gt;&lt;br&gt;Фейспалм.тхт&lt;br&gt;Ну почитайте же хоть что-нибудь о хранимых процедурах!&lt;br&gt;&lt;br&gt;&amp;gt; Если заставить php&apos;шника унести логику в хранимки, то проблемы просто переедут в хранимки.&lt;br&gt;&lt;br&gt;Потому что нельзя похапешника пускать с немытыми ногами в РСУБД. ДБА должен выкатить АПИ из хранимых процедур, и этим все взаимодействие похапешников с базой должно быть ограничено. &lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (all_glory_to_the_hypnotoad)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#33</link>
    <pubDate>Thu, 23 Mar 2017 21:23:56 GMT</pubDate>
    <description>Не достаточно.&lt;br&gt;&lt;br&gt;Во-первых, для пользования хранимками нужна хорошая СУБД умеющая нормально работать с курсорами и итераторами, да и вообще с хранимками. Какой-нибудь компаньён php в виде mysql не очень подходит.&lt;br&gt;&lt;br&gt;Во-вторых, не каждый вид деятельности удобно засовывать в хранимки, например различные часто меняющиеся аналитические запросы. А что представимо более-менее стабильным простым API можно, конечно, засунуть в хранимки.&lt;br&gt;&lt;br&gt;В-третих, разовый SQL запрос (это как раз что делает пых выше склеиванием запроса в текст) выполняется качественно не точно так же, как и prepared SQL запрос или запрос вызванный из хранимки. Есть нюансы работы планировщика запроса. Так, например, prepared запрос, или вызываемый из хранимки, пессимизируется. Это особенно плохо для больших аналитических запросов.&lt;br&gt;&lt;br&gt;В-четвёртых, из хранимок тоже можно вызывать обычные текстовые запросы напарываясь на похожие грабли. Если заставить php&apos;шника унести логику в хранимки, то проблемы просто переедут в хранимки.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (DeadLoco)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#32</link>
    <pubDate>Thu, 23 Mar 2017 20:58:34 GMT</pubDate>
    <description>Господи, ну что за страсть непременно строить велосипеды из костылей?&lt;br&gt;&lt;br&gt;Достаточно ограничить похапэ вызовами хранимых процедур, а любые прямые обращения к таблицам наглухо запретить. И все, проблема исчерпана. Но нет, ниасиляторы РСУБД начинают из гoвнa и веточек сооружать гoвнo, нафаршированое веточками... &lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (angra)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#31</link>
    <pubDate>Thu, 23 Mar 2017 09:06:01 GMT</pubDate>
    <description>Нет там речь именно о PHP. Только непонятно, почему задокументированную фичу PDO оппонент считает ошибкой. &lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (angra)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#30</link>
    <pubDate>Thu, 23 Mar 2017 09:02:25 GMT</pubDate>
    <description>Это ты сейчас мощно всех программистов на С обдал. Оказывается они головой не думают, раз делают такие ошибки. Но ты то конечно не такой, ты ведь уже написал ядро аналогичное линукс без единой ошибки такого рода и вот-вот его всем покажешь, правда?&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#29</link>
    <pubDate>Thu, 23 Mar 2017 01:28:52 GMT</pubDate>
    <description>&amp;gt; Школьники же, небось, и писали. Именно для того, чтобы аттестаты досрочно получить. &lt;br&gt;&lt;br&gt;Если школьники находят уязвимости и могут написать эксплойт - я спокоен за это поколение.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#28</link>
    <pubDate>Thu, 23 Mar 2017 01:27:57 GMT</pubDate>
    <description>&amp;gt; а младенческие null pointer dereference и buffer overflow всё никуда не деваются. &lt;br&gt;&lt;br&gt;Потому что головой надо думать а не другим местом. Это, кстати, ко всем языкам относится.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в обучающей среде Moodle  (Аноним)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID3/110750.html#27</link>
    <pubDate>Wed, 22 Mar 2017 23:23:26 GMT</pubDate>
    <description>&amp;gt; The important thing to realize here is that PDO by default does NOT do true prepared statements. It emulates them (for MySQL). Therefore, PDO internally builds the query string, calling mysql_real_escape_string() (the MySQL C API function) on each bound string value.&lt;br&gt;&lt;br&gt;Ты читать не умеешь?&lt;br&gt;</description>
</item>

</channel>
</rss>
