За последние 24 часа нас посетили 16739 программистов и 1769 роботов. Сейчас ищут 1075 программистов ...

БЕЗОПАСНОСТЬ КНОПКИ SUBMIT

Тема в разделе "Прочие вопросы по PHP", создана пользователем oksana, 18 апр 2012.

  1. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    Прочитала в инете что форму можно подменить =( и нашла защиту на одном сайте =)

    <?
    session_start();

    if ($_POST["Submit"]){

    //Защита от подмены с помощью суперглобального массива $_SERVER["HTTP_REFERER"]
    if (!preg_match("/^(http://".$_SERVER["HTTP_HOST"]."/)(.*?)+$/",$_SERVER["HTTP_REFERER"],$matches)){
    print "Заблокировать, страница запущена с чужого домена";
    }

    //Защита от подмены с помощью сессий
    if ($_SESSION["verify"]<>$_POST["verify"]){
    print "Заблокировать, сессия не совпадает со значением из скрытого элемента формы";
    }
    unset($_SESSION["verify"]);
    }
    ?>
    <form name="Form1" method="POST">
    <?
    //Создание сессии, и присваивание ей уникального значения
    $_SESSION["verify"]=md5(uniqid(rand(),1));
    //Создание скрытого элемента формы, и присваивание ему значения сессии
    echo '<input type="hidden" name="verify" value="{$_SESSION["verify"]}" />';
    ?>
    <input type="text" name="text">
    <input type="submit" name="Submit">
    </form>

    подскажите можно это вставить в сайт или это не безопасно?
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    у тебя в коде столько дыр, что хз, стоит ли этим париться.

    что у тебя за проект?
     
  3. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    в общем доска объявлений для девушек, там продажа всясой одежды и тому подобное
    а слева колонка под организации (магазины)

    сайт в принципе работает как надо остались еще моменты

    1.это конечно безоппастность все переменные пропустила через:
    stripslashes($); htmlspecialchars($); mysql_real_escape_string($); (возможно перебор =) )

    2. узнала что форму могут подменить и вот щас код в google нашла, в этой теме она

    3. обработка по размеру загружаемых изображений и безопасное сохранение

    4. и еще не знакома с файлом php.ini

    вроде бы все =)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    делай копию бд каждый день и будешь спать спокойно.
     
  5. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    прям каждый! я не шучу. сделай крон на это дело. и не удалять вчерашнюю и делать сегодняшнюю копию. а каждый день в отдельный файл.