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

    +170

    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
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    $email = strip_tags($email);
    $email = str_replace("’", "", $email);
    $email = str_replace("(", "", $email);
    $email = str_replace(")", "", $email);
    $email = str_replace(";", "", $email);
    $email = str_replace(":", "", $email);
    $email = str_replace("<", "", $email);
    $email = str_replace("'", "", $email);
    $email = str_replace("UNION", "", $email);
    $email = str_replace("SELECT", "", $email);
    $email = str_replace("WHERE", "", $email);
    $email = str_replace("LIKE", "", $email);
    $email = str_replace("FROM”", "", $email);
    $email = str_replace("UPDATE", "", $email);
    $email = str_replace("INSERT", "", $email);
    $email = str_replace("ORDER", "", $email);
    $email = str_replace("GROUP", "", $email);
    $email = str_replace("ALTER", "", $email);
    $email = str_replace(" OR ", "", $email);
    $email = str_replace(" or ", "", $email);
    $email = str_replace("=", "", $email);
    
    $email1 = str_replace("’", "", $email1);
    $email1 = str_replace("(", "", $email1);
    $email1 = str_replace(")", "", $email1);
    $email1 = str_replace(";", "", $email1);
    $email1 = str_replace(":", "", $email1);
    $email1 = str_replace("<", "", $email1);
    $email1 = str_replace("'", "", $email1);
    $email1 = str_replace("UNION", "", $email1);
    $email1 = str_replace("SELECT", "", $email1);
    $email1 = str_replace("WHERE", "", $email1);
    $email1 = str_replace("LIKE", "", $email1);
    $email1 = str_replace("FROM”", "", $email1);
    $email1 = str_replace("UPDATE", "", $email1);
    $email1 = str_replace("INSERT", "", $email1);
    $email1 = str_replace("ORDER", "", $email1);
    $email1 = str_replace("GROUP", "", $email1);
    $email1 = str_replace("ALTER", "", $email1);
    $email1 = str_replace(" OR ", "", $email1);
    $email1 = str_replace(" or ", "", $email1);
    $email1 = str_replace("=", "", $email1);
    
    $location = str_replace("’", "", $location);
    $location = str_replace("(", "", $location);
    $location = str_replace(")", "", $location);
    $location = str_replace(";", "", $location);
    $location = str_replace(":", "", $location);
    $location = str_replace("<", "", $location);
    $location = str_replace("'", "", $location);
    $location = str_replace("UNION", "", $location);
    $location = str_replace("SELECT", "", $location);
    $location = str_replace("WHERE", "", $location);
    $location = str_replace("LIKE", "", $location);
    $location = str_replace("FROM”", "", $location);
    $location = str_replace("UPDATE", "", $location);
    $location = str_replace("INSERT", "", $location);
    $location = str_replace("ORDER", "", $location);
    $location = str_replace("GROUP", "", $location);
    $location = str_replace("ALTER", "", $location);
    $location = str_replace(" OR ", "", $location);
    $location = str_replace(" or ", "", $location);
    $location = str_replace("=", "", $location);
    
    $cinsiyet = str_replace("’", "", $cinsiyet);
    $cinsiyet = str_replace("(", "", $cinsiyet);
    $cinsiyet = str_replace(")", "", $cinsiyet);
    $cinsiyet = str_replace(";", "", $cinsiyet);
    $cinsiyet = str_replace(":", "", $cinsiyet);
    $cinsiyet = str_replace("<", "", $cinsiyet);
    $cinsiyet = str_replace("'", "", $cinsiyet);
    $cinsiyet = str_replace("UNION", "", $cinsiyet);
    $cinsiyet = str_replace("SELECT", "", $cinsiyet);
    $cinsiyet = str_replace("WHERE", "", $cinsiyet);
    $cinsiyet = str_replace("LIKE", "", $cinsiyet);
    $cinsiyet = str_replace("FROM”", "", $cinsiyet);
    $cinsiyet = str_replace("UPDATE", "", $cinsiyet);
    $cinsiyet = str_replace("INSERT", "", $cinsiyet);
    $cinsiyet = str_replace("ORDER", "", $cinsiyet);
    $cinsiyet = str_replace("GROUP", "", $cinsiyet);
    $cinsiyet = str_replace("ALTER", "", $cinsiyet);
    $cinsiyet = str_replace(" OR ", "", $cinsiyet);
    $cinsiyet = str_replace(" or ", "", $cinsiyet);
    $cinsiyet = str_replace("=", "", $cinsiyet);

    Большой проект. Часть переменных на турецком. Смесь из php с html. Файлы проекта сохранены в разных кодировках. Mysql конфиги иногда подключаются include'ом, иногда прямо в текущем файле.

    Запостил: zorbis, 20 Сентября 2011

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

    • автор ГК, просто нормальный герой, не ищет лёгких путей и всега идет в обход.
      Ответить
      • я б таких героев на кол плотненько насажывал бы, что б не вертелись
        Ответить
    • Хакир не пройдет. А js как обрабатывается ? так $email1 = str_replace("alert", "", $email1); ?
      Ответить
      • js не обрабатывается, про него разработчик этого чуда не знает, судя по всему
        Ответить
      • Если js выполняется, то нету смысле делать такие замены, так как всегда можно сделать так:

        eval('al'+'ert()');
        Ответить
        • можно вот так $email1 = str_replace("eval", "", $email1);
          Ответить
          • new Function("al"+"ert()")();


            И таких способов еще как минимум два
            Ответить
    • WebKill наверняка заплакал бы, увидев этот код.
      Ответить
    • оригинально)))

      "мы не будем проверять, является ли это строка валидным email, мы просто ВЫРЕЖЕМ ИЗ НЕЕ ВСЕ БЛЯ ЧТО МОЖЕТ НАМ ПОМЕШАТЬ"
      Ответить
    • заshitа от sql иньекций?
      Ответить
    • забыли добавить еще
      $email = str_replace("format c:", "", $email);
      и много других "опасных" команд - а вдруг!
      Ответить
      • Можно с пользой:

        str_replace("format c:", "defrag \C \H", $email);
        Ответить
    • ... а может там предполагается вчучную через веб-морду управлящие скрипты засылать. Прямо через поле е-мыла. эти скрипты могут всё, кроме работы с БД.
      Ответить
    • *facepalm*
      Ответить
    • показать все, что скрытоvanished
      Ответить

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