<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Критическая уязвимость в PHP, проявляющаяся в CGI-режиме</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html</link>
    <description>Компьютерная группа реагирования на чрезвычайные ситуации (CERT)  опубликовала (http://www.kb.cert.org/vuls/id/520827) уведомление об утечке информации о критической уязвимости в PHP, которая позволяет запустить произвольный код на сервере или просмотреть исходный код любого PHP-скрипта, выполняемого в CGI-режиме. Cкрипты, выполняемые с использованием mod_php и FastCGI, не подвержены проблеме. &lt;br&gt;&lt;br&gt;&lt;br&gt;Опасность уязвимости усугубляет тот факт, что несмотря на то, что разработчики PHP были уведомлены о проблеме ещё 17 января, а 23 февраля был отправлен дополнительный запрос от имени CERT, уязвимость остаётся неисправленной. Проблема вызвана ошибкой, допущенной в 2004 году. Интересно также то, что утечка информации возникла (http://www.reddit.com/r/PHP/comments/t3pr8/how_serious_is_this/) из-за оплошности разработчиков PHP, поместивших (http://ompldr.org/vZGxxaQ) информацию о проблеме в публичный трекер ошибок, до момента выхода исправления с устранением уязвимости.&lt;br&gt;&lt;br&gt;&lt;br&gt;Эксплуатация проблемы тривиальна (http://eind</description>

<item>
    <title>Критическая уязвимость в PHP. Обновления PHP 5.3.12 и PHP 5.... (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#107</link>
    <pubDate>Mon, 23 Dec 2013 04:59:16 GMT</pubDate>
    <description>&amp;gt;</description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#106</link>
    <pubDate>Thu, 10 May 2012 04:35:46 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt; Тем более CGI позволяет делать кое-что, чего другие не могут в принципе.&lt;br&gt;&amp;gt;&amp;gt; Например? Очень интересно :) &lt;br&gt;&amp;gt; Ну не то чтобы принципиально невозможно, но некоторые вещи действительно удобней через &lt;br&gt;&amp;gt; cgi, чем через fcgi. Например когда cgi скриптов(или вообще бинарников) много, &lt;br&gt;&amp;gt; но каждый из них запускается редко, а значит держать его в &lt;br&gt;&amp;gt; памяти в виде постоянного fcgi процесса особого смысла не имеет. Особенно &lt;br&gt;&amp;gt; хорошо, когда все эти скрипты недоступны без http авторизации.&lt;br&gt;&lt;br&gt;тут особой проблемы нет, можно поставить минимальное кол-во fcgi-процессов в 0 и таймаут жизни fcgi-процесса, скажем в 5-ть минут. если за пять минут обращений не было, то процесс умрет освободив память. минус только один: настройки fcgi сложнее, чем cgi, писать ручками много больше.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в PHP. Обновления PHP 5.3.12 и PHP 5.... (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#105</link>
    <pubDate>Wed, 09 May 2012 08:33:52 GMT</pubDate>
    <description>if((query_string = getenv(&quot;QUERY_STRING&quot;)) != NULL &amp;&amp; strchr(query_string, &apos;=&apos;) == NULL) &#123;&lt;br&gt;/* we&apos;ve got query string that has no = - apache CGI will pass it to command line */&lt;br&gt;unsigned char *p;&lt;br&gt;decoded_query_string = strdup(query_string);&lt;br&gt;php_url_decode(decoded_query_string, strlen(decoded_query_string));&lt;br&gt;for (p = decoded_query_string; *p &amp;&amp;  *p &amp;lt;= &apos; &apos;; p++) &#123;&lt;br&gt;/* skip all leading spaces */&lt;br&gt;&#125;&lt;br&gt;if(*p == &apos;-&apos;) &#123;skip_getopt = 1;&#125;&lt;br&gt;free(decoded_query_string);&#125;&lt;br&gt;&lt;br&gt;Насколько я понял, теперь проверяется что если нету лидирующего знака &quot;-&quot; (исключая все лидирующие пробелы) то все равно происходит разбор командной строки.&lt;br&gt;Не является ли это все равно некоторой опасностью? Допустим &lt;br&gt;http://anysite.ru/?/anypath/anyscript.php&lt;br&gt;приведет к вызову &lt;br&gt;php /anypath/anyscript.php&lt;br&gt;И вот вопрос будет ли он обрабатывать скрипт, переданный в качестве параметра или переданный через переменную окружения SCRIPT_NAME. А /anypath/anyscript.php может быть какой-нибудь скрипт расположенный не document_root, а где-нибудь в временн</description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (Georges)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#104</link>
    <pubDate>Tue, 08 May 2012 06:36:14 GMT</pubDate>
    <description>Некоторые хостеры, которые орут что у них есть PHP 5.2 5.3 и 5.4&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#103</link>
    <pubDate>Mon, 07 May 2012 14:13:20 GMT</pubDate>
    <description>&amp;gt; Очень надеюсь, что процесс умирания РНР (в текущем виде) после этого бага ускорится.&lt;br&gt;&lt;br&gt;Не ускориться, потому что всегда будет дофига тех, кто не осилил нормальные языки и платформы. И всегда будет куча заказчиков-жлобов, которые будут нанимать ниосиляторов за копейки, чтобы, как они думают, увеличить свою прибыль.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (arisu)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#102</link>
    <pubDate>Sun, 06 May 2012 11:47:06 GMT</pubDate>
    <description>&amp;gt; Может и от https отказаться?&lt;br&gt;&lt;br&gt;очень разумная идея.&lt;br&gt;</description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (angra)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#101</link>
    <pubDate>Sun, 06 May 2012 06:04:31 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Тем более CGI позволяет делать кое-что, чего другие не могут в принципе.&lt;br&gt;&amp;gt; Например? Очень интересно :) &lt;br&gt;&lt;br&gt;Ну не то чтобы принципиально невозможно, но некоторые вещи действительно удобней через cgi, чем через fcgi. Например когда cgi скриптов(или вообще бинарников) много, но каждый из них запускается редко, а значит держать его в памяти в виде постоянного fcgi процесса особого смысла не имеет. Особенно хорошо, когда все эти скрипты недоступны без http авторизации.&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; все эти форки и передача аргументов занимают 0.0001&#037; процессорного времени)&lt;br&gt;&amp;gt;Ага. Пока не придет Вася Пупкин и не пустит туда ab2 какой-нибудь. Порсле чего Васин нетбук на раз укладывает многопроцессорный ксеон. Потому что ему только конекцию сделать, а серваку - отдуваться по полной: форкануть процесс, обработать запрос, ... :)&lt;br&gt;&lt;br&gt;Если сравнить это с оверхедом https, то не так уж много получится. Может и от https отказаться? Ну и неплохо было бы понимать, что с точки зрения конечного пользователя абсолютно фиолетово почему не открывается </description>
</item>

<item>
    <title>Критическая уязвимость в PHP, проявляющаяся в CGI-режиме (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#100</link>
    <pubDate>Sat, 05 May 2012 19:45:24 GMT</pubDate>
    <description>Это я ступил, думал что ошибка в PHP сводится к тому, что он параметры в STDIN парсит как параметры командной строки. Оказалось, действительно, СGI когда в запросе нет &quot;=&quot; передаёт параметры через командную строку:&lt;br&gt;&lt;br&gt;&lt;br&gt;4.4.  The Script Command Line&lt;br&gt;&lt;br&gt;   Some systems support a method for supplying an array of strings to&lt;br&gt;   the CGI script.  This is only used in the case of an &apos;indexed&apos; HTTP&lt;br&gt;   query, which is identified by a &apos;GET&apos; or &apos;HEAD&apos; request with a URI&lt;br&gt;   query string that does not contain any unencoded &quot;=&quot; characters.  For&lt;br&gt;   such a request, the server SHOULD treat the query-string as a&lt;br&gt;   search-string and parse it into words, using the rules&lt;br&gt;&lt;br&gt;      search-string = search-word *( &quot;+&quot; search-word )&lt;br&gt;      search-word   = 1*schar&lt;br&gt;      schar         = unreserved &amp;#124; escaped &amp;#124; xreserved&lt;br&gt;      xreserved     = &quot;;&quot; &amp;#124; &quot;/&quot; &amp;#124; &quot;?&quot; &amp;#124; &quot;:&quot; &amp;#124; &quot;&#064;&quot; &amp;#124; &quot;&amp;&quot; &amp;#124; &quot;=&quot; &amp;#124; &quot;,&quot; &amp;#124;&lt;br&gt;                      &quot;$&quot;&lt;br&gt;&lt;br&gt;   After parsing, each search-word is URL-decoded, optionally e</description>
</item>

<item>
    <title>Критическая уязвимость в PHP. Обновления PHP 5.3.12 и PHP 5.... (Аноним)</title>
    <link>https://www.opennet.me/openforum/vsluhforumID3/84407.html#99</link>
    <pubDate>Sat, 05 May 2012 19:30:30 GMT</pubDate>
    <description>&amp;gt; Вот интересно, кто, зачем и как часто использует PHP в CGI-режиме?..&lt;br&gt;&lt;br&gt;На некоторых sharing-хостингах это обычная практика.&lt;br&gt; &lt;br&gt;</description>
</item>

</channel>
</rss>
