svn: /phpdoc/ru/trunk/reference/pcre/ pattern.modifiers.xml

[email protected] (Sergey Panteleev)
Newsgroups php.doc.ru
Message-ID <[email protected]>
sergey                                   Sat, 04 Jan 2020 09:32:15 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=348793

Log:
docs(ru): Updated to English revision

Changed paths:
    U   phpdoc/ru/trunk/reference/pcre/pattern.modifiers.xml

Modified: phpdoc/ru/trunk/reference/pcre/pattern.modifiers.xml
===================================================================
--- phpdoc/ru/trunk/reference/pcre/pattern.modifiers.xml	2020-01-04 08:50:17 UTC (rev 348792)
+++ phpdoc/ru/trunk/reference/pcre/pattern.modifiers.xml	2020-01-04 09:32:15 UTC (rev 348793)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 346848 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 348780 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <article xml:id="reference.pcre.pattern.modifiers" xmlns="http://docbook.org/ns/docbook">
@@ -116,31 +116,7 @@
       <caution>
        <para>
         Использовать этот модификатор <emphasis>не рекомендуется</emphasis>, так как это может легко
-        добавить уязвимости в системе безопасности:
-       </para>
-       <informalexample>
-        <programlisting role="php">
-<![CDATA[
-<?php
-$html = $_POST['html'];
-
-// Заголовки в верхнем регистре
-$html = preg_replace(
-    '(<h([1-6])>(.*?)</h\1>)e',
-    '"<h$1>" . strtoupper("$2") . "</h$1>"',
-    $html
-);
-]]>
-        </programlisting>
-       </informalexample>
-       <para>
-        Приведенный выше код может быть легко скомпрометирован путем передачи такой строки как
-        <literal>&lt;h1&gt;{${eval($_GET[php_code])}}&lt;/h1&gt;</literal>. Это дает атакующему
-        возможность исполнить произвольный PHP-код и по существу предоставляет ему почти
-        полный доступ к вашему серверу.
-       </para>
-       <para>
-        Для предотвращения этого типа уязвимости с удаленным исполнением кода
+        добавить уязвимости удаленного выполнения кода. Для предотвращения этого
         следует использовать функцию <function>preg_replace_callback</function>:
        </para>
        <informalexample>
@@ -160,6 +136,13 @@
 ]]>
         </programlisting>
        </informalexample>
+       <para>
+         Если бы приведенный выше пример был написан с использованием функции <function>preg_replace</function> и модификатора <literal>e</literal>,
+        код можно было бы использовать для атаки, передав строку, такую как
+        <literal>&lt;h1&gt;{${eval($_GET[php_code])}}&lt;/h1&gt;</literal>. Это дало бы
+        злоумышленнику возможность выполнить произвольный код PHP и таким образом, дало бы им
+        почти полный доступ к серверу.
+        </para>
       </caution>
       <note>
        <para>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.