Показано с 1 по 5 из 5

Тема: Опасность использования eval(). Есть ли она вообще, или это надумано?

  1. #1

    Регистрация
    15.09.2005
    Сообщений
    9
    Сразу просьба, говорите если есть что сказать, а не, как обычно льем воду, иногда и красивую.
    .....
    Есть мнение.
    Использование eval - это огромная брешь в безопасности сайта.
    В чем именно она проявляется?
    Нет, я конечно понимаю, что если написать eval($_GET['str']); то это .... ну это господа просто крайности
    ....
    Ближе к теме
    есть код
    eval('$POST["pValume"] = (int)$_POST["numin'.$i.'"];'
    eval('$POST["pTovar"] = $_POST["id'.$i.'"];'
    $i - всегда число (счетчик)
    ....
    Может ли этот код нести опасность для сайта?
    ----
    сразу скажу, что он уже переписан:
    $POST["pValume"] = (int)$_POST["numin".$i];
    $POST["pTovar"] = $_POST["id".$i];
    поэтому тему о том, как и что переписывать не стоит.
    Заранее благодарен за конструктивные ответы.

  2. #2

    Регистрация
    27.10.2006
    Сообщений
    79
    Простите за банальность, вы всегда позволяете пользователям исполнять код?
    Может быть помещена команда на запись шела (десятисимвольный такой <?=`c`;?> ), вывод полного пути, выставление прав уровня сервера, вывод любого файла конфигурации, после чего рутануть тачку будет несложно.
    не хотите переписывать - не надо, просто дайте ссылку на ваш сайт, но все же посоветую обрезать substr&#39;ом все ненужное

  3. #3

    Регистрация
    15.09.2005
    Сообщений
    9
    Может быть помещена команда на запись шела (десятисимвольный такой <?=`c`;?> ), вывод полного пути....
    Если можно конкретно
    eval(&#39;$POST["pValume"] = (int)$_POST["numin&#39;.$i.&#39;"];&#39;
    eval(&#39;$POST["pTovar"] = $_POST["id&#39;.$i.&#39;"];&#39;

    где в этом коде может быть помещена какая либо запись?

  4. #4

    Регистрация
    27.10.2006
    Сообщений
    79
    Код:
    $_POST[&#39;id1&#39;] = "\$file = fopen(&#39;shell.php&#39;,w);
    ************fwrite(\$file,&#39;Марфа Васильевна я&#39;);
    ************fclose(\$file);";
    
    eval(&#39;$POST["pTovar"] = $_POST["id&#39;.$i.&#39;"];&#39;);
    ну например таким образом...
    и кстати, а у вас выходит с тем вариантом то, что вы задумали? всмысле работает так как надо?

  5. #5

    Регистрация
    15.09.2005
    Сообщений
    9
    Код:
    $_POST[&#39;id1&#39;] = "$file = fopen(&#39;shell.php&#39;,w);
    ************fwrite($file,&#39;Марфа Васильевна я&#39;);
    ************fclose($file);";
    
    eval(&#39;$POST["pTovar"] = $_POST["id&#39;.$i.&#39;"];&#39;);
    ну например таким образом...
    и кстати, а у вас выходит с тем вариантом то, что вы задумали? всмысле работает так как надо?
    Ну здесь позвольте не согласится
    В смысле EVAL здесь не причем.
    При таком раскладе и $POST["pTovar"] = $_POST["id1"]; выдаст тоже самое.
    Переменнные же потом обрабатываются.
    конкретно EVAL несет опасность???

Похожие темы

  1. Градиент в css без использования графики.
    от fenixnt в разделе Вёрстка сайта
    Ответов: 1
    Последнее сообщение: 03.11.2007, 13:31
  2. И вообще...
    от Aykroyd в разделе Флейм
    Ответов: 13
    Последнее сообщение: 22.05.2007, 14:17
  3. RGB и CMYK, нахрена оно вообще нужно ? Вопрос!
    от misfit в разделе Растровая графика
    Ответов: 6
    Последнее сообщение: 11.12.2006, 05:49
  4. Как уйти от использования фреймов?
    от PAY в разделе Вёрстка сайта
    Ответов: 2
    Последнее сообщение: 24.06.2005, 04:22

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •