1. PHP / Говнокод #25443

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    if ($_REQUEST['hash']==md5('2445355'.$uid.'__SECRET_KEY__')) {
      //доверяем вконтактику, и далее полагаем, что пользователь действительно авторизован там
      //для учетных записей пользователей я решил выделить логины вида vk-********
      $result = mysql_query("SELECT id, random, password FROM tracker_users WHERE username = 'vk-$uid'");
      setcookie('uid','');
      setcookie('pass','');
      if (mysql_num_rows($result)) {
        //пользователь авторизован, просто пересоздадим куки
        $user = mysql_fetch_assoc($result);
        mysql_query("UPDATE tracker_users SET name = '$name' WHERE username = 'vk-$uid' LIMIT 1");
        setcookie('pass',md5($user['random'].$user['password'].$user['random']));
        setcookie('uid',$user['id']);
      } else {
        //добавим запись в таблицу пользователей
        $random = mt_rand(100000,999999);
        $pwd = $uid . 'verysecretlonglongword-';
        $pid=md5(uniqid(rand(),true));
        mysql_query("INSERT INTO tracker_users 
          (username, name, password, random, id_level, email, style, language, flag, joined, lastconnect, pid, time_offset) VALUES 
          ('vk-$uid', '$name', '" . md5($pwd) . "', $random, 3, '', 5, 7, 0, NOW(), NOW(),'$pid', '0')");
        //вставили строчку, теперь создадим куки и перебросим на другую страницу
        setcookie('pass',md5($random.md5($pwd).$random));
        setcookie('uid',mysql_insert_id());
      }
      header("Location: /index.php");
    }

    https://habr.com/ru/post/126717/

    Запостил: HEymHblu_nemyx, 10 Марта 2019

    Комментарии (12) RSS

    • seo: хорошие программисты на хабре
      Ответить
    • Все таки хабр это элита
      Ответить
    • Он пишет и течет
      Ответить
    • > propovednik
      Изыди, злой проповедник, из ануса!
      Ответить
    • там еще про mail.ru дальше круто

      > Приняв критику и немного абстрагировавшись от типа используемой базы данных:
      $stmt = $dbh->prepare("SELECT id FROM tracker_users WHERE username = :username");
      $stmt->bindParam(":username", "mm-{$array['vid']}", PDO::PARAM_STR, 23);
      $stmt->execute();


      сука, как же я ору
      Ответить
    • https://pbs.twimg.com/media/D1R9NU5X4AAPm3G.jpg:large
      Ответить
    • Про меня забыли что-ли?
      Ответить
    • $_REQUEST['hash']==

      Ололо
      Ответить
    • Я понял, почему миром правят бездарности. Они не пьют и с самого утра начинают заниматься своей карьерой

      Фрунзик Мкрчян
      Ответить
    • Ого, сколько всяких хэшей и секретных ключей. Наверное, это очень защищённая программа!
      Ответить

    Добавить комментарий